ÿØÿà JFIF    ÿÛ „ ( %!1!%*+...983,7(-.- PK&]mmvim80/macros/justify.vimnu[" Load the justify package. " For those users who were loading the justify plugin from here. packadd justify PK&]+ Y||vim80/macros/editexisting.vimnu[" Load the editexisting package. " For those users who were loading the editexisting plugin from here. packadd editexisting PK&]lDLLvim80/macros/less.shnuȯ#!/bin/sh # Shell script to start Vim with less.vim. # Read stdin if no arguments were given and stdin was redirected. if test -t 1; then if test $# = 0; then if test -t 0; then echo "Missing filename" 1>&2 exit fi vim --cmd 'let no_plugin_maps = 1' -c 'runtime! macros/less.vim' - else vim --cmd 'let no_plugin_maps = 1' -c 'runtime! macros/less.vim' "$@" fi else # Output is not a terminal, cat arguments or stdin if test $# = 0; then if test -t 0; then echo "Missing filename" 1>&2 exit fi cat else cat "$@" fi fi PK&]|ssvim80/macros/shellmenu.vimnu[" Load the shellmenu package. " For those users who were loading the shellmenu plugin from here. packadd shellmenu PK&]swvim80/macros/less.vimnu[" Vim script to work like "less" " Maintainer: Bram Moolenaar " Last Change: 2017 Mar 31 " Avoid loading this file twice, allow the user to define his own script. if exists("loaded_less") finish endif let loaded_less = 1 " If not reading from stdin, skip files that can't be read. " Exit if there is no file at all. if argc() > 0 let s:i = 0 while 1 if filereadable(argv(s:i)) if s:i != 0 sleep 3 endif break endif if isdirectory(argv(s:i)) echomsg "Skipping directory " . argv(s:i) elseif getftime(argv(s:i)) < 0 echomsg "Skipping non-existing file " . argv(s:i) else echomsg "Skipping unreadable file " . argv(s:i) endif echo "\n" let s:i = s:i + 1 if s:i == argc() quit endif next endwhile endif set nocp syntax on set so=0 set hlsearch set incsearch nohlsearch " Don't remember file names and positions set viminfo= set nows " Inhibit screen updates while searching let s:lz = &lz set lz " Allow the user to define a function, which can set options specifically for " this script. if exists('*LessInitFunc') call LessInitFunc() endif " Used after each command: put cursor at end and display position if &wrap noremap L L0:redraw:file au VimEnter * normal! L0 else noremap L Lg0:redraw:file au VimEnter * normal! Lg0 endif " When reading from stdin don't consider the file modified. au VimEnter * set nomod " Can't modify the text set noma " Give help noremap h :call Help() map H h fun! s:Help() echo " One page forward b One page backward" echo "d Half a page forward u Half a page backward" echo " One line forward k One line backward" echo "G End of file g Start of file" echo "N% percentage in file" echo "\n" echo "/pattern Search for pattern ?pattern Search backward for pattern" echo "n next pattern match N Previous pattern match" if &foldmethod != "manual" echo "\n" echo "zR open all folds zm increase fold level" endif echo "\n" echo ":n Next file :p Previous file" echo "\n" echo "q Quit v Edit file" let i = input("Hit Enter to continue") endfun " Scroll one page forward noremap ' let b:InPHPcode = 0 let b:InPHPcode_tofind = s:PHP_startindenttag endif endif " }}} if 1 > b:InPHPcode && !b:InPHPcode_and_script return -1 endif " Indent successive // or # comment the same way the first is {{{ let addSpecial = 0 if cline =~ '^\s*\%(//\|#\|/\*.*\*/\s*$\)' let addSpecial = b:PHP_outdentSLComments if b:PHP_LastIndentedWasComment == 1 return indent(real_PHP_lastindented) endif let b:PHP_LastIndentedWasComment = 1 else let b:PHP_LastIndentedWasComment = 0 endif " }}} " Indent multiline /* comments correctly {{{ if b:PHP_InsideMultilineComment || b:UserIsTypingComment if cline =~ '^\s*\*\%(\/\)\@!' if last_line =~ '^\s*/\*' return indent(lnum) + 1 else return indent(lnum) endif else let b:PHP_InsideMultilineComment = 0 endif endif if !b:PHP_InsideMultilineComment && cline =~ '^\s*/\*\%(.*\*/\)\@!' if getline(v:lnum + 1) !~ '^\s*\*' return -1 endif let b:PHP_InsideMultilineComment = 1 endif " }}} " Things always indented at col 1 (PHP delimiter: , Heredoc end) {{{ if cline =~# '^\s*' && b:PHP_outdentphpescape return 0 endif if cline =~ '^\s*?>' && cline !~# '' let b:PHP_CurrentIndentLevel = b:PHP_default_indenting return indent(FindTheIfOfAnElse(v:lnum, 1)) elseif cline =~# s:defaultORcase return FindTheSwitchIndent(v:lnum) + shiftwidth() * b:PHP_vintage_case_default_indent elseif cline =~ '^\s*)\=\s*{' let previous_line = last_line let last_line_num = lnum while last_line_num > 1 if previous_line =~ terminated || previous_line =~ s:structureHead let ind = indent(last_line_num) if b:PHP_BracesAtCodeLevel let ind = ind + shiftwidth() endif return ind endif let last_line_num = GetLastRealCodeLNum(last_line_num - 1) let previous_line = getline(last_line_num) endwhile elseif last_line =~# unstated && cline !~ '^\s*);\='.endline let ind = ind + shiftwidth() " we indent one level further when the preceding line is not stated return ind + addSpecial elseif (ind != b:PHP_default_indenting || last_line =~ '^[)\]]' ) && last_line =~ terminated let previous_line = last_line let last_line_num = lnum let LastLineClosed = 1 let isSingleLineBlock = 0 while 1 if ! isSingleLineBlock && previous_line =~ '^\s*}\|;\s*}'.endline " XXX call cursor(last_line_num, 1) if previous_line !~ '^}' call search('}\|;\s*}'.endline, 'W') end let oldLastLine = last_line_num let last_line_num = searchpair('{', '', '}', 'bW', 'Skippmatch()') if getline(last_line_num) =~ '^\s*{' let last_line_num = GetLastRealCodeLNum(last_line_num - 1) elseif oldLastLine == last_line_num let isSingleLineBlock = 1 continue endif let previous_line = getline(last_line_num) continue else let isSingleLineBlock = 0 if getline(last_line_num) =~# '^\s*else\%(if\)\=\>' let last_line_num = FindTheIfOfAnElse(last_line_num, 0) continue endif let last_match = last_line_num let one_ahead_indent = indent(last_line_num) let last_line_num = GetLastRealCodeLNum(last_line_num - 1) let two_ahead_indent = indent(last_line_num) let after_previous_line = previous_line let previous_line = getline(last_line_num) if previous_line =~# s:defaultORcase.'\|{'.endline break endif if after_previous_line=~# '^\s*'.s:blockstart.'.*)'.endline && previous_line =~# '[;}]'.endline break endif if one_ahead_indent == two_ahead_indent || last_line_num < 1 if previous_line =~# '\%(;\|^\s*}\)'.endline || last_line_num < 1 break endif endif endif endwhile if indent(last_match) != ind let ind = indent(last_match) let b:PHP_CurrentIndentLevel = b:PHP_default_indenting return ind + addSpecial endif endif if (last_line !~ '^\s*}\%(}}\)\@!') let plinnum = GetLastRealCodeLNum(lnum - 1) else let plinnum = GetLastRealCodeLNum(FindOpenBracket(lnum, 1) - 1) endif let AntepenultimateLine = getline(plinnum) let last_line = substitute(last_line,"\\(//\\|#\\)\\(\\(\\([^\"']*\\([\"']\\)[^\"']*\\5\\)\\+[^\"']*$\\)\\|\\([^\"']*$\\)\\)",'','') if ind == b:PHP_default_indenting if last_line =~ terminated && last_line !~# s:defaultORcase let LastLineClosed = 1 endif endif if !LastLineClosed if last_line =~# '[{(\[]'.endline || last_line =~? '\h\w*\s*(.*,$' && AntepenultimateLine !~ '[,(\[]'.endline && BalanceDirection(last_line) > 0 let dontIndent = 0 if last_line =~ '\S\+\s*{'.endline && last_line !~ '^\s*[)\]]\+\s*{'.endline && last_line !~ s:structureHead let dontIndent = 1 endif if !dontIndent && (!b:PHP_BracesAtCodeLevel || last_line !~# '^\s*{') let ind = ind + shiftwidth() endif if b:PHP_BracesAtCodeLevel || b:PHP_vintage_case_default_indent == 1 let b:PHP_CurrentIndentLevel = ind return ind + addSpecial endif elseif last_line =~ '\S\+\s*),'.endline && BalanceDirection(last_line) < 0 call cursor(lnum, 1) call search('),'.endline, 'W') " line never begins with ) so no need for 'c' flag let openedparent = searchpair('(', '', ')', 'bW', 'Skippmatch()') if openedparent != lnum let ind = indent(openedparent) endif elseif last_line =~ '^\s*'.s:blockstart let ind = ind + shiftwidth() elseif AntepenultimateLine =~ '{'.endline && AntepenultimateLine !~? '^\s*use\>' || AntepenultimateLine =~ terminated || AntepenultimateLine =~# s:defaultORcase let ind = ind + shiftwidth() endif endif if cline =~ '^\s*[)\]];\=' let ind = ind - shiftwidth() endif let b:PHP_CurrentIndentLevel = ind return ind + addSpecial endfunction PK&]&~vim80/indent/rrst.vimnu[" Vim indent file " Language: Rrst " Author: Jakson Alves de Aquino " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Tue Apr 07, 2015 04:38PM " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif runtime indent/r.vim let s:RIndent = function(substitute(&indentexpr, "()", "", "")) let b:did_indent = 1 setlocal indentkeys=0{,0},:,!^F,o,O,e setlocal indentexpr=GetRrstIndent() if exists("*GetRrstIndent") finish endif function GetRstIndent() let pline = getline(v:lnum - 1) let cline = getline(v:lnum) if prevnonblank(v:lnum - 1) < v:lnum - 1 || cline =~ '^\s*[-\+\*]\s' || cline =~ '^\s*\d\+\.\s\+' return indent(v:lnum) elseif pline =~ '^\s*[-\+\*]\s' return indent(v:lnum - 1) + 2 elseif pline =~ '^\s*\d\+\.\s\+' return indent(v:lnum - 1) + 3 endif return indent(prevnonblank(v:lnum - 1)) endfunction function GetRrstIndent() if getline(".") =~ '^\.\. {r .*}$' || getline(".") =~ '^\.\. \.\.$' return 0 endif if search('^\.\. {r', "bncW") > search('^\.\. \.\.$', "bncW") return s:RIndent() else return GetRstIndent() endif endfunction " vim: sw=2 PK&], " Last Change: Wed May 14 2003 8:48:41 PM " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif " Use XML formatting rules runtime! indent/xml.vim PK&]ppvim80/indent/python.vimnu[" Vim indent file " Language: Python " Maintainer: Bram Moolenaar " Original Author: David Bustos " Last Change: 2013 Jul 9 " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 " Some preliminary settings setlocal nolisp " Make sure lisp indenting doesn't supersede us setlocal autoindent " indentexpr isn't much help otherwise setlocal indentexpr=GetPythonIndent(v:lnum) setlocal indentkeys+=<:>,=elif,=except " Only define the function once. if exists("*GetPythonIndent") finish endif let s:keepcpo= &cpo set cpo&vim " Come here when loading the script the first time. let s:maxoff = 50 " maximum number of lines to look backwards for () function GetPythonIndent(lnum) " If this line is explicitly joined: If the previous line was also joined, " line it up with that one, otherwise add two 'shiftwidth' if getline(a:lnum - 1) =~ '\\$' if a:lnum > 1 && getline(a:lnum - 2) =~ '\\$' return indent(a:lnum - 1) endif return indent(a:lnum - 1) + (exists("g:pyindent_continue") ? eval(g:pyindent_continue) : (shiftwidth() * 2)) endif " If the start of the line is in a string don't change the indent. if has('syntax_items') \ && synIDattr(synID(a:lnum, 1, 1), "name") =~ "String$" return -1 endif " Search backwards for the previous non-empty line. let plnum = prevnonblank(v:lnum - 1) if plnum == 0 " This is the first non-empty line, use zero indent. return 0 endif " If the previous line is inside parenthesis, use the indent of the starting " line. " Trick: use the non-existing "dummy" variable to break out of the loop when " going too far back. call cursor(plnum, 1) let parlnum = searchpair('(\|{\|\[', '', ')\|}\|\]', 'nbW', \ "line('.') < " . (plnum - s:maxoff) . " ? dummy :" \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" \ . " =~ '\\(Comment\\|Todo\\|String\\)$'") if parlnum > 0 let plindent = indent(parlnum) let plnumstart = parlnum else let plindent = indent(plnum) let plnumstart = plnum endif " When inside parenthesis: If at the first line below the parenthesis add " two 'shiftwidth', otherwise same as previous line. " i = (a " + b " + c) call cursor(a:lnum, 1) let p = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW', \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" \ . " =~ '\\(Comment\\|Todo\\|String\\)$'") if p > 0 if p == plnum " When the start is inside parenthesis, only indent one 'shiftwidth'. let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW', \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" \ . " =~ '\\(Comment\\|Todo\\|String\\)$'") if pp > 0 return indent(plnum) + (exists("g:pyindent_nested_paren") ? eval(g:pyindent_nested_paren) : shiftwidth()) endif return indent(plnum) + (exists("g:pyindent_open_paren") ? eval(g:pyindent_open_paren) : (shiftwidth() * 2)) endif if plnumstart == p return indent(plnum) endif return plindent endif " Get the line and remove a trailing comment. " Use syntax highlighting attributes when possible. let pline = getline(plnum) let pline_len = strlen(pline) if has('syntax_items') " If the last character in the line is a comment, do a binary search for " the start of the comment. synID() is slow, a linear search would take " too long on a long line. if synIDattr(synID(plnum, pline_len, 1), "name") =~ "\\(Comment\\|Todo\\)$" let min = 1 let max = pline_len while min < max let col = (min + max) / 2 if synIDattr(synID(plnum, col, 1), "name") =~ "\\(Comment\\|Todo\\)$" let max = col else let min = col + 1 endif endwhile let pline = strpart(pline, 0, min - 1) endif else let col = 0 while col < pline_len if pline[col] == '#' let pline = strpart(pline, 0, col) break endif let col = col + 1 endwhile endif " If the previous line ended with a colon, indent this line if pline =~ ':\s*$' return plindent + shiftwidth() endif " If the previous line was a stop-execution statement... if getline(plnum) =~ '^\s*\(break\|continue\|raise\|return\|pass\)\>' " See if the user has already dedented if indent(a:lnum) > indent(plnum) - shiftwidth() " If not, recommend one dedent return indent(plnum) - shiftwidth() endif " Otherwise, trust the user return -1 endif " If the current line begins with a keyword that lines up with "try" if getline(a:lnum) =~ '^\s*\(except\|finally\)\>' let lnum = a:lnum - 1 while lnum >= 1 if getline(lnum) =~ '^\s*\(try\|except\)\>' let ind = indent(lnum) if ind >= indent(a:lnum) return -1 " indent is already less than this endif return ind " line up with previous try or except endif let lnum = lnum - 1 endwhile return -1 " no matching "try"! endif " If the current line begins with a header keyword, dedent if getline(a:lnum) =~ '^\s*\(elif\|else\)\>' " Unless the previous line was a one-liner if getline(plnumstart) =~ '^\s*\(for\|if\|try\)\>' return plindent endif " Or the user has already dedented if indent(a:lnum) <= plindent - shiftwidth() return -1 endif return plindent - shiftwidth() endif " When after a () construct we probably want to go back to the start line. " a = (b " + c) " here if parlnum > 0 return plindent endif return -1 endfunction let &cpo = s:keepcpo unlet s:keepcpo " vim:sw=2 PK&] vim80/indent/gitolite.vimnu[" Vim indent file " Language: gitolite configuration " URL: https://github.com/sitaramc/gitolite/blob/master/contrib/vim/indent/gitolite.vim " (https://raw.githubusercontent.com/sitaramc/gitolite/master/contrib/vim/indent/gitolite.vim) " Maintainer: Sitaram Chamarty " (former Maintainer: Teemu Matilainen ) " Last Change: 2017 Oct 05 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal autoindent setlocal indentexpr=GetGitoliteIndent() setlocal indentkeys=o,O,*,!^F,=repo,\",= " Only define the function once. if exists("*GetGitoliteIndent") finish endif let s:cpo_save = &cpo set cpo&vim function! GetGitoliteIndent() let prevln = prevnonblank(v:lnum-1) let pline = getline(prevln) let cline = getline(v:lnum) if cline =~ '^\s*\(C\|R\|RW\|RW+\|RWC\|RW+C\|RWD\|RW+D\|RWCD\|RW+CD\|-\)[ \t=]' return shiftwidth() elseif cline =~ '^\s*config\s' return shiftwidth() elseif cline =~ '^\s*option\s' return shiftwidth() elseif pline =~ '^\s*repo\s' && cline =~ '^\s*\(#.*\)\?$' return shiftwidth() elseif cline =~ '^\s*#' return indent(prevln) elseif cline =~ '^\s*$' return -1 else return 0 endif endfunction let &cpo = s:cpo_save unlet s:cpo_save PK&] ٹQQvim80/indent/dictconf.vimnu[" Vim indent file " Language: dict(1) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-12-20 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentkeys=0{,0},!^F,o,O cinwords= autoindent smartindent setlocal nosmartindent inoremap # X# PK&]K_++vim80/indent/ada.vimnu["------------------------------------------------------------------------------ " Description: Vim Ada indent file " Language: Ada (2005) " $Id: ada.vim 887 2008-07-08 14:29:01Z krischik $ " Copyright: Copyright (C) 2006 Martin Krischik " Maintainer: Martin Krischik " Neil Bird " Ned Okie " $Author: krischik $ " $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $ " Version: 4.6 " $Revision: 887 $ " $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/indent/ada.vim $ " History: 24.05.2006 MK Unified Headers " 16.07.2006 MK Ada-Mode as vim-ball " 15.10.2006 MK Bram's suggestion for runtime integration " 05.11.2006 MK Bram suggested to save on spaces " 19.09.2007 NO g: missing before ada#Comment " Help Page: ft-vim-indent "------------------------------------------------------------------------------ " ToDo: " Verify handling of multi-line exprs. and recovery upon the final ';'. " Correctly find comments given '"' and "" ==> " syntax. " Combine the two large block-indent functions into one? "------------------------------------------------------------------------------ " Only load this indent file when no other was loaded. if exists("b:did_indent") || version < 700 finish endif let b:did_indent = 45 setlocal indentexpr=GetAdaIndent() setlocal indentkeys-=0{,0} setlocal indentkeys+=0=~then,0=~end,0=~elsif,0=~when,0=~exception,0=~begin,0=~is,0=~record " Only define the functions once. if exists("*GetAdaIndent") finish endif let s:keepcpo= &cpo set cpo&vim if exists("g:ada_with_gnat_project_files") let s:AdaBlockStart = '^\s*\(if\>\|while\>\|else\>\|elsif\>\|loop\>\|for\>.*\<\(loop\|use\)\>\|declare\>\|begin\>\|type\>.*\[^;]*$\|\(type\>.*\)\=\\|procedure\>\|function\>\|accept\>\|do\>\|task\>\|package\>\|project\>\|then\>\|when\>\|is\>\)' else let s:AdaBlockStart = '^\s*\(if\>\|while\>\|else\>\|elsif\>\|loop\>\|for\>.*\<\(loop\|use\)\>\|declare\>\|begin\>\|type\>.*\[^;]*$\|\(type\>.*\)\=\\|procedure\>\|function\>\|accept\>\|do\>\|task\>\|package\>\|then\>\|when\>\|is\>\)' endif " Section: s:MainBlockIndent {{{1 " " Try to find indent of the block we're in " prev_indent = the previous line's indent " prev_lnum = previous line (to start looking on) " blockstart = expr. that indicates a possible start of this block " stop_at = if non-null, if a matching line is found, gives up! " No recursive previous block analysis: simply look for a valid line " with a lesser or equal indent than we currently (on prev_lnum) have. " This shouldn't work as well as it appears to with lines that are currently " nowhere near the correct indent (e.g., start of line)! " Seems to work OK as it 'starts' with the indent of the /previous/ line. function s:MainBlockIndent (prev_indent, prev_lnum, blockstart, stop_at) let lnum = a:prev_lnum let line = substitute( getline(lnum), g:ada#Comment, '', '' ) while lnum > 1 if a:stop_at != '' && line =~ '^\s*' . a:stop_at && indent(lnum) < a:prev_indent return a:prev_indent elseif line =~ '^\s*' . a:blockstart let ind = indent(lnum) if ind < a:prev_indent return ind endif endif let lnum = prevnonblank(lnum - 1) " Get previous non-blank/non-comment-only line while 1 let line = substitute( getline(lnum), g:ada#Comment, '', '' ) if line !~ '^\s*$' && line !~ '^\s*#' break endif let lnum = prevnonblank(lnum - 1) if lnum <= 0 return a:prev_indent endif endwhile endwhile " Fallback - just move back one return a:prev_indent - shiftwidth() endfunction MainBlockIndent " Section: s:EndBlockIndent {{{1 " " Try to find indent of the block we're in (and about to complete), " including handling of nested blocks. Works on the 'end' of a block. " prev_indent = the previous line's indent " prev_lnum = previous line (to start looking on) " blockstart = expr. that indicates a possible start of this block " blockend = expr. that indicates a possible end of this block function s:EndBlockIndent( prev_indent, prev_lnum, blockstart, blockend ) let lnum = a:prev_lnum let line = getline(lnum) let ends = 0 while lnum > 1 if getline(lnum) =~ '^\s*' . a:blockstart let ind = indent(lnum) if ends <= 0 if ind < a:prev_indent return ind endif else let ends = ends - 1 endif elseif getline(lnum) =~ '^\s*' . a:blockend let ends = ends + 1 endif let lnum = prevnonblank(lnum - 1) " Get previous non-blank/non-comment-only line while 1 let line = getline(lnum) let line = substitute( line, g:ada#Comment, '', '' ) if line !~ '^\s*$' break endif let lnum = prevnonblank(lnum - 1) if lnum <= 0 return a:prev_indent endif endwhile endwhile " Fallback - just move back one return a:prev_indent - shiftwidth() endfunction EndBlockIndent " Section: s:StatementIndent {{{1 " " Return indent of previous statement-start " (after we've indented due to multi-line statements). " This time, we start searching on the line *before* the one given (which is " the end of a statement - we want the previous beginning). function s:StatementIndent( current_indent, prev_lnum ) let lnum = a:prev_lnum while lnum > 0 let prev_lnum = lnum let lnum = prevnonblank(lnum - 1) " Get previous non-blank/non-comment-only line while 1 let line = substitute( getline(lnum), g:ada#Comment, '', '' ) if line !~ '^\s*$' && line !~ '^\s*#' break endif let lnum = prevnonblank(lnum - 1) if lnum <= 0 return a:current_indent endif endwhile " Leave indent alone if our ';' line is part of a ';'-delineated " aggregate (e.g., procedure args.) or first line after a block start. if line =~ s:AdaBlockStart || line =~ '(\s*$' return a:current_indent endif if line !~ '[.=(]\s*$' let ind = indent(prev_lnum) if ind < a:current_indent return ind endif endif endwhile " Fallback - just use current one return a:current_indent endfunction StatementIndent " Section: GetAdaIndent {{{1 " " Find correct indent of a new line based upon what went before " function GetAdaIndent() " Find a non-blank line above the current line. let lnum = prevnonblank(v:lnum - 1) let ind = indent(lnum) let package_line = 0 " Get previous non-blank/non-comment-only/non-cpp line while 1 let line = substitute( getline(lnum), g:ada#Comment, '', '' ) if line !~ '^\s*$' && line !~ '^\s*#' break endif let lnum = prevnonblank(lnum - 1) if lnum <= 0 return ind endif endwhile " Get default indent (from prev. line) let ind = indent(lnum) let initind = ind " Now check what's on the previous line if line =~ s:AdaBlockStart || line =~ '(\s*$' " Check for false matches to AdaBlockStart let false_match = 0 if line =~ '^\s*\(procedure\|function\|package\)\>.*\' " Generic instantiation let false_match = 1 elseif line =~ ')\s*;\s*$' || line =~ '^\([^(]*([^)]*)\)*[^(]*;\s*$' " forward declaration let false_match = 1 endif " Move indent in if ! false_match let ind = ind + shiftwidth() endif elseif line =~ '^\s*\(case\|exception\)\>' " Move indent in twice (next 'when' will move back) let ind = ind + 2 * shiftwidth() elseif line =~ '^\s*end\s*record\>' " Move indent back to tallying 'type' preceeding the 'record'. " Allow indent to be equal to 'end record's. let ind = s:MainBlockIndent( ind+shiftwidth(), lnum, 'type\>', '' ) elseif line =~ '\(^\s*new\>.*\)\@' " Multiple line generic instantiation ('package blah is\nnew thingy') let ind = s:StatementIndent( ind - shiftwidth(), lnum ) elseif line =~ ';\s*$' " Statement end (but not 'end' ) - try to find current statement-start indent let ind = s:StatementIndent( ind, lnum ) endif " Check for potential argument list on next line let continuation = (line =~ '[A-Za-z0-9_]\s*$') " Check current line; search for simplistic matching start-of-block let line = getline(v:lnum) if line =~ '^\s*#' " Start of line for ada-pp let ind = 0 elseif continuation && line =~ '^\s*(' " Don't do this if we've already indented due to the previous line if ind == initind let ind = ind + shiftwidth() endif elseif line =~ '^\s*\(begin\|is\)\>' let ind = s:MainBlockIndent( ind, lnum, '\(procedure\|function\|declare\|package\|task\)\>', 'begin\>' ) elseif line =~ '^\s*record\>' let ind = s:MainBlockIndent( ind, lnum, 'type\>\|for\>.*\', '' ) + shiftwidth() elseif line =~ '^\s*\(else\|elsif\)\>' let ind = s:MainBlockIndent( ind, lnum, 'if\>', '' ) elseif line =~ '^\s*when\>' " Align 'when' one /in/ from matching block start let ind = s:MainBlockIndent( ind, lnum, '\(case\|exception\)\>', '' ) + shiftwidth() elseif line =~ '^\s*end\>\s*\' " End of if statements let ind = s:EndBlockIndent( ind, lnum, 'if\>', 'end\>\s*\' ) elseif line =~ '^\s*end\>\s*\' " End of loops let ind = s:EndBlockIndent( ind, lnum, '\(\(while\|for\)\>.*\)\?\', 'end\>\s*\' ) elseif line =~ '^\s*end\>\s*\' " End of records let ind = s:EndBlockIndent( ind, lnum, '\(type\>.*\)\=\', 'end\>\s*\' ) elseif line =~ '^\s*end\>\s*\' " End of procedures let ind = s:EndBlockIndent( ind, lnum, 'procedure\>.*\', 'end\>\s*\' ) elseif line =~ '^\s*end\>\s*\' " End of case statement let ind = s:EndBlockIndent( ind, lnum, 'case\>.*\', 'end\>\s*\' ) elseif line =~ '^\s*end\>' " General case for end let ind = s:MainBlockIndent( ind, lnum, '\(if\|while\|for\|loop\|accept\|begin\|record\|case\|exception\|package\)\>', '' ) elseif line =~ '^\s*exception\>' let ind = s:MainBlockIndent( ind, lnum, 'begin\>', '' ) elseif line =~ '^\s*then\>' let ind = s:MainBlockIndent( ind, lnum, 'if\>', '' ) endif return ind endfunction GetAdaIndent let &cpo = s:keepcpo unlet s:keepcpo finish " 1}}} "------------------------------------------------------------------------------ " Copyright (C) 2006 Martin Krischik " " Vim is Charityware - see ":help license" or uganda.txt for licence details. "------------------------------------------------------------------------------ " vim: textwidth=78 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab " vim: foldmethod=marker PK&]xM?ttvim80/indent/scheme.vimnu[" Vim indent file " Language: Scheme " Last Change: 2018 Jan 31 " Maintainer: Evan Hanson " Previous Maintainer: Sergey Khorev " URL: https://foldling.org/vim/indent/scheme.vim " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif " Use the Lisp indenting runtime! indent/lisp.vim PK&]Xn3n3vim80/indent/sqlanywhere.vimnu[" Vim indent file " Language: SQL " Maintainer: David Fishburn " Last Change: 2017 Jun 13 " Version: 3.0 " Download: http://vim.sourceforge.net/script.php?script_id=495 " Notes: " Indenting keywords are based on Oracle and Sybase Adaptive Server " Anywhere (ASA). Test indenting was done with ASA stored procedures and " fuctions and Oracle packages which contain stored procedures and " functions. " This has not been tested against Microsoft SQL Server or " Sybase Adaptive Server Enterprise (ASE) which use the Transact-SQL " syntax. That syntax does not have end tags for IF's, which makes " indenting more difficult. " " Known Issues: " The Oracle MERGE statement does not have an end tag associated with " it, this can leave the indent hanging to the right one too many. " " History: " 3.0 (Dec 2012) " Added cpo check " " 2.0 " Added the FOR keyword to SQLBlockStart to handle (Alec Tica): " for i in 1..100 loop " |<-- I expect to have indentation here " end loop; " " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 let b:current_indent = "sqlanywhere" setlocal indentkeys-=0{ setlocal indentkeys-=0} setlocal indentkeys-=: setlocal indentkeys-=0# setlocal indentkeys-=e " This indicates formatting should take place when one of these " expressions is used. These expressions would normally be something " you would type at the BEGINNING of a line " SQL is generally case insensitive, so this files assumes that " These keywords are something that would trigger an indent LEFT, not " an indent right, since the SQLBlockStart is used for those keywords setlocal indentkeys+==~end,=~else,=~elseif,=~elsif,0=~when,0=) " GetSQLIndent is executed whenever one of the expressions " in the indentkeys is typed setlocal indentexpr=GetSQLIndent() " Only define the functions once. if exists("*GetSQLIndent") finish endif let s:keepcpo= &cpo set cpo&vim " List of all the statements that start a new block. " These are typically words that start a line. " IS is excluded, since it is difficult to determine when the " ending block is (especially for procedures/functions). let s:SQLBlockStart = '^\s*\%('. \ 'if\|else\|elseif\|elsif\|'. \ 'while\|loop\|do\|for\|'. \ 'begin\|'. \ 'case\|when\|merge\|exception'. \ '\)\>' let s:SQLBlockEnd = '^\s*\(end\)\>' " The indent level is also based on unmatched paranethesis " If a line has an extra "(" increase the indent " If a line has an extra ")" decrease the indent function! s:CountUnbalancedParan( line, paran_to_check ) let l = a:line let lp = substitute(l, '[^(]', '', 'g') let l = a:line let rp = substitute(l, '[^)]', '', 'g') if a:paran_to_check =~ ')' " echom 'CountUnbalancedParan ) returning: ' . " \ (strlen(rp) - strlen(lp)) return (strlen(rp) - strlen(lp)) elseif a:paran_to_check =~ '(' " echom 'CountUnbalancedParan ( returning: ' . " \ (strlen(lp) - strlen(rp)) return (strlen(lp) - strlen(rp)) else " echom 'CountUnbalancedParan unknown paran to check: ' . " \ a:paran_to_check return 0 endif endfunction " Unindent commands based on previous indent level function! s:CheckToIgnoreRightParan( prev_lnum, num_levels ) let lnum = a:prev_lnum let line = getline(lnum) let ends = 0 let num_right_paran = a:num_levels let ignore_paran = 0 let vircol = 1 while num_right_paran > 0 silent! exec 'norm! '.lnum."G\".vircol."\" let right_paran = search( ')', 'W' ) if right_paran != lnum " This should not happen since there should be at least " num_right_paran matches for this line break endif let vircol = virtcol(".") " if getline(".") =~ '^)' let matching_paran = searchpair('(', '', ')', 'bW', \ 's:IsColComment(line("."), col("."))') if matching_paran < 1 " No match found " echom 'CTIRP - no match found, ignoring' break endif if matching_paran == lnum " This was not an unmatched parantenses, start the search again " again after this column " echom 'CTIRP - same line match, ignoring' continue endif " echom 'CTIRP - match: ' . line(".") . ' ' . getline(".") if getline(matching_paran) =~? '\(if\|while\)\>' " echom 'CTIRP - if/while ignored: ' . line(".") . ' ' . getline(".") let ignore_paran = ignore_paran + 1 endif " One match found, decrease and check for further matches let num_right_paran = num_right_paran - 1 endwhile " Fallback - just move back one " return a:prev_indent - shiftwidth() return ignore_paran endfunction " Based on the keyword provided, loop through previous non empty " non comment lines to find the statement that initated the keyword. " Return its indent level " CASE .. " WHEN ... " Should return indent level of CASE " EXCEPTION .. " WHEN ... " something; " WHEN ... " Should return indent level of exception. function! s:GetStmtStarterIndent( keyword, curr_lnum ) let lnum = a:curr_lnum " Default - reduce indent by 1 let ind = indent(a:curr_lnum) - shiftwidth() if a:keyword =~? 'end' exec 'normal! ^' let stmts = '^\s*\%('. \ '\\|' . \ '\%(\%(\\)\|' . \ '\%(\%(\\)\|' . \ '\%(\%(\\)\|' . \ '\%(\%(\\)'. \ '\)' let matching_lnum = searchpair(stmts, '', '\\zs', 'bW', \ 's:IsColComment(line("."), col(".")) == 1') exec 'normal! $' if matching_lnum > 0 && matching_lnum < a:curr_lnum let ind = indent(matching_lnum) endif elseif a:keyword =~? 'when' exec 'normal! ^' let matching_lnum = searchpair( \ '\%(\\|\\|\', \ '', \ '\%(\%(\\)\|\%(\\)\)', \ 'bW', \ 's:IsColComment(line("."), col(".")) == 1') exec 'normal! $' if matching_lnum > 0 && matching_lnum < a:curr_lnum let ind = indent(matching_lnum) else let ind = indent(a:curr_lnum) endif endif return ind endfunction " Check if the line is a comment function! s:IsLineComment(lnum) let rc = synIDattr( \ synID(a:lnum, \ match(getline(a:lnum), '\S')+1, 0) \ , "name") \ =~? "comment" return rc endfunction " Check if the column is a comment function! s:IsColComment(lnum, cnum) let rc = synIDattr(synID(a:lnum, a:cnum, 0), "name") \ =~? "comment" return rc endfunction " Instead of returning a column position, return " an appropriate value as a factor of shiftwidth. function! s:ModuloIndent(ind) let ind = a:ind if ind > 0 let modulo = ind % shiftwidth() if modulo > 0 let ind = ind - modulo endif endif return ind endfunction " Find correct indent of a new line based upon the previous line function! GetSQLIndent() let lnum = v:lnum let ind = indent(lnum) " If the current line is a comment, leave the indent as is " Comment out this additional check since it affects the " indenting of =, and will not reindent comments as it should " if s:IsLineComment(lnum) == 1 " return ind " endif " Get previous non-blank line let prevlnum = prevnonblank(lnum - 1) if prevlnum <= 0 return ind endif if s:IsLineComment(prevlnum) == 1 if getline(v:lnum) =~ '^\s*\*' let ind = s:ModuloIndent(indent(prevlnum)) return ind + 1 endif " If the previous line is a comment, then return -1 " to tell Vim to use the formatoptions setting to determine " the indent to use " But only if the next line is blank. This would be true if " the user is typing, but it would not be true if the user " is reindenting the file if getline(v:lnum) =~ '^\s*$' return -1 endif endif " echom 'PREVIOUS INDENT: ' . indent(prevlnum) . ' LINE: ' . getline(prevlnum) " This is the line you just hit return on, it is not the current line " which is new and empty " Based on this line, we can determine how much to indent the new " line " Get default indent (from prev. line) let ind = indent(prevlnum) let prevline = getline(prevlnum) " Now check what's on the previous line to determine if the indent " should be changed, for example IF, BEGIN, should increase the indent " where END IF, END, should decrease the indent. if prevline =~? s:SQLBlockStart " Move indent in let ind = ind + shiftwidth() " echom 'prevl - SQLBlockStart - indent ' . ind . ' line: ' . prevline elseif prevline =~ '[()]' if prevline =~ '(' let num_unmatched_left = s:CountUnbalancedParan( prevline, '(' ) else let num_unmatched_left = 0 endif if prevline =~ ')' let num_unmatched_right = s:CountUnbalancedParan( prevline, ')' ) else let num_unmatched_right = 0 " let num_unmatched_right = s:CountUnbalancedParan( prevline, ')' ) endif if num_unmatched_left > 0 " There is a open left paranethesis " increase indent let ind = ind + ( shiftwidth() * num_unmatched_left ) elseif num_unmatched_right > 0 " if it is an unbalanced paranethesis only unindent if " it was part of a command (ie create table(..) ) " instead of part of an if (ie if (....) then) which should " maintain the indent level let ignore = s:CheckToIgnoreRightParan( prevlnum, num_unmatched_right ) " echom 'prevl - ) unbalanced - CTIRP - ignore: ' . ignore if prevline =~ '^\s*)' let ignore = ignore + 1 " echom 'prevl - begins ) unbalanced ignore: ' . ignore endif if (num_unmatched_right - ignore) > 0 let ind = ind - ( shiftwidth() * (num_unmatched_right - ignore) ) endif endif endif " echom 'CURRENT INDENT: ' . ind . ' LINE: ' . getline(v:lnum) " This is a new blank line since we just typed a carriage return " Check current line; search for simplistic matching start-of-block let line = getline(v:lnum) if line =~? '^\s*els' " Any line when you type else will automatically back up one " ident level (ie else, elseif, elsif) let ind = ind - shiftwidth() " echom 'curr - else - indent ' . ind elseif line =~? '^\s*end\>' let ind = s:GetStmtStarterIndent('end', v:lnum) " General case for end " let ind = ind - shiftwidth() " echom 'curr - end - indent ' . ind elseif line =~? '^\s*when\>' let ind = s:GetStmtStarterIndent('when', v:lnum) " If the WHEN clause is used with a MERGE or EXCEPTION " clause, do not change the indent level, since these " statements do not have a corresponding END statement. " if stmt_starter =~? 'case' " let ind = ind - shiftwidth() " endif " elseif line =~ '^\s*)\s*;\?\s*$' " elseif line =~ '^\s*)' elseif line =~ '^\s*)' let num_unmatched_right = s:CountUnbalancedParan( line, ')' ) let ignore = s:CheckToIgnoreRightParan( v:lnum, num_unmatched_right ) " If the line ends in a ), then reduce the indent " This catches items like: " CREATE TABLE T1( " c1 int, " c2 int " ); " But we do not want to unindent a line like: " IF ( c1 = 1 " AND c2 = 3 ) THEN " let num_unmatched_right = s:CountUnbalancedParan( line, ')' ) " if num_unmatched_right > 0 " elseif strpart( line, strlen(line)-1, 1 ) =~ ')' " let ind = ind - shiftwidth() if line =~ '^\s*)' " let ignore = ignore + 1 " echom 'curr - begins ) unbalanced ignore: ' . ignore endif if (num_unmatched_right - ignore) > 0 let ind = ind - ( shiftwidth() * (num_unmatched_right - ignore) ) endif " endif endif " echom 'final - indent ' . ind return s:ModuloIndent(ind) endfunction " Restore: let &cpo= s:keepcpo unlet s:keepcpo " vim: ts=4 fdm=marker sw=4 PK&]( vim80/indent/eruby.vimnu[" Vim indent file " Language: eRuby " Maintainer: Tim Pope " URL: https://github.com/vim-ruby/vim-ruby " Release Coordinator: Doug Kearns if exists("b:did_indent") finish endif runtime! indent/ruby.vim unlet! b:did_indent setlocal indentexpr= if exists("b:eruby_subtype") exe "runtime! indent/".b:eruby_subtype.".vim" else runtime! indent/html.vim endif unlet! b:did_indent " Force HTML indent to not keep state. let b:html_indent_usestate = 0 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:eruby_subtype_indentexpr = &l:indentexpr let b:did_indent = 1 setlocal indentexpr=GetErubyIndent() setlocal indentkeys=o,O,*,<>>,{,},0),0],o,O,!^F,=end,=else,=elsif,=rescue,=ensure,=when " Only define the function once. if exists("*GetErubyIndent") finish endif " this file uses line continuations let s:cpo_sav = &cpo set cpo&vim function! GetErubyIndent(...) " The value of a single shift-width let sw = shiftwidth() 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 inruby = searchpair('<%','','%>','W') call cursor(v:lnum,vcol) if inruby && getline(v:lnum) !~ '^<%\|^\s*[-=]\=%>' let ind = GetRubyIndent(v:lnum) else exe "let ind = ".b:eruby_subtype_indentexpr " Workaround for Andy Wokula's HTML indent. This should be removed after " some time, since the newest version is fixed in a different way. if b:eruby_subtype_indentexpr =~# '^HtmlIndent(' \ && exists('b:indent') \ && type(b:indent) == type({}) \ && has_key(b:indent, 'lnum') " Force HTML indent to not keep state let b:indent.lnum = -1 endif endif let lnum = prevnonblank(v:lnum-1) let line = getline(lnum) let cline = getline(v:lnum) if cline =~# '^\s*<%[-=]\=\s*\%(}\|end\|else\|\%(ensure\|rescue\|elsif\|when\).\{-\}\)\s*\%([-=]\=%>\|$\)' let ind = ind - sw endif if line =~# '\S\s*<%[-=]\=\s*\%(}\|end\).\{-\}\s*\%([-=]\=%>\|$\)' let ind = ind - sw endif if line =~# '\%({\|\' let ind = ind + sw elseif line =~# '<%[-=]\=\s*\%(module\|class\|def\|if\|for\|while\|until\|else\|elsif\|case\|when\|unless\|begin\|ensure\|rescue\)\>.*%>' let ind = ind + sw endif if line =~# '^\s*<%[=#-]\=\s*$' && cline !~# '^\s*end\>' let ind = ind + sw endif if line !~# '^\s*<%' && line =~# '%>\s*$' && line !~# '^\s*end\>' let ind = ind - sw endif if cline =~# '^\s*[-=]\=%>\s*$' let ind = ind - sw endif return ind endfunction let &cpo = s:cpo_sav unlet! s:cpo_sav " vim:set sw=2 sts=2 ts=8 noet: PK&]vim80/indent/xsd.vimnu[" Vim indent file " Language: .xsd files (XML Schema) " Maintainer: Nobody " Last Change: 2005 Jun 09 " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif " Use XML formatting rules runtime! indent/xml.vim PK&]XTTvim80/indent/sh.vimnu[" Vim indent file " Language: Shell Script " Maintainer: Christian Brabandt " Previous Maintainer: Peter Aronoff " Original Author: Nikolai Weibull " Latest Revision: 2017-08-08 " License: Vim (see :h license) " Repository: https://github.com/chrisbra/vim-sh-indent " Changelog: " 20170808: - better indent of line continuation " 20170502: - get rid of buffer-shiftwidth function " 20160912: - preserve indentation of here-doc blocks " 20160627: - detect heredocs correctly " 20160213: - detect function definition correctly " 20160202: - use shiftwidth() function " 20151215: - set b:undo_indent variable " 20150728: - add foreach detection for zsh if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetShIndent() setlocal indentkeys+=0=then,0=do,0=else,0=elif,0=fi,0=esac,0=done,0=end,),0=;;,0=;& setlocal indentkeys+=0=fin,0=fil,0=fip,0=fir,0=fix setlocal indentkeys-=:,0# setlocal nosmartindent let b:undo_indent = 'setlocal indentexpr< indentkeys< smartindent<' if exists("*GetShIndent") finish endif let s:cpo_save = &cpo set cpo&vim let s:sh_indent_defaults = { \ 'default': function('shiftwidth'), \ 'continuation-line': function('shiftwidth'), \ 'case-labels': function('shiftwidth'), \ 'case-statements': function('shiftwidth'), \ 'case-breaks': 0 } function! s:indent_value(option) let Value = exists('b:sh_indent_options') \ && has_key(b:sh_indent_options, a:option) ? \ b:sh_indent_options[a:option] : \ s:sh_indent_defaults[a:option] if type(Value) == type(function('type')) return Value() endif return Value endfunction function! GetShIndent() let lnum = prevnonblank(v:lnum - 1) if lnum == 0 return 0 endif let pnum = prevnonblank(lnum - 1) let ind = indent(lnum) let line = getline(lnum) if line =~ '^\s*\%(if\|then\|do\|else\|elif\|case\|while\|until\|for\|select\|foreach\)\>' if line !~ '\<\%(fi\|esac\|done\|end\)\>\s*\%(#.*\)\=$' let ind += s:indent_value('default') endif elseif s:is_case_label(line, pnum) if !s:is_case_ended(line) let ind += s:indent_value('case-statements') endif elseif line =~ '^\s*\<\k\+\>\s*()\s*{' || line =~ '^\s*{' || line =~ '^\s*function\s*\w\S\+\s*\%(()\)\?\s*{' if line !~ '}\s*\%(#.*\)\=$' let ind += s:indent_value('default') endif elseif s:is_continuation_line(line) if pnum == 0 || !s:is_continuation_line(getline(pnum)) let ind += s:indent_value('continuation-line') endif elseif pnum != 0 && s:is_continuation_line(getline(pnum)) let ind = indent(s:find_continued_lnum(pnum)) endif let pine = line let line = getline(v:lnum) if line =~ '^\s*\%(then\|do\|else\|elif\|fi\|done\|end\)\>' || line =~ '^\s*}' let ind -= s:indent_value('default') elseif line =~ '^\s*esac\>' && s:is_case_empty(getline(v:lnum - 1)) let ind -= s:indent_value('default') elseif line =~ '^\s*esac\>' let ind -= (s:is_case_label(pine, lnum) && s:is_case_ended(pine) ? \ 0 : s:indent_value('case-statements')) + \ s:indent_value('case-labels') if s:is_case_break(pine) let ind += s:indent_value('case-breaks') endif elseif s:is_case_label(line, lnum) if s:is_case(pine) let ind = indent(lnum) + s:indent_value('case-labels') else let ind -= (s:is_case_label(pine, lnum) && s:is_case_ended(pine) ? \ 0 : s:indent_value('case-statements')) - \ s:indent_value('case-breaks') endif elseif s:is_case_break(line) let ind -= s:indent_value('case-breaks') elseif s:is_here_doc(line) let ind = 0 " statements, executed within a here document. Keep the current indent elseif match(map(synstack(v:lnum, 1), 'synIDattr(v:val, "name")'), '\c\mheredoc') > -1 return indent(v:lnum) endif return ind endfunction function! s:is_continuation_line(line) return a:line =~ '\%(\%(^\|[^\\]\)\\\|&&\|||\||\)' . \ '\s*\({\s*\)\=\(#.*\)\=$' endfunction function! s:find_continued_lnum(lnum) let i = a:lnum while i > 1 && s:is_continuation_line(getline(i - 1)) let i -= 1 endwhile return i endfunction function! s:is_case_label(line, pnum) if a:line !~ '^\s*(\=.*)' return 0 endif if a:pnum > 0 let pine = getline(a:pnum) if !(s:is_case(pine) || s:is_case_ended(pine)) return 0 endif endif let suffix = substitute(a:line, '^\s*(\=', "", "") let nesting = 0 let i = 0 let n = strlen(suffix) while i < n let c = suffix[i] let i += 1 if c == '\\' let i += 1 elseif c == '(' let nesting += 1 elseif c == ')' if nesting == 0 return 1 endif let nesting -= 1 endif endwhile return 0 endfunction function! s:is_case(line) return a:line =~ '^\s*case\>' endfunction function! s:is_case_break(line) return a:line =~ '^\s*;[;&]' endfunction function! s:is_here_doc(line) if a:line =~ '^\w\+$' let here_pat = '<<-\?'. s:escape(a:line). '\$' return search(here_pat, 'bnW') > 0 endif return 0 endfunction function! s:is_case_ended(line) return s:is_case_break(a:line) || a:line =~ ';[;&]\s*\%(#.*\)\=$' endfunction function! s:is_case_empty(line) if a:line =~ '^\s*$' || a:line =~ '^\s*#' return s:is_case_empty(getline(v:lnum - 1)) else return a:line =~ '^\s*case\>' endif endfunction function! s:escape(pattern) return '\V'. escape(a:pattern, '\\') endfunction let &cpo = s:cpo_save unlet s:cpo_save PK&]CX vim80/indent/ld.vimnu[" Vim indent file " Language: ld(1) script " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-12-20 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetLDIndent() setlocal indentkeys=0{,0},!^F,o,O setlocal nosmartindent if exists("*GetLDIndent") finish endif function s:prevnonblanknoncomment(lnum) let lnum = a:lnum while lnum > 1 let lnum = prevnonblank(lnum) let line = getline(lnum) if line =~ '\*/' while lnum > 1 && line !~ '/\*' let lnum -= 1 endwhile if line =~ '^\s*/\*' let lnum -= 1 else break endif else break endif endwhile return lnum endfunction function s:count_braces(lnum, count_open) let n_open = 0 let n_close = 0 let line = getline(a:lnum) let pattern = '[{}]' let i = match(line, pattern) while i != -1 if synIDattr(synID(a:lnum, i + 1, 0), 'name') !~ 'ld\%(Comment\|String\)' if line[i] == '{' let n_open += 1 elseif line[i] == '}' if n_open > 0 let n_open -= 1 else let n_close += 1 endif endif endif let i = match(line, pattern, i + 1) endwhile return a:count_open ? n_open : n_close endfunction function GetLDIndent() let line = getline(v:lnum) if line =~ '^\s*\*' return cindent(v:lnum) elseif line =~ '^\s*}' return indent(v:lnum) - shiftwidth() endif let pnum = s:prevnonblanknoncomment(v:lnum - 1) if pnum == 0 return 0 endif let ind = indent(pnum) + s:count_braces(pnum, 1) * shiftwidth() let pline = getline(pnum) if pline =~ '}\s*$' let ind -= (s:count_braces(pnum, 0) - (pline =~ '^\s*}' ? 1 : 0)) * shiftwidth() endif return ind endfunction PK&]5ZZvim80/indent/bib.vimnu[" Vim indent file " Language: BibTeX " Maintainer: Dorai Sitaram " URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html " Last Change: 2005 Mar 28 " Only do this when not done yet for this buffer if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal cindent let b:undo_indent = "setl cin<" PK&]/FFvim80/indent/rpl.vimnu[" Vim indent file " Language: RPL/2 " Version: 0.2 " Last Change: 2017 Jun 13 " Maintainer: BERTRAND Jol " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal autoindent setlocal indentkeys+==~end,=~case,=~if,=~then,=~else,=~do,=~until,=~while,=~repeat,=~select,=~default,=~for,=~start,=~next,=~step,<<>,<>> " Define the appropriate indent function but only once setlocal indentexpr=RplGetFreeIndent() if exists("*RplGetFreeIndent") finish endif let b:undo_indent = "set ai< indentkeys< indentexpr<" function RplGetIndent(lnum) let ind = indent(a:lnum) let prevline=getline(a:lnum) " Strip tail comment let prevstat=substitute(prevline, '!.*$', '', '') " Add a shiftwidth to statements following if, iferr, then, else, elseif, " case, select, default, do, until, while, repeat, for, start if prevstat =~? '\<\(if\|iferr\|do\|while\)\>' && prevstat =~? '\' elseif prevstat =~? '\(^\|\s\+\)<<\($\|\s\+\)' && prevstat =~? '\s\+>>\($\|\s\+\)' elseif prevstat =~? '\<\(if\|iferr\|then\|else\|elseif\|select\|case\|do\|until\|while\|repeat\|for\|start\|default\)\>' || prevstat =~? '\(^\|\s\+\)<<\($\|\s\+\)' let ind = ind + shiftwidth() endif " Subtract a shiftwidth from then, else, elseif, end, until, repeat, next, " step let line = getline(v:lnum) if line =~? '^\s*\(then\|else\|elseif\|until\|repeat\|next\|step\|default\|end\)\>' let ind = ind - shiftwidth() elseif line =~? '^\s*>>\($\|\s\+\)' let ind = ind - shiftwidth() endif return ind endfunction function RplGetFreeIndent() " Find the previous non-blank line let lnum = prevnonblank(v:lnum - 1) " Use zero indent at the top of the file if lnum == 0 return 0 endif let ind=RplGetIndent(lnum) return ind endfunction " vim:sw=2 tw=130 PK&]7;>>vim80/indent/rnoweb.vimnu[" Vim indent file " Language: Rnoweb " Author: Jakson Alves de Aquino " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Fri Apr 15, 2016 10:58PM " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif runtime indent/tex.vim function! s:NoTeXIndent() return indent(line(".")) endfunction if &indentexpr == "" || &indentexpr == "GetRnowebIndent()" let s:TeXIndent = function("s:NoTeXIndent") else let s:TeXIndent = function(substitute(&indentexpr, "()", "", "")) endif unlet b:did_indent runtime indent/r.vim let s:RIndent = function(substitute(&indentexpr, "()", "", "")) let b:did_indent = 1 setlocal indentkeys=0{,0},!^F,o,O,e,},=\bibitem,=\item setlocal indentexpr=GetRnowebIndent() if exists("*GetRnowebIndent") finish endif function GetRnowebIndent() let curline = getline(".") if curline =~ '^<<.*>>=$' || curline =~ '^\s*@$' return 0 endif if search("^<<", "bncW") > search("^@", "bncW") return s:RIndent() endif return s:TeXIndent() endfunction " vim: sw=2 PK&]N47Vvim80/indent/fortran.vimnu[" Vim indent file " Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77) " Version: 47 " Last Change: 2016 Oct. 29 " Maintainer: Ajit J. Thakkar ; " Usage: For instructions, do :help fortran-indent from Vim " Credits: " Useful suggestions were made, in chronological order, by: " Albert Oliver Serra, Takuya Fujiwara and Philipp Edelmann. " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 let s:cposet=&cpoptions set cpoptions&vim setlocal indentkeys+==~end,=~case,=~if,=~else,=~do,=~where,=~elsewhere,=~select setlocal indentkeys+==~endif,=~enddo,=~endwhere,=~endselect,=~elseif setlocal indentkeys+==~type,=~interface,=~forall,=~associate,=~block,=~enum setlocal indentkeys+==~endforall,=~endassociate,=~endblock,=~endenum if exists("b:fortran_indent_more") || exists("g:fortran_indent_more") setlocal indentkeys+==~function,=~subroutine,=~module,=~contains,=~program setlocal indentkeys+==~endfunction,=~endsubroutine,=~endmodule setlocal indentkeys+==~endprogram endif " Determine whether this is a fixed or free format source file " if this hasn't been done yet using the priority: " buffer-local value " > global value " > file extension as in Intel ifort, gcc (gfortran), NAG, Pathscale, and Cray compilers if !exists("b:fortran_fixed_source") if exists("fortran_free_source") " User guarantees free source form let b:fortran_fixed_source = 0 elseif exists("fortran_fixed_source") " User guarantees fixed source form let b:fortran_fixed_source = 1 elseif expand("%:e") ==? "f\<90\|95\|03\|08\>" " Free-form file extension defaults as in Intel ifort, gcc(gfortran), NAG, Pathscale, and Cray compilers let b:fortran_fixed_source = 0 elseif expand("%:e") ==? "f\|f77\|for" " Fixed-form file extension defaults let b:fortran_fixed_source = 1 else " Modern fortran still allows both fixed and free source form " Assume fixed source form unless signs of free source form " are detected in the first five columns of the first s:lmax lines. " Detection becomes more accurate and time-consuming if more lines " are checked. Increase the limit below if you keep lots of comments at " the very top of each file and you have a fast computer. let s:lmax = 500 if ( s:lmax > line("$") ) let s:lmax = line("$") endif let b:fortran_fixed_source = 1 let s:ln=1 while s:ln <= s:lmax let s:test = strpart(getline(s:ln),0,5) if s:test !~ '^[Cc*]' && s:test !~ '^ *[!#]' && s:test =~ '[^ 0-9\t]' && s:test !~ '^[ 0-9]*\t' let b:fortran_fixed_source = 0 break endif let s:ln = s:ln + 1 endwhile endif endif " Define the appropriate indent function but only once if (b:fortran_fixed_source == 1) setlocal indentexpr=FortranGetFixedIndent() if exists("*FortranGetFixedIndent") finish endif else setlocal indentexpr=FortranGetFreeIndent() if exists("*FortranGetFreeIndent") finish endif endif function FortranGetIndent(lnum) let ind = indent(a:lnum) let prevline=getline(a:lnum) " Strip tail comment let prevstat=substitute(prevline, '!.*$', '', '') let prev2line=getline(a:lnum-1) let prev2stat=substitute(prev2line, '!.*$', '', '') "Indent do loops only if they are all guaranteed to be of do/end do type if exists("b:fortran_do_enddo") || exists("g:fortran_do_enddo") if prevstat =~? '^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*do\>' let ind = ind + shiftwidth() endif if getline(v:lnum) =~? '^\s*\(\d\+\s\)\=\s*end\s*do\>' let ind = ind - shiftwidth() endif endif "Add a shiftwidth to statements following if, else, else if, case, class, "where, else where, forall, type, interface and associate statements if prevstat =~? '^\s*\(case\|class\|else\|else\s*if\|else\s*where\)\>' \ ||prevstat=~? '^\s*\(type\|interface\|associate\|enum\)\>' \ ||prevstat=~?'^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*\(forall\|where\|block\)\>' \ ||prevstat=~? '^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*if\>' let ind = ind + shiftwidth() " Remove unwanted indent after logical and arithmetic ifs if prevstat =~? '\' && prevstat !~? '\' let ind = ind - shiftwidth() endif " Remove unwanted indent after type( statements if prevstat =~? '^\s*type\s*(' let ind = ind - shiftwidth() endif endif "Indent program units unless instructed otherwise if !exists("b:fortran_indent_less") && !exists("g:fortran_indent_less") let prefix='\(\(pure\|impure\|elemental\|recursive\)\s\+\)\{,2}' let type='\(\(integer\|real\|double\s\+precision\|complex\|logical' \.'\|character\|type\|class\)\s*\S*\s\+\)\=' if prevstat =~? '^\s*\(contains\|submodule\|program\)\>' \ ||prevstat =~? '^\s*'.'module\>\(\s*\procedure\)\@!' \ ||prevstat =~? '^\s*'.prefix.'subroutine\>' \ ||prevstat =~? '^\s*'.prefix.type.'function\>' \ ||prevstat =~? '^\s*'.type.prefix.'function\>' let ind = ind + shiftwidth() endif if getline(v:lnum) =~? '^\s*contains\>' \ ||getline(v:lnum)=~? '^\s*end\s*' \ .'\(function\|subroutine\|module\|submodule\|program\)\>' let ind = ind - shiftwidth() endif endif "Subtract a shiftwidth from else, else if, elsewhere, case, class, end if, " end where, end select, end forall, end interface, end associate, " end enum, end type, end block and end type statements if getline(v:lnum) =~? '^\s*\(\d\+\s\)\=\s*' \. '\(else\|else\s*if\|else\s*where\|case\|class\|' \. 'end\s*\(if\|where\|select\|interface\|' \. 'type\|forall\|associate\|enum\|block\)\)\>' let ind = ind - shiftwidth() " Fix indent for case statement immediately after select if prevstat =~? '\' let ind = ind + shiftwidth() endif endif "First continuation line if prevstat =~ '&\s*$' && prev2stat !~ '&\s*$' let ind = ind + shiftwidth() endif "Line after last continuation line if prevstat !~ '&\s*$' && prev2stat =~ '&\s*$' && prevstat !~? '\' let ind = ind - shiftwidth() endif return ind endfunction function FortranGetFreeIndent() "Find the previous non-blank line let lnum = prevnonblank(v:lnum - 1) "Use zero indent at the top of the file if lnum == 0 return 0 endif let ind=FortranGetIndent(lnum) return ind endfunction function FortranGetFixedIndent() let currline=getline(v:lnum) "Don't indent comments, continuation lines and labelled lines if strpart(currline,0,6) =~ '[^ \t]' let ind = indent(v:lnum) return ind endif "Find the previous line which is not blank, not a comment, "not a continuation line, and does not have a label let lnum = v:lnum - 1 while lnum > 0 let prevline=getline(lnum) if (prevline =~ "^[C*!]") || (prevline =~ "^\s*$") \ || (strpart(prevline,5,1) !~ "[ 0]") " Skip comments, blank lines and continuation lines let lnum = lnum - 1 else let test=strpart(prevline,0,5) if test =~ "[0-9]" " Skip lines with statement numbers let lnum = lnum - 1 else break endif endif endwhile "First line must begin at column 7 if lnum == 0 return 6 endif let ind=FortranGetIndent(lnum) return ind endfunction let &cpoptions=s:cposet unlet s:cposet " vim:sw=2 tw=130 PK&]-+``vim80/indent/yaml.vimnu[" Vim indent file " Language: YAML " Maintainer: Nikolai Pavlov " Last Change: 2017 Jun 13 " Only load this indent file when no other was loaded. if exists('b:did_indent') finish endif let s:save_cpo = &cpo set cpo&vim let b:did_indent = 1 setlocal indentexpr=GetYAMLIndent(v:lnum) setlocal indentkeys=!^F,o,O,0#,0},0],<:>,0- setlocal nosmartindent let b:undo_indent = 'setlocal indentexpr< indentkeys< smartindent<' " Only define the function once. if exists('*GetYAMLIndent') finish endif function s:FindPrevLessIndentedLine(lnum, ...) let prevlnum = prevnonblank(a:lnum-1) let curindent = a:0 ? a:1 : indent(a:lnum) while prevlnum \&& indent(prevlnum) >= curindent \&& getline(prevlnum) =~# '^\s*#' let prevlnum = prevnonblank(prevlnum-1) endwhile return prevlnum endfunction function s:FindPrevLEIndentedLineMatchingRegex(lnum, regex) let plilnum = s:FindPrevLessIndentedLine(a:lnum, indent(a:lnum)+1) while plilnum && getline(plilnum) !~# a:regex let plilnum = s:FindPrevLessIndentedLine(plilnum) endwhile return plilnum endfunction let s:mapkeyregex='\v^\s*\#@!\S@=%(\''%([^'']|\''\'')*\'''. \ '|\"%([^"\\]|\\.)*\"'. \ '|%(%(\:\ )@!.)*)\:%(\ |$)' let s:liststartregex='\v^\s*%(\-%(\ |$))' let s:c_ns_anchor_char = '\v%([\n\r\uFEFF \t,[\]{}]@!\p)' let s:c_ns_anchor_name = s:c_ns_anchor_char.'+' let s:c_ns_anchor_property = '\v\&'.s:c_ns_anchor_name let s:ns_word_char = '\v[[:alnum:]_\-]' let s:ns_tag_char = '\v%(%\x\x|'.s:ns_word_char.'|[#/;?:@&=+$.~*''()])' let s:c_named_tag_handle = '\v\!'.s:ns_word_char.'+\!' let s:c_secondary_tag_handle = '\v\!\!' let s:c_primary_tag_handle = '\v\!' let s:c_tag_handle = '\v%('.s:c_named_tag_handle. \ '|'.s:c_secondary_tag_handle. \ '|'.s:c_primary_tag_handle.')' let s:c_ns_shorthand_tag = '\v'.s:c_tag_handle . s:ns_tag_char.'+' let s:c_non_specific_tag = '\v\!' let s:ns_uri_char = '\v%(%\x\x|'.s:ns_word_char.'\v|[#/;?:@&=+$,.!~*''()[\]])' let s:c_verbatim_tag = '\v\!\<'.s:ns_uri_char.'+\>' let s:c_ns_tag_property = '\v'.s:c_verbatim_tag. \ '\v|'.s:c_ns_shorthand_tag. \ '\v|'.s:c_non_specific_tag let s:block_scalar_header = '\v[|>]%([+-]?[1-9]|[1-9]?[+-])?' function GetYAMLIndent(lnum) if a:lnum == 1 || !prevnonblank(a:lnum-1) return 0 endif let prevlnum = prevnonblank(a:lnum-1) let previndent = indent(prevlnum) let line = getline(a:lnum) if line =~# '^\s*#' && getline(a:lnum-1) =~# '^\s*#' " Comment blocks should have identical indent return previndent elseif line =~# '^\s*[\]}]' " Lines containing only closing braces should have previous indent return indent(s:FindPrevLessIndentedLine(a:lnum)) endif " Ignore comment lines when calculating indent while getline(prevlnum) =~# '^\s*#' let prevlnum = prevnonblank(prevlnum-1) if !prevlnum return previndent endif endwhile let prevline = getline(prevlnum) let previndent = indent(prevlnum) " Any examples below assume that shiftwidth=2 if prevline =~# '\v[{[:]$|[:-]\ [|>][+\-]?%(\s+\#.*|\s*)$' " Mapping key: " nested mapping: ... " " - { " key: [ " list value " ] " } " " - |- " Block scalar without indentation indicator return previndent+shiftwidth() elseif prevline =~# '\v[:-]\ [|>]%(\d+[+\-]?|[+\-]?\d+)%(\#.*|\s*)$' " - |+2 " block scalar with indentation indicator "#^^ indent+2, not indent+shiftwidth return previndent + str2nr(matchstr(prevline, \'\v([:-]\ [|>])@<=[+\-]?\d+%([+\-]?%(\s+\#.*|\s*)$)@=')) elseif prevline =~# '\v\"%([^"\\]|\\.)*\\$' " "Multiline string \ " with escaped end" let qidx = match(prevline, '\v\"%([^"\\]|\\.)*\\') return virtcol([prevlnum, qidx+1]) elseif line =~# s:liststartregex " List line should have indent equal to previous list line unless it was " caught by one of the previous rules return indent(s:FindPrevLEIndentedLineMatchingRegex(a:lnum, \ s:liststartregex)) elseif line =~# s:mapkeyregex " Same for line containing mapping key let prevmapline = s:FindPrevLEIndentedLineMatchingRegex(a:lnum, \ s:mapkeyregex) if getline(prevmapline) =~# '^\s*- ' return indent(prevmapline) + 2 else return indent(prevmapline) endif elseif prevline =~# '^\s*- ' " - List with " multiline scalar return previndent+2 elseif prevline =~# s:mapkeyregex . '\v\s*%(%('.s:c_ns_tag_property. \ '\v|'.s:c_ns_anchor_property. \ '\v|'.s:block_scalar_header. \ '\v)%(\s+|\s*%(\#.*)?$))*' " Mapping with: value " that is multiline scalar return previndent+shiftwidth() endif return previndent endfunction let &cpo = s:save_cpo PK&]Evim80/indent/mf.vimnu[" METAFONT indent file " Language: METAFONT " Maintainer: Nicola Vitacolonna " Last Change: 2016 Oct 1 runtime! indent/mp.vim PK&]2t#vim80/indent/treetop.vimnu[" Vim indent file " Language: Treetop " Previous Maintainer: Nikolai Weibull " Latest Revision: 2011-03-14 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetTreetopIndent() setlocal indentkeys=0{,0},!^F,o,O,=end setlocal nosmartindent if exists("*GetTreetopIndent") finish endif function GetTreetopIndent() let pnum = prevnonblank(v:lnum - 1) if pnum == 0 return 0 endif let ind = indent(pnum) let line = getline(pnum) if line =~ '^\s*\%(grammar\|module\|rule\)\>' let ind += shiftwidth() endif let line = getline(v:lnum) if line =~ '^\s*end\>' let ind -= shiftwidth() end retur ind endfunction PK&]=``vim80/indent/zimbu.vimnu[" Vim indent file " Language: Zimbu " Maintainer: Bram Moolenaar " Last Change: 2016 Jan 25 " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal ai nolisp nocin setlocal indentexpr=GetZimbuIndent(v:lnum) setlocal indentkeys=0{,0},!^F,o,O,0=ELSE,0=ELSEIF,0=CASE,0=DEFAULT,0=FINALLY " We impose recommended defaults: no Tabs, 'shiftwidth' = 2 setlocal sw=2 et let b:undo_indent = "setl et< sw< ai< indentkeys< indentexpr=" " Only define the function once. if exists("*GetZimbuIndent") finish endif let s:cpo_save = &cpo set cpo&vim " Come here when loading the script the first time. let s:maxoff = 50 " maximum number of lines to look backwards for () func GetZimbuIndent(lnum) let prevLnum = prevnonblank(a:lnum - 1) if prevLnum == 0 " This is the first non-empty line, use zero indent. return 0 endif " Taken from Python indenting: " If the previous line is inside parenthesis, use the indent of the starting " line. " Trick: use the non-existing "dummy" variable to break out of the loop when " going too far back. call cursor(prevLnum, 1) let parlnum = searchpair('(\|{\|\[', '', ')\|}\|\]', 'nbW', \ "line('.') < " . (prevLnum - s:maxoff) . " ? dummy :" \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" \ . " =~ '\\(Comment\\|String\\|Char\\)$'") if parlnum > 0 let plindent = indent(parlnum) let plnumstart = parlnum else let plindent = indent(prevLnum) let plnumstart = prevLnum endif " When inside parenthesis: If at the first line below the parenthesis add " two 'shiftwidth', otherwise same as previous line. " i = (a " + b " + c) call cursor(a:lnum, 1) let p = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW', \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" \ . " =~ '\\(Comment\\|String\\|Char\\)$'") if p > 0 if p == prevLnum " When the start is inside parenthesis, only indent one 'shiftwidth'. let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW', \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" \ . " =~ '\\(Comment\\|String\\|Char\\)$'") if pp > 0 return indent(prevLnum) + shiftwidth() endif return indent(prevLnum) + shiftwidth() * 2 endif if plnumstart == p return indent(prevLnum) endif return plindent endif let prevline = getline(prevLnum) let thisline = getline(a:lnum) " If this line is not a comment and the previous one is then move the " previous line further back. if thisline !~ '^\s*#' while prevline =~ '^\s*#' let prevLnum = prevnonblank(prevLnum - 1) if prevLnum == 0 " Only comment lines before this, no indent return 0 endif let prevline = getline(prevLnum) let plindent = indent(prevLnum) endwhile endif if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|INTERFACE\|BITS\|MODULE\|SHARED\)\>' let plindent += shiftwidth() endif if thisline =~ '^\s*\(}\|ELSEIF\>\|ELSE\>\|CATCH\|FINALLY\|GENERATE_ELSEIF\>\|GENERATE_ELSE\>\|UNTIL\>\)' let plindent -= shiftwidth() endif if thisline =~ '^\s*\(CASE\>\|DEFAULT\>\)' && prevline !~ '^\s*SWITCH\>' let plindent -= shiftwidth() endif " line up continued comment that started after some code " String something # comment comment " # comment if a:lnum == prevLnum + 1 && thisline =~ '^\s*#' && prevline !~ '^\s*#' let n = match(prevline, '#') if n > 1 let plindent = n endif endif return plindent endfunc let &cpo = s:cpo_save unlet s:cpo_save PK&](ξQ6Q6vim80/indent/r.vimnu[" Vim indent file " Language: R " Author: Jakson Alves de Aquino " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Thu Feb 18, 2016 06:32AM " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentkeys=0{,0},:,!^F,o,O,e setlocal indentexpr=GetRIndent() " Only define the function once. if exists("*GetRIndent") finish endif " Options to make the indentation more similar to Emacs/ESS: if !exists("g:r_indent_align_args") let g:r_indent_align_args = 1 endif if !exists("g:r_indent_ess_comments") let g:r_indent_ess_comments = 0 endif if !exists("g:r_indent_comment_column") let g:r_indent_comment_column = 40 endif if ! exists("g:r_indent_ess_compatible") let g:r_indent_ess_compatible = 0 endif if ! exists("g:r_indent_op_pattern") let g:r_indent_op_pattern = '\(&\||\|+\|-\|\*\|/\|=\|\~\|%\|->\)\s*$' endif function s:RDelete_quotes(line) let i = 0 let j = 0 let line1 = "" let llen = strlen(a:line) while i < llen if a:line[i] == '"' let i += 1 let line1 = line1 . 's' while !(a:line[i] == '"' && ((i > 1 && a:line[i-1] == '\' && a:line[i-2] == '\') || a:line[i-1] != '\')) && i < llen let i += 1 endwhile if a:line[i] == '"' let i += 1 endif else if a:line[i] == "'" let i += 1 let line1 = line1 . 's' while !(a:line[i] == "'" && ((i > 1 && a:line[i-1] == '\' && a:line[i-2] == '\') || a:line[i-1] != '\')) && i < llen let i += 1 endwhile if a:line[i] == "'" let i += 1 endif else if a:line[i] == "`" let i += 1 let line1 = line1 . 's' while a:line[i] != "`" && i < llen let i += 1 endwhile if a:line[i] == "`" let i += 1 endif endif endif endif if i == llen break endif let line1 = line1 . a:line[i] let j += 1 let i += 1 endwhile return line1 endfunction " Convert foo(bar()) int foo() function s:RDelete_parens(line) if s:Get_paren_balance(a:line, "(", ")") != 0 return a:line endif let i = 0 let j = 0 let line1 = "" let llen = strlen(a:line) while i < llen let line1 = line1 . a:line[i] if a:line[i] == '(' let nop = 1 while nop > 0 && i < llen let i += 1 if a:line[i] == ')' let nop -= 1 else if a:line[i] == '(' let nop += 1 endif endif endwhile let line1 = line1 . a:line[i] endif let i += 1 endwhile return line1 endfunction function! s:Get_paren_balance(line, o, c) let line2 = substitute(a:line, a:o, "", "g") let openp = strlen(a:line) - strlen(line2) let line3 = substitute(line2, a:c, "", "g") let closep = strlen(line2) - strlen(line3) return openp - closep endfunction function! s:Get_matching_brace(linenr, o, c, delbrace) let line = SanitizeRLine(getline(a:linenr)) if a:delbrace == 1 let line = substitute(line, '{$', "", "") endif let pb = s:Get_paren_balance(line, a:o, a:c) let i = a:linenr while pb != 0 && i > 1 let i -= 1 let pb += s:Get_paren_balance(SanitizeRLine(getline(i)), a:o, a:c) endwhile return i endfunction " This function is buggy because there 'if's without 'else' " It must be rewritten relying more on indentation function! s:Get_matching_if(linenr, delif) let line = SanitizeRLine(getline(a:linenr)) if a:delif let line = substitute(line, "if", "", "g") endif let elsenr = 0 let i = a:linenr let ifhere = 0 while i > 0 let line2 = substitute(line, '\', "xxx", "g") let elsenr += strlen(line) - strlen(line2) if line =~ '.*\s*if\s*()' || line =~ '.*\s*if\s*()' let elsenr -= 1 if elsenr == 0 let ifhere = i break endif endif let i -= 1 let line = SanitizeRLine(getline(i)) endwhile if ifhere return ifhere else return a:linenr endif endfunction function! s:Get_last_paren_idx(line, o, c, pb) let blc = a:pb let line = substitute(a:line, '\t', s:curtabstop, "g") let theidx = -1 let llen = strlen(line) let idx = 0 while idx < llen if line[idx] == a:o let blc -= 1 if blc == 0 let theidx = idx endif else if line[idx] == a:c let blc += 1 endif endif let idx += 1 endwhile return theidx + 1 endfunction " Get previous relevant line. Search back until getting a line that isn't " comment or blank function s:Get_prev_line(lineno) let lnum = a:lineno - 1 let data = getline( lnum ) while lnum > 0 && (data =~ '^\s*#' || data =~ '^\s*$') let lnum = lnum - 1 let data = getline( lnum ) endwhile return lnum endfunction " This function is also used by r-plugin/common_global.vim " Delete from '#' to the end of the line, unless the '#' is inside a string. function SanitizeRLine(line) let newline = s:RDelete_quotes(a:line) let newline = s:RDelete_parens(newline) let newline = substitute(newline, '#.*', "", "") let newline = substitute(newline, '\s*$', "", "") if &filetype == "rhelp" && newline =~ '^\\method{.*}{.*}(.*' let newline = substitute(newline, '^\\method{\(.*\)}{.*}', '\1', "") endif return newline endfunction function GetRIndent() let clnum = line(".") " current line let cline = getline(clnum) if cline =~ '^\s*#' if g:r_indent_ess_comments == 1 if cline =~ '^\s*###' return 0 endif if cline !~ '^\s*##' return g:r_indent_comment_column endif endif endif let cline = SanitizeRLine(cline) if cline =~ '^\s*}' || cline =~ '^\s*}\s*)$' let indline = s:Get_matching_brace(clnum, '{', '}', 1) if indline > 0 && indline != clnum let iline = SanitizeRLine(getline(indline)) if s:Get_paren_balance(iline, "(", ")") == 0 || iline =~ '(\s*{$' return indent(indline) else let indline = s:Get_matching_brace(indline, '(', ')', 1) return indent(indline) endif endif endif " Find the first non blank line above the current line let lnum = s:Get_prev_line(clnum) " Hit the start of the file, use zero indent. if lnum == 0 return 0 endif let line = SanitizeRLine(getline(lnum)) if &filetype == "rhelp" if cline =~ '^\\dontshow{' || cline =~ '^\\dontrun{' || cline =~ '^\\donttest{' || cline =~ '^\\testonly{' return 0 endif if line =~ '^\\examples{' || line =~ '^\\usage{' || line =~ '^\\dontshow{' || line =~ '^\\dontrun{' || line =~ '^\\donttest{' || line =~ '^\\testonly{' return 0 endif endif if &filetype == "rnoweb" && line =~ "^<<.*>>=" return 0 endif if cline =~ '^\s*{' && s:Get_paren_balance(cline, '{', '}') > 0 if g:r_indent_ess_compatible && line =~ ')$' let nlnum = lnum let nline = line while s:Get_paren_balance(nline, '(', ')') < 0 let nlnum = s:Get_prev_line(nlnum) let nline = SanitizeRLine(getline(nlnum)) . nline endwhile if nline =~ '^\s*function\s*(' && indent(nlnum) == shiftwidth() return 0 endif endif if s:Get_paren_balance(line, "(", ")") == 0 return indent(lnum) endif endif " line is an incomplete command: if line =~ '\<\(if\|while\|for\|function\)\s*()$' || line =~ '\$' return indent(lnum) + shiftwidth() endif " Deal with () and [] let pb = s:Get_paren_balance(line, '(', ')') if line =~ '^\s*{$' || line =~ '(\s*{' || (pb == 0 && (line =~ '{$' || line =~ '(\s*{$')) return indent(lnum) + shiftwidth() endif let s:curtabstop = repeat(' ', &tabstop) if g:r_indent_align_args == 1 if pb > 0 && line =~ '{$' return s:Get_last_paren_idx(line, '(', ')', pb) + shiftwidth() endif let bb = s:Get_paren_balance(line, '[', ']') if pb > 0 if &filetype == "rhelp" let ind = s:Get_last_paren_idx(line, '(', ')', pb) else let ind = s:Get_last_paren_idx(getline(lnum), '(', ')', pb) endif return ind endif if pb < 0 && line =~ '.*[,&|\-\*+<>]$' let lnum = s:Get_prev_line(lnum) while pb < 1 && lnum > 0 let line = SanitizeRLine(getline(lnum)) let line = substitute(line, '\t', s:curtabstop, "g") let ind = strlen(line) while ind > 0 if line[ind] == ')' let pb -= 1 else if line[ind] == '(' let pb += 1 endif endif if pb == 1 return ind + 1 endif let ind -= 1 endwhile let lnum -= 1 endwhile return 0 endif if bb > 0 let ind = s:Get_last_paren_idx(getline(lnum), '[', ']', bb) return ind endif endif let post_block = 0 if line =~ '}$' && s:Get_paren_balance(line, '{', '}') < 0 let lnum = s:Get_matching_brace(lnum, '{', '}', 0) let line = SanitizeRLine(getline(lnum)) if lnum > 0 && line =~ '^\s*{' let lnum = s:Get_prev_line(lnum) let line = SanitizeRLine(getline(lnum)) endif let pb = s:Get_paren_balance(line, '(', ')') let post_block = 1 endif " Indent after operator pattern let olnum = s:Get_prev_line(lnum) let oline = getline(olnum) if olnum > 0 if line =~ g:r_indent_op_pattern && s:Get_paren_balance(line, "(", ")") == 0 if oline =~ g:r_indent_op_pattern && s:Get_paren_balance(line, "(", ")") == 0 return indent(lnum) else return indent(lnum) + shiftwidth() endif else if oline =~ g:r_indent_op_pattern && s:Get_paren_balance(line, "(", ")") == 0 return indent(lnum) - shiftwidth() endif endif endif let post_fun = 0 if pb < 0 && line !~ ')\s*[,&|\-\*+<>]$' let post_fun = 1 while pb < 0 && lnum > 0 let lnum -= 1 let linepiece = SanitizeRLine(getline(lnum)) let pb += s:Get_paren_balance(linepiece, "(", ")") let line = linepiece . line endwhile if line =~ '{$' && post_block == 0 return indent(lnum) + shiftwidth() endif " Now we can do some tests again if cline =~ '^\s*{' return indent(lnum) endif if post_block == 0 let newl = SanitizeRLine(line) if newl =~ '\<\(if\|while\|for\|function\)\s*()$' || newl =~ '\ 0 let lnum -= 1 let linepiece = SanitizeRLine(getline(lnum)) let bb += s:Get_paren_balance(linepiece, "[", "]") let line = linepiece . line endwhile let line = s:RDelete_parens(line) endif let plnum = s:Get_prev_line(lnum) let ppost_else = 0 if plnum > 0 let pline = SanitizeRLine(getline(plnum)) let ppost_block = 0 if pline =~ '}$' let ppost_block = 1 let plnum = s:Get_matching_brace(plnum, '{', '}', 0) let pline = SanitizeRLine(getline(plnum)) if pline =~ '^\s*{$' && plnum > 0 let plnum = s:Get_prev_line(plnum) let pline = SanitizeRLine(getline(plnum)) endif endif if pline =~ 'else$' let ppost_else = 1 let plnum = s:Get_matching_if(plnum, 0) let pline = SanitizeRLine(getline(plnum)) endif if pline =~ '^\s*else\s*if\s*(' let pplnum = s:Get_prev_line(plnum) let ppline = SanitizeRLine(getline(pplnum)) while ppline =~ '^\s*else\s*if\s*(' || ppline =~ '^\s*if\s*()\s*\S$' let plnum = pplnum let pline = ppline let pplnum = s:Get_prev_line(plnum) let ppline = SanitizeRLine(getline(pplnum)) endwhile while ppline =~ '\<\(if\|while\|for\|function\)\s*()$' || ppline =~ '\ 0 let plnum -= 1 let linepiece = SanitizeRLine(getline(plnum)) let ppb += s:Get_paren_balance(linepiece, "(", ")") let pline = linepiece . pline endwhile let pline = s:RDelete_parens(pline) endif endif let ind = indent(lnum) if g:r_indent_align_args == 0 && pb != 0 let ind += pb * shiftwidth() return ind endif if g:r_indent_align_args == 0 && bb != 0 let ind += bb * shiftwidth() return ind endif if plnum > 0 let pind = indent(plnum) else let pind = 0 endif if ind == pind || (ind == (pind + shiftwidth()) && pline =~ '{$' && ppost_else == 0) return ind endif let pline = getline(plnum) let pbb = s:Get_paren_balance(pline, '[', ']') while pind < ind && plnum > 0 && ppb == 0 && pbb == 0 let ind = pind let plnum = s:Get_prev_line(plnum) let pline = getline(plnum) let ppb = s:Get_paren_balance(pline, '(', ')') let pbb = s:Get_paren_balance(pline, '[', ']') while pline =~ '^\s*else' let plnum = s:Get_matching_if(plnum, 1) let pline = getline(plnum) let ppb = s:Get_paren_balance(pline, '(', ')') let pbb = s:Get_paren_balance(pline, '[', ']') endwhile let pind = indent(plnum) if ind == (pind + shiftwidth()) && pline =~ '{$' return ind endif endwhile return ind endfunction " vim: sw=2 PK&] Avim80/indent/context.vimnu[" ConTeXt indent file " Language: ConTeXt typesetting engine " Maintainer: Nicola Vitacolonna " Last Change: 2016 Oct 15 if exists("b:did_indent") finish endif if !get(b:, 'context_metapost', get(g:, 'context_metapost', 1)) finish endif " Load MetaPost indentation script runtime! indent/mp.vim let s:keepcpo= &cpo set cpo&vim setlocal indentexpr=GetConTeXtIndent() let b:undo_indent = "setl indentexpr<" function! GetConTeXtIndent() " Use MetaPost rules inside MetaPost graphic environments if len(synstack(v:lnum, 1)) > 0 && \ synIDattr(synstack(v:lnum, 1)[0], "name") ==# 'contextMPGraphic' return GetMetaPostIndent() endif return -1 endfunc let &cpo = s:keepcpo unlet s:keepcpo " vim:sw=2 PK&]w] vim80/indent/perl6.vimnu[" Vim indent file " Language: Perl 6 " Maintainer: vim-perl " Homepage: http://github.com/vim-perl/vim-perl " Bugs/requests: http://github.com/vim-perl/vim-perl/issues " Last Change: 2017 Jun 13 " Contributors: Andy Lester " Hinrik Örn Sigurðsson " " Adapted from indent/perl.vim by Rafael Garcia-Suarez " Suggestions and improvements by : " Aaron J. Sherman (use syntax for hints) " Artem Chuprina (play nice with folding) " TODO: " This file still relies on stuff from the Perl 5 syntax file, which Perl 6 " does not use. " " Things that are not or not properly indented (yet) : " - Continued statements " print "foo", " "bar"; " print "foo" " if bar(); " - Multiline regular expressions (m//x) " (The following probably needs modifying the perl syntax file) " - qw() lists " - Heredocs with terminators that don't match \I\i* " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 " Is syntax highlighting active ? let b:indent_use_syntax = has("syntax") setlocal indentexpr=GetPerl6Indent() " we reset it first because the Perl 5 indent file might have been loaded due " to a .pl/pm file extension, and indent files don't clean up afterwards setlocal indentkeys& setlocal indentkeys+=0=,0),0],0>,0»,0=or,0=and if !b:indent_use_syntax setlocal indentkeys+=0=EO endif let s:cpo_save = &cpo set cpo-=C function! GetPerl6Indent() " Get the line to be indented let cline = getline(v:lnum) " Indent POD markers to column 0 if cline =~ '^\s*=\L\@!' return 0 endif " Don't reindent coments on first column if cline =~ '^#' return 0 endif " Get current syntax item at the line's first char let csynid = '' if b:indent_use_syntax let csynid = synIDattr(synID(v:lnum,1,0),"name") endif " Don't reindent POD and heredocs if csynid =~ "^p6Pod" return indent(v:lnum) endif " Now get the indent of the previous perl line. " Find a non-blank line above the current line. let lnum = prevnonblank(v:lnum - 1) " Hit the start of the file, use zero indent. if lnum == 0 return 0 endif let line = getline(lnum) let ind = indent(lnum) " Skip heredocs, POD, and comments on 1st column if b:indent_use_syntax let skippin = 2 while skippin let synid = synIDattr(synID(lnum,1,0),"name") if (synid =~ "^p6Pod" || synid =~ "p6Comment") let lnum = prevnonblank(lnum - 1) if lnum == 0 return 0 endif let line = getline(lnum) let ind = indent(lnum) let skippin = 1 else let skippin = 0 endif endwhile endif if line =~ '[<«\[{(]\s*\(#[^)}\]»>]*\)\=$' let ind = ind + shiftwidth() endif if cline =~ '^\s*[)}\]»>]' let ind = ind - shiftwidth() endif " Indent lines that begin with 'or' or 'and' if cline =~ '^\s*\(or\|and\)\>' if line !~ '^\s*\(or\|and\)\>' let ind = ind + shiftwidth() endif elseif line =~ '^\s*\(or\|and\)\>' let ind = ind - shiftwidth() endif return ind endfunction let &cpo = s:cpo_save unlet s:cpo_save " vim:ts=8:sts=4:sw=4:expandtab:ft=vim PK&] )mmvim80/indent/objc.vimnu[" Vim indent file " Language: Objective-C " Maintainer: Kazunobu Kuriyama " Last Change: 2004 May 16 " " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal cindent " Set the function to do the work. setlocal indentexpr=GetObjCIndent() " To make a colon (:) suggest an indentation other than a goto/swich label, setlocal indentkeys-=: setlocal indentkeys+=<:> " Only define the function once. if exists("*GetObjCIndent") finish endif function s:GetWidth(line, regexp) let end = matchend(a:line, a:regexp) let width = 0 let i = 0 while i < end if a:line[i] != "\t" let width = width + 1 else let width = width + &ts - (width % &ts) endif let i = i + 1 endwhile return width endfunction function s:LeadingWhiteSpace(line) let end = strlen(a:line) let width = 0 let i = 0 while i < end let char = a:line[i] if char != " " && char != "\t" break endif if char != "\t" let width = width + 1 else let width = width + &ts - (width % &ts) endif let i = i + 1 endwhile return width endfunction function GetObjCIndent() let theIndent = cindent(v:lnum) let prev_line = getline(v:lnum - 1) let cur_line = getline(v:lnum) if prev_line !~# ":" || cur_line !~# ":" return theIndent endif if prev_line !~# ";" let prev_colon_pos = s:GetWidth(prev_line, ":") let delta = s:GetWidth(cur_line, ":") - s:LeadingWhiteSpace(cur_line) let theIndent = prev_colon_pos - delta endif return theIndent endfunction PK&]܉vim80/indent/go.vimnu[" Vim indent file " Language: Go " Maintainer: David Barnett (https://github.com/google/vim-ft-go) " Last Change: 2017 Jun 13 " " TODO: " - function invocations split across lines " - general line splits (line ends in an operator) if exists('b:did_indent') finish endif let b:did_indent = 1 " C indentation is too far off useful, mainly due to Go's := operator. " Let's just define our own. setlocal nolisp setlocal autoindent setlocal indentexpr=GoIndent(v:lnum) setlocal indentkeys+=<:>,0=},0=) if exists('*GoIndent') finish endif function! GoIndent(lnum) let l:prevlnum = prevnonblank(a:lnum-1) if l:prevlnum == 0 " top of file return 0 endif " grab the previous and current line, stripping comments. let l:prevl = substitute(getline(l:prevlnum), '//.*$', '', '') let l:thisl = substitute(getline(a:lnum), '//.*$', '', '') let l:previ = indent(l:prevlnum) let l:ind = l:previ if l:prevl =~ '[({]\s*$' " previous line opened a block let l:ind += shiftwidth() endif if l:prevl =~# '^\s*\(case .*\|default\):$' " previous line is part of a switch statement let l:ind += shiftwidth() endif " TODO: handle if the previous line is a label. if l:thisl =~ '^\s*[)}]' " this line closed a block let l:ind -= shiftwidth() endif " Colons are tricky. " We want to outdent if it's part of a switch ("case foo:" or "default:"). " We ignore trying to deal with jump labels because (a) they're rare, and " (b) they're hard to disambiguate from a composite literal key. if l:thisl =~# '^\s*\(case .*\|default\):$' let l:ind -= shiftwidth() endif return l:ind endfunction " vim: sw=2 sts=2 et PK&]vDJ]]vim80/indent/tcl.vimnu[" Vim indent file " Language: Tcl " Maintainer: Nikolai Weibull " Latest Revision: 2006-12-20 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetTclIndent() setlocal indentkeys=0{,0},!^F,o,O,0] setlocal nosmartindent if exists("*GetTclIndent") finish endif function s:prevnonblanknoncomment(lnum) let lnum = prevnonblank(a:lnum) while lnum > 0 let line = getline(lnum) if line !~ '^\s*\(#\|$\)' break endif let lnum = prevnonblank(lnum - 1) endwhile return lnum endfunction function s:count_braces(lnum, count_open) let n_open = 0 let n_close = 0 let line = getline(a:lnum) let pattern = '[{}]' let i = match(line, pattern) while i != -1 if synIDattr(synID(a:lnum, i + 1, 0), 'name') !~ 'tcl\%(Comment\|String\)' if line[i] == '{' let n_open += 1 elseif line[i] == '}' if n_open > 0 let n_open -= 1 else let n_close += 1 endif endif endif let i = match(line, pattern, i + 1) endwhile return a:count_open ? n_open : n_close endfunction function GetTclIndent() let line = getline(v:lnum) if line =~ '^\s*\*' return cindent(v:lnum) elseif line =~ '^\s*}' return indent(v:lnum) - shiftwidth() endif let pnum = s:prevnonblanknoncomment(v:lnum - 1) if pnum == 0 return 0 endif let ind = indent(pnum) + s:count_braces(pnum, 1) * shiftwidth() let pline = getline(pnum) if pline =~ '}\s*$' let ind -= (s:count_braces(pnum, 0) - (pline =~ '^\s*}' ? 1 : 0)) * shiftwidth() endif return ind endfunction PK&]L*__vim80/indent/awk.vimnu[" vim: set sw=3 sts=3: " Awk indent script. It can handle multi-line statements and expressions. " It works up to the point where the distinction between correct/incorrect " and personal taste gets fuzzy. Drop me an e-mail for bug reports and " reasonable style suggestions. " " Bugs: " ===== " - Some syntax errors may cause erratic indentation. " - Same for very unusual but syntacticly correct use of { } " - In some cases it's confused by the use of ( and { in strings constants " - This version likes the closing brace of a multiline pattern-action be on " character position 1 before the following pattern-action combination is " formatted " Author: " ======= " Erik Janssen, ejanssen@itmatters.nl " " History: " ======== " 26-04-2002 Got initial version working reasonably well " 29-04-2002 Fixed problems in function headers and max line width " Added support for two-line if's without curly braces " Fixed hang: 2011 Aug 31 " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetAwkIndent() " Mmm, copied from the tcl indent program. Is this okay? setlocal indentkeys-=:,0# " Only define the function once. if exists("*GetAwkIndent") finish endif " This function contains a lot of exit points. It checks for simple cases " first to get out of the function as soon as possible, thereby reducing the " number of possibilities later on in the difficult parts function! GetAwkIndent() " Find previous line and get it's indentation let prev_lineno = s:Get_prev_line( v:lnum ) if prev_lineno == 0 return 0 endif let prev_data = getline( prev_lineno ) let ind = indent( prev_lineno ) " Increase indent if the previous line contains an opening brace. Search " for this brace the hard way to prevent errors if the previous line is a " 'pattern { action }' (simple check match on /{/ increases the indent then) if s:Get_brace_balance( prev_data, '{', '}' ) > 0 return ind + shiftwidth() endif let brace_balance = s:Get_brace_balance( prev_data, '(', ')' ) " If prev line has positive brace_balance and starts with a word (keyword " or function name), align the current line on the first '(' of the prev " line if brace_balance > 0 && s:Starts_with_word( prev_data ) return s:Safe_indent( ind, s:First_word_len(prev_data), getline(v:lnum)) endif " If this line starts with an open brace bail out now before the line " continuation checks. if getline( v:lnum ) =~ '^\s*{' return ind endif " If prev line seems to be part of multiline statement: " 1. Prev line is first line of a multiline statement " -> attempt to indent on first ' ' or '(' of prev line, just like we " indented the positive brace balance case above " 2. Prev line is not first line of a multiline statement " -> copy indent of prev line let continue_mode = s:Seems_continuing( prev_data ) if continue_mode > 0 if s:Seems_continuing( getline(s:Get_prev_line( prev_lineno )) ) " Case 2 return ind else " Case 1 if continue_mode == 1 " Need continuation due to comma, backslash, etc return s:Safe_indent( ind, s:First_word_len(prev_data), getline(v:lnum)) else " if/for/while without '{' return ind + shiftwidth() endif endif endif " If the previous line doesn't need continuation on the current line we are " on the start of a new statement. We have to make sure we align with the " previous statement instead of just the previous line. This is a bit " complicated because the previous statement might be multi-line. " " The start of a multiline statement can be found by: " " 1 If the previous line contains closing braces and has negative brace " balance, search backwards until cumulative brace balance becomes zero, " take indent of that line " 2 If the line before the previous needs continuation search backward " until that's not the case anymore. Take indent of one line down. " Case 1 if prev_data =~ ')' && brace_balance < 0 while brace_balance != 0 && prev_lineno > 0 let prev_lineno = s:Get_prev_line( prev_lineno ) let prev_data = getline( prev_lineno ) let brace_balance=brace_balance+s:Get_brace_balance(prev_data,'(',')' ) endwhile let ind = indent( prev_lineno ) else " Case 2 if s:Seems_continuing( getline( prev_lineno - 1 ) ) let prev_lineno = prev_lineno - 2 let prev_data = getline( prev_lineno ) while prev_lineno > 0 && (s:Seems_continuing( prev_data ) > 0) let prev_lineno = s:Get_prev_line( prev_lineno ) let prev_data = getline( prev_lineno ) endwhile let ind = indent( prev_lineno + 1 ) endif endif " Decrease indent if this line contains a '}'. if getline(v:lnum) =~ '^\s*}' let ind = ind - shiftwidth() endif return ind endfunction " Find the open and close braces in this line and return how many more open- " than close braces there are. It's also used to determine cumulative balance " across multiple lines. function! s:Get_brace_balance( line, b_open, b_close ) let line2 = substitute( a:line, a:b_open, "", "g" ) let openb = strlen( a:line ) - strlen( line2 ) let line3 = substitute( line2, a:b_close, "", "g" ) let closeb = strlen( line2 ) - strlen( line3 ) return openb - closeb endfunction " Find out whether the line starts with a word (i.e. keyword or function " call). Might need enhancements here. function! s:Starts_with_word( line ) if a:line =~ '^\s*[a-zA-Z_0-9]\+\s*(' return 1 endif return 0 endfunction " Find the length of the first word in a line. This is used to be able to " align a line relative to the 'print ' or 'if (' on the previous line in case " such a statement spans multiple lines. " Precondition: only to be used on lines where 'Starts_with_word' returns 1. function! s:First_word_len( line ) let white_end = matchend( a:line, '^\s*' ) if match( a:line, '^\s*func' ) != -1 let word_end = matchend( a:line, '[a-z]\+\s\+[a-zA-Z_0-9]\+[ (]*' ) else let word_end = matchend( a:line, '[a-zA-Z_0-9]\+[ (]*' ) endif return word_end - white_end endfunction " Determine if 'line' completes a statement or is continued on the next line. " This one is far from complete and accepts illegal code. Not important for " indenting, however. function! s:Seems_continuing( line ) " Unfinished lines if a:line =~ '\(--\|++\)\s*$' return 0 endif if a:line =~ '[\\,\|\&\+\-\*\%\^]\s*$' return 1 endif " if/for/while (cond) eol if a:line =~ '^\s*\(if\|while\|for\)\s*(.*)\s*$' || a:line =~ '^\s*else\s*' return 2 endif return 0 endfunction " Get previous relevant line. Search back until a line is that is no " comment or blank and return the line number function! s:Get_prev_line( lineno ) let lnum = a:lineno - 1 let data = getline( lnum ) while lnum > 0 && (data =~ '^\s*#' || data =~ '^\s*$') let lnum = lnum - 1 let data = getline( lnum ) endwhile return lnum endfunction " This function checks whether an indented line exceeds a maximum linewidth " (hardcoded 80). If so and it is possible to stay within 80 positions (or " limit num of characters beyond linewidth) by decreasing the indent (keeping " it > base_indent), do so. function! s:Safe_indent( base, wordlen, this_line ) let line_base = matchend( a:this_line, '^\s*' ) let line_len = strlen( a:this_line ) - line_base let indent = a:base if (indent + a:wordlen + line_len) > 80 " Simple implementation good enough for the time being let indent = indent + 3 endif return indent + a:wordlen endfunction PK&]Rvim80/indent/bst.vimnu[" Vim indent file " Language: bst " Author: Tim Pope " $Id: bst.vim,v 1.1 2007/05/05 18:11:12 vimboss Exp $ if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal expandtab setlocal indentexpr=GetBstIndent(v:lnum) "setlocal smartindent setlocal cinkeys& setlocal cinkeys-=0# setlocal indentkeys& "setlocal indentkeys+=0% " Only define the function once. if exists("*GetBstIndent") finish endif function! s:prevgood(lnum) " Find a non-blank line above the current line. " Skip over comments. let lnum = a:lnum while lnum > 0 let lnum = prevnonblank(lnum - 1) if getline(lnum) !~ '^\s*%.*$' break endif endwhile return lnum endfunction function! s:strip(lnum) let line = getline(a:lnum) let line = substitute(line,'"[^"]*"','""','g') let line = substitute(line,'%.*','','') let line = substitute(line,'^\s\+','','') return line endfunction function! s:count(string,char) let str = substitute(a:string,'[^'.a:char.']','','g') return strlen(str) endfunction function! GetBstIndent(lnum) abort if a:lnum == 1 return 0 endif let lnum = s:prevgood(a:lnum) if lnum <= 0 return indent(a:lnum - 1) endif let line = s:strip(lnum) let cline = s:strip(a:lnum) if cline =~ '^}' && exists("b:current_syntax") call cursor(a:lnum,indent(a:lnum)) if searchpair('{','','}','bW',"synIDattr(synID(line('.'),col('.'),1),'name') =~? 'comment\\|string'") if col('.')+1 == col('$') return indent('.') else return virtcol('.')-1 endif endif endif let fakeline = substitute(line,'^}','','').matchstr(cline,'^}') let ind = indent(lnum) let ind = ind + shiftwidth() * s:count(line,'{') let ind = ind - shiftwidth() * s:count(fakeline,'}') return ind endfunction PK&]aavim80/indent/lisp.vimnu[" Vim indent file " Language: Lisp " Maintainer: Sergey Khorev " URL: http://sites.google.com/site/khorser/opensource/vim " Last Change: 2012 Jan 10 " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal ai nosi let b:undo_indent = "setl ai< si<" PK&]xvim80/indent/j.vimnu[" Vim indent file " Language: J " Maintainer: David Bürgin <676c7473@gmail.com> " URL: https://github.com/glts/vim-j " Last Change: 2015-01-11 if exists('b:did_indent') finish endif let b:did_indent = 1 setlocal indentexpr=GetJIndent() setlocal indentkeys-=0{,0},:,0# setlocal indentkeys+=0),0<:>,=case.,=catch.,=catchd.,=catcht.,=do.,=else.,=elseif.,=end.,=fcase. let b:undo_indent = 'setlocal indentkeys< indentexpr<' if exists('*GetJIndent') finish endif " If g:j_indent_definitions is true, the bodies of explicit definitions of " adverbs, conjunctions, and verbs will be indented. Default is false (0). if !exists('g:j_indent_definitions') let g:j_indent_definitions = 0 endif function GetJIndent() abort let l:prevlnum = prevnonblank(v:lnum - 1) if l:prevlnum == 0 return 0 endif let l:indent = indent(l:prevlnum) let l:prevline = getline(l:prevlnum) if l:prevline =~# '^\s*\%(case\|catch[dt]\=\|do\|else\%(if\)\=\|fcase\|for\%(_\a\k*\)\=\|if\|select\|try\|whil\%(e\|st\)\)\.\%(\%(\' || l:prevline =~# '^\s*:\s*$') " Increase indentation in explicit definitions of adverbs, conjunctions, " and verbs let l:indent += shiftwidth() endif " Decrease indentation in lines that start with either control words that " continue or end a block, or the special items ")" and ":" if getline(v:lnum) =~# '^\s*\%()\|:\|\%(case\|catch[dt]\=\|do\|else\%(if\)\=\|end\|fcase\)\.\)' let l:indent -= shiftwidth() endif return l:indent endfunction PK&]u NNvim80/indent/sml.vimnu[" Vim indent file " Language: SML " Maintainer: Saikat Guha " Hubert Chao " Original OCaml Version: " Jean-Francois Yuen " Mike Leary " Markus Mottl " OCaml URL: http://www.oefai.at/~markus/vim/indent/ocaml.vim " Last Change: 2003 Jan 04 - Adapted to SML " 2002 Nov 06 - Some fixes (JY) " 2002 Oct 28 - Fixed bug with indentation of ']' (MM) " 2002 Oct 22 - Major rewrite (JY) " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal expandtab setlocal indentexpr=GetSMLIndent() setlocal indentkeys+=0=and,0=else,0=end,0=handle,0=if,0=in,0=let,0=then,0=val,0=fun,0=\|,0=*),0) setlocal nolisp setlocal nosmartindent setlocal textwidth=80 setlocal shiftwidth=2 " Comment formatting if (has("comments")) set comments=sr:(*,mb:*,ex:*) set fo=cqort endif " Only define the function once. "if exists("*GetSMLIndent") "finish "endif " Define some patterns: let s:beflet = '^\s*\(initializer\|method\|try\)\|\(\<\(begin\|do\|else\|in\|then\|try\)\|->\|;\)\s*$' let s:letpat = '^\s*\(let\|type\|module\|class\|open\|exception\|val\|include\|external\)\>' let s:letlim = '\(\<\(sig\|struct\)\|;;\)\s*$' let s:lim = '^\s*\(exception\|external\|include\|let\|module\|open\|type\|val\)\>' let s:module = '\<\%(let\|sig\|struct\)\>' let s:obj = '^\s*\(constraint\|inherit\|initializer\|method\|val\)\>\|\<\(object\|object\s*(.*)\)\s*$' let s:type = '^\s*\%(let\|type\)\>.*=' let s:val = '^\s*\(val\|external\)\>.*:' " Skipping pattern, for comments function! s:SkipPattern(lnum, pat) let def = prevnonblank(a:lnum - 1) while def > 0 && getline(def) =~ a:pat let def = prevnonblank(def - 1) endwhile return def endfunction " Indent for ';;' to match multiple 'let' function! s:GetInd(lnum, pat, lim) let llet = search(a:pat, 'bW') let old = indent(a:lnum) while llet > 0 let old = indent(llet) let nb = s:SkipPattern(llet, '^\s*(\*.*\*)\s*$') if getline(nb) =~ a:lim return old endif let llet = search(a:pat, 'bW') endwhile return old endfunction " Indent pairs function! s:FindPair(pstart, pmid, pend) call search(a:pend, 'bW') " return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')) let lno = searchpair(a:pstart, a:pmid, a:pend, 'bW', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"') if lno == -1 return indent(lno) else return col(".") - 1 endif endfunction function! s:FindLet(pstart, pmid, pend) call search(a:pend, 'bW') " return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')) let lno = searchpair(a:pstart, a:pmid, a:pend, 'bW', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"') let moduleLine = getline(lno) if lno == -1 || moduleLine =~ '^\s*\(fun\|structure\|signature\)\>' return indent(lno) else return col(".") - 1 endif endfunction " Indent 'let' "function! s:FindLet(pstart, pmid, pend) " call search(a:pend, 'bW') " return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment" || getline(".") =~ "^\\s*let\\>.*=.*\\.*=\\s*$\\|" . s:beflet')) "endfunction function! GetSMLIndent() " Find a non-blank line above the current line. let lnum = prevnonblank(v:lnum - 1) " At the start of the file use zero indent. if lnum == 0 return 0 endif let ind = indent(lnum) let lline = getline(lnum) " Return double 'shiftwidth' after lines matching: if lline =~ '^\s*|.*=>\s*$' return ind + 2 *shiftwidth() elseif lline =~ '^\s*val\>.*=\s*$' return ind + shiftwidth() endif let line = getline(v:lnum) " Indent lines starting with 'end' to matching module if line =~ '^\s*end\>' return s:FindLet(s:module, '', '\') " Match 'else' with 'if' elseif line =~ '^\s*else\>' if lline !~ '^\s*\(if\|else\|then\)\>' return s:FindPair('\', '', '\') else return ind endif " Match 'then' with 'if' elseif line =~ '^\s*then\>' if lline !~ '^\s*\(if\|else\|then\)\>' return s:FindPair('\', '', '\') else return ind endif " Indent if current line begins with ']' elseif line =~ '^\s*\]' return s:FindPair('\[','','\]') " Indent current line starting with 'in' to last matching 'let' elseif line =~ '^\s*in\>' let ind = s:FindLet('\','','\') " Indent from last matching module if line matches: elseif line =~ '^\s*\(fun\|val\|open\|structure\|and\|datatype\|type\|exception\)\>' cursor(lnum,1) let lastModule = indent(searchpair(s:module, '', '\', 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')) if lastModule == -1 return 0 else return lastModule + shiftwidth() endif " Indent lines starting with '|' from matching 'case', 'handle' elseif line =~ '^\s*|' " cursor(lnum,1) let lastSwitch = search('\<\(case\|handle\|fun\|datatype\)\>','bW') let switchLine = getline(lastSwitch) let switchLineIndent = indent(lastSwitch) if lline =~ '^\s*|' return ind endif if switchLine =~ '\' return col(".") + 2 elseif switchLine =~ '\' return switchLineIndent + shiftwidth() elseif switchLine =~ '\' call search('=') return col(".") - 1 else return switchLineIndent + 2 endif " Indent if last line ends with 'sig', 'struct', 'let', 'then', 'else', " 'in' elseif lline =~ '\<\(sig\|struct\|let\|in\|then\|else\)\s*$' let ind = ind + shiftwidth() " Indent if last line ends with 'of', align from 'case' elseif lline =~ '\<\(of\)\s*$' call search('\',"bW") let ind = col(".")+4 " Indent if current line starts with 'of' elseif line =~ '^\s*of\>' call search('\',"bW") let ind = col(".")+1 " Indent if last line starts with 'fun', 'case', 'fn' elseif lline =~ '^\s*\(fun\|fn\|case\)\>' let ind = ind + shiftwidth() endif " Don't indent 'let' if last line started with 'fun', 'fn' if line =~ '^\s*let\>' if lline =~ '^\s*\(fun\|fn\)' let ind = ind - shiftwidth() endif endif return ind endfunction " vim:sw=2 PK&]轮C{ { vim80/indent/cmake.vimnu[" Vim indent file " Language: CMake (ft=cmake) " Author: Andy Cedilnik " Maintainer: Dimitri Merejkowsky " Former Maintainer: Karthik Krishnan " Last Change: 2017 Sep 24 " " Licence: The CMake license applies to this file. See " https://cmake.org/licensing " This implies that distribution with Vim is allowed if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=CMakeGetIndent(v:lnum) setlocal indentkeys+==ENDIF(,ENDFOREACH(,ENDMACRO(,ELSE(,ELSEIF(,ENDWHILE( " Only define the function once. if exists("*CMakeGetIndent") finish endif let s:keepcpo= &cpo set cpo&vim fun! CMakeGetIndent(lnum) let this_line = getline(a:lnum) " Find a non-blank line above the current line. let lnum = a:lnum let lnum = prevnonblank(lnum - 1) let previous_line = getline(lnum) " Hit the start of the file, use zero indent. if lnum == 0 return 0 endif let ind = indent(lnum) let or = '\|' " Regular expressions used by line indentation function. let cmake_regex_comment = '#.*' let cmake_regex_identifier = '[A-Za-z][A-Za-z0-9_]*' let cmake_regex_quoted = '"\([^"\\]\|\\.\)*"' let cmake_regex_arguments = '\(' . cmake_regex_quoted . \ or . '\$(' . cmake_regex_identifier . ')' . \ or . '[^()\\#"]' . or . '\\.' . '\)*' let cmake_indent_comment_line = '^\s*' . cmake_regex_comment let cmake_indent_blank_regex = '^\s*$' let cmake_indent_open_regex = '^\s*' . cmake_regex_identifier . \ '\s*(' . cmake_regex_arguments . \ '\(' . cmake_regex_comment . '\)\?$' let cmake_indent_close_regex = '^' . cmake_regex_arguments . \ ')\s*' . \ '\(' . cmake_regex_comment . '\)\?$' let cmake_indent_begin_regex = '^\s*\(IF\|MACRO\|FOREACH\|ELSE\|ELSEIF\|WHILE\|FUNCTION\)\s*(' let cmake_indent_end_regex = '^\s*\(ENDIF\|ENDFOREACH\|ENDMACRO\|ELSE\|ELSEIF\|ENDWHILE\|ENDFUNCTION\)\s*(' " Add if previous_line =~? cmake_indent_comment_line " Handle comments let ind = ind else if previous_line =~? cmake_indent_begin_regex let ind = ind + shiftwidth() endif if previous_line =~? cmake_indent_open_regex let ind = ind + shiftwidth() endif endif " Subtract if this_line =~? cmake_indent_end_regex let ind = ind - shiftwidth() endif if previous_line =~? cmake_indent_close_regex let ind = ind - shiftwidth() endif return ind endfun let &cpo = s:keepcpo unlet s:keepcpo PK&]=vim80/indent/changelog.vimnu[" Vim indent file " Language: generic Changelog file " Maintainer: noone " Last Change: 2005 Mar 29 " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal ai let b:undo_indent = "setl ai<" PK&]-#4))vim80/indent/vb.vimnu[" Vim indent file " Language: VisualBasic (ft=vb) / Basic (ft=basic) / SaxBasic (ft=vb) " Author: Johannes Zellner " Last Change: Fri, 18 Jun 2004 07:22:42 CEST " Small update 2010 Jul 28 by Maxim Kim if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal autoindent setlocal indentexpr=VbGetIndent(v:lnum) setlocal indentkeys& setlocal indentkeys+==~else,=~elseif,=~end,=~wend,=~case,=~next,=~select,=~loop,<:> let b:undo_indent = "set ai< indentexpr< indentkeys<" " Only define the function once. if exists("*VbGetIndent") finish endif fun! VbGetIndent(lnum) " labels and preprocessor get zero indent immediately let this_line = getline(a:lnum) let LABELS_OR_PREPROC = '^\s*\(\<\k\+\>:\s*$\|#.*\)' if this_line =~? LABELS_OR_PREPROC return 0 endif " Find a non-blank line above the current line. " Skip over labels and preprocessor directives. let lnum = a:lnum while lnum > 0 let lnum = prevnonblank(lnum - 1) let previous_line = getline(lnum) if previous_line !~? LABELS_OR_PREPROC break endif endwhile " Hit the start of the file, use zero indent. if lnum == 0 return 0 endif let ind = indent(lnum) " Add if previous_line =~? '^\s*\<\(begin\|\%(\%(private\|public\|friend\)\s\+\)\=\%(function\|sub\|property\)\|select\|case\|default\|if\|else\|elseif\|do\|for\|while\|enum\|with\)\>' let ind = ind + shiftwidth() endif " Subtract if this_line =~? '^\s*\\s\+\' if previous_line !~? '^\s*\' let ind = ind - 2 * shiftwidth() else " this case is for an empty 'select' -- 'end select' " (w/o any case statements) like: " " select case readwrite " end select let ind = ind - shiftwidth() endif elseif this_line =~? '^\s*\<\(end\|else\|elseif\|until\|loop\|next\|wend\)\>' let ind = ind - shiftwidth() elseif this_line =~? '^\s*\<\(case\|default\)\>' if previous_line !~? '^\s*\' let ind = ind - shiftwidth() endif endif return ind endfun " vim:sw=4 PK&]=Bvim80/indent/sas.vimnu[" Vim indent file " Language: SAS " Maintainer: Zhen-Huan Hu " Version: 3.0.1 " Last Change: Mar 13, 2017 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetSASIndent() setlocal indentkeys+=;,=~data,=~proc,=~macro if exists("*GetSASIndent") finish endif let s:cpo_save = &cpo set cpo&vim " Regex that captures the start of a data/proc section let s:section_str = '\v%(^|;)\s*%(data|proc)>' " Regex that captures the end of a run-processing section let s:section_run = '\v%(^|;)\s*run\s*;' " Regex that captures the end of a data/proc section let s:section_end = '\v%(^|;)\s*%(quit|enddata)\s*;' " Regex that captures the start of a control block (anything inside a section) let s:block_str = '\v<%(do>%([^;]+<%(to|over)>[^;]+)=|%(define|layout|method|select)>[^;]+|begingraph)\s*;' " Regex that captures the end of a control block (anything inside a section) let s:block_end = '\v<%(end|endlayout|endgraph)\s*;' " Regex that captures the start of a macro let s:macro_str = '\v%(^|;)\s*\%macro>' " Regex that captures the end of a macro let s:macro_end = '\v%(^|;)\s*\%mend\s*;' " Regex that defines the end of the program let s:program_end = '\v%(^|;)\s*endsas\s*;' " List of procs supporting run-processing let s:run_processing_procs = [ \ 'catalog', 'chart', 'datasets', 'document', 'ds2', 'plot', 'sql', \ 'gareabar', 'gbarline', 'gchart', 'gkpi', 'gmap', 'gplot', 'gradar', 'greplay', 'gslide', 'gtile', \ 'anova', 'arima', 'catmod', 'factex', 'glm', 'model', 'optex', 'plan', 'reg', \ 'iml', \ ] " Find the line number of previous keyword defined by the regex function! s:PrevMatch(lnum, regex) let prev_lnum = prevnonblank(a:lnum - 1) while prev_lnum > 0 let prev_line = getline(prev_lnum) if prev_line =~ a:regex break else let prev_lnum = prevnonblank(prev_lnum - 1) endif endwhile return prev_lnum endfunction " Main function function! GetSASIndent() let prev_lnum = prevnonblank(v:lnum - 1) if prev_lnum ==# 0 " Leave the indentation of the first line unchanged return indent(1) else let prev_line = getline(prev_lnum) " Previous non-blank line contains the start of a macro/section/block " while not the end of a macro/section/block (at the same line) if (prev_line =~ s:section_str && prev_line !~ s:section_run && prev_line !~ s:section_end) || \ (prev_line =~ s:block_str && prev_line !~ s:block_end) || \ (prev_line =~ s:macro_str && prev_line !~ s:macro_end) let ind = indent(prev_lnum) + &sts elseif prev_line =~ s:section_run && prev_line !~ s:section_end let prev_section_str_lnum = s:PrevMatch(v:lnum, s:section_str) let prev_section_end_lnum = max([ \ s:PrevMatch(v:lnum, s:section_end), \ s:PrevMatch(v:lnum, s:macro_end ), \ s:PrevMatch(v:lnum, s:program_end)]) " Check if the section supports run-processing if prev_section_end_lnum < prev_section_str_lnum && \ getline(prev_section_str_lnum) =~ '\v%(^|;)\s*proc\s+%(' . \ join(s:run_processing_procs, '|') . ')>' let ind = indent(prev_lnum) + &sts else let ind = indent(prev_lnum) endif else let ind = indent(prev_lnum) endif endif " Re-adjustments based on the inputs of the current line let curr_line = getline(v:lnum) if curr_line =~ s:program_end " End of the program " Same indentation as the first non-blank line return indent(nextnonblank(1)) elseif curr_line =~ s:macro_end " Current line is the end of a macro " Match the indentation of the start of the macro return indent(s:PrevMatch(v:lnum, s:macro_str)) elseif curr_line =~ s:block_end && curr_line !~ s:block_str " Re-adjust if current line is the end of a block " while not the beginning of a block (at the same line) " Returning the indent of previous block start directly " would not work due to nesting let ind = ind - &sts elseif curr_line =~ s:section_str || curr_line =~ s:section_run || curr_line =~ s:section_end " Re-adjust if current line is the start/end of a section " since the end of a section could be inexplicit let prev_section_str_lnum = s:PrevMatch(v:lnum, s:section_str) " Check if the previous section supports run-processing if getline(prev_section_str_lnum) =~ '\v%(^|;)\s*proc\s+%(' . \ join(s:run_processing_procs, '|') . ')>' let prev_section_end_lnum = max([ \ s:PrevMatch(v:lnum, s:section_end), \ s:PrevMatch(v:lnum, s:macro_end ), \ s:PrevMatch(v:lnum, s:program_end)]) else let prev_section_end_lnum = max([ \ s:PrevMatch(v:lnum, s:section_end), \ s:PrevMatch(v:lnum, s:section_run), \ s:PrevMatch(v:lnum, s:macro_end ), \ s:PrevMatch(v:lnum, s:program_end)]) endif if prev_section_end_lnum < prev_section_str_lnum let ind = ind - &sts endif endif return ind endfunction let &cpo = s:cpo_save unlet s:cpo_save PK&]|1vim80/indent/xinetd.vimnu[" Vim indent file " Language: xinetd.conf(5) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-12-20 if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal indentexpr=GetXinetdIndent() setlocal indentkeys=0{,0},!^F,o,O setlocal nosmartindent if exists("*GetXinetdIndent") finish endif let s:keepcpo= &cpo set cpo&vim function s:count_braces(lnum, count_open) let n_open = 0 let n_close = 0 let line = getline(a:lnum) let pattern = '[{}]' let i = match(line, pattern) while i != -1 if synIDattr(synID(a:lnum, i + 1, 0), 'name') !~ 'ld\%(Comment\|String\)' if line[i] == '{' let n_open += 1 elseif line[i] == '}' if n_open > 0 let n_open -= 1 else let n_close += 1 endif endif endif let i = match(line, pattern, i + 1) endwhile return a:count_open ? n_open : n_close endfunction function GetXinetdIndent() let pnum = prevnonblank(v:lnum - 1) if pnum == 0 return 0 endif return indent(pnum) + s:count_braces(pnum, 1) * shiftwidth() \ - s:count_braces(v:lnum, 0) * shiftwidth() endfunction let &cpo = s:keepcpo unlet s:keepcpo PK&] Ѽ  vim80/indent/rhelp.vimnu[" Vim indent file " Language: R Documentation (Help), *.Rd " Author: Jakson Alves de Aquino " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Tue Apr 07, 2015 04:38PM " Only load this indent file when no other was loaded. if exists("b:did_indent") finish endif runtime indent/r.vim let s:RIndent = function(substitute(&indentexpr, "()", "", "")) let b:did_indent = 1 setlocal noautoindent setlocal nocindent setlocal nosmartindent setlocal nolisp setlocal indentkeys=0{,0},:,!^F,o,O,e setlocal indentexpr=GetCorrectRHelpIndent() " Only define the functions once. if exists("*GetRHelpIndent") finish endif function s:SanitizeRHelpLine(line) let newline = substitute(a:line, '\\\\', "x", "g") let newline = substitute(newline, '\\{', "x", "g") let newline = substitute(newline, '\\}', "x", "g") let newline = substitute(newline, '\\%', "x", "g") let newline = substitute(newline, '%.*', "", "") let newline = substitute(newline, '\s*$', "", "") return newline endfunction function GetRHelpIndent() let clnum = line(".") " current line if clnum == 1 return 0 endif let cline = getline(clnum) if cline =~ '^\s*}\s*$' let i = clnum let bb = -1 while bb != 0 && i > 1 let i -= 1 let line = s:SanitizeRHelpLine(getline(i)) let line2 = substitute(line, "{", "", "g") let openb = strlen(line) - strlen(line2) let line3 = substitute(line2, "}", "", "g") let closeb = strlen(line2) - strlen(line3) let bb += openb - closeb endwhile return indent(i) endif if cline =~ '^\s*#ifdef\>' || cline =~ '^\s*#endif\>' return 0 endif let lnum = clnum - 1 let line = getline(lnum) if line =~ '^\s*#ifdef\>' || line =~ '^\s*#endif\>' let lnum -= 1 let line = getline(lnum) endif while lnum > 1 && (line =~ '^\s*$' || line =~ '^#ifdef' || line =~ '^#endif') let lnum -= 1 let line = getline(lnum) endwhile if lnum == 1 return 0 endif let line = s:SanitizeRHelpLine(line) let line2 = substitute(line, "{", "", "g") let openb = strlen(line) - strlen(line2) let line3 = substitute(line2, "}", "", "g") let closeb = strlen(line2) - strlen(line3) let bb = openb - closeb let ind = indent(lnum) + (bb * shiftwidth()) if line =~ '^\s*}\s*$' let ind = indent(lnum) endif if ind < 0 return 0 endif return ind endfunction function GetCorrectRHelpIndent() let lastsection = search('^\\[a-z]*{', "bncW") let secname = getline(lastsection) if secname =~ '^\\usage{' || secname =~ '^\\examples{' || secname =~ '^\\dontshow{' || secname =~ '^\\dontrun{' || secname =~ '^\\donttest{' || secname =~ '^\\testonly{' || secname =~ '^\\method{.*}{.*}(' return s:RIndent() else return GetRHelpIndent() endif endfunction " vim: sw=2 PK&]3 vim80/indent/nsis.vimnu[" Vim indent file " Language: NSIS script " Maintainer: Ken Takata " URL: https://github.com/k-takata/vim-nsis " Last Change: 2018-01-21 " Filenames: *.nsi " License: VIM License if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal nosmartindent setlocal noautoindent setlocal indentexpr=GetNsisIndent(v:lnum) setlocal indentkeys=!^F,o,O setlocal indentkeys+==~${Else,=~${EndIf,=~${EndUnless,=~${AndIf,=~${AndUnless,=~${OrIf,=~${OrUnless,=~${Case,=~${Default,=~${EndSelect,=~${EndSwith,=~${Loop,=~${Next,=~${MementoSectionEnd,=~FunctionEnd,=~SectionEnd,=~SectionGroupEnd,=~PageExEnd,0=~!macroend,0=~!if,0=~!else,0=~!endif if exists("*GetNsisIndent") finish endif function! GetNsisIndent(lnum) " If this line is explicitly joined: If the previous line was also joined, " line it up with that one, otherwise add two 'shiftwidth' if getline(a:lnum - 1) =~ '\\$' if a:lnum > 1 && getline(a:lnum - 2) =~ '\\$' return indent(a:lnum - 1) endif return indent(a:lnum - 1) + shiftwidth() * 2 endif " Grab the current line, stripping comments. let l:thisl = substitute(getline(a:lnum), '[;#].*$', '', '') " Check if this line is a conditional preprocessor line. let l:preproc = l:thisl =~? '^\s*!\%(if\|else\|endif\)' " Grab the previous line, stripping comments. " Skip preprocessor lines and continued lines. let l:prevlnum = a:lnum while 1 let l:prevlnum = prevnonblank(l:prevlnum - 1) if l:prevlnum == 0 " top of file return 0 endif let l:prevl = substitute(getline(l:prevlnum), '[;#].*$', '', '') let l:prevpreproc = l:prevl =~? '^\s*!\%(if\|else\|endif\)' if l:preproc == l:prevpreproc && getline(l:prevlnum - 1) !~? '\\$' break endif endwhile let l:previ = indent(l:prevlnum) let l:ind = l:previ if l:preproc " conditional preprocessor if l:prevl =~? '^\s*!\%(if\%(\%(macro\)\?n\?def\)\?\|else\)\>' let l:ind += shiftwidth() endif if l:thisl =~? '^\s*!\%(else\|endif\)\?\>' let l:ind -= shiftwidth() endif return l:ind endif if l:prevl =~? '^\s*\%(\${\%(If\|IfNot\|Unless\|ElseIf\|ElseIfNot\|ElseUnless\|Else\|AndIf\|AndIfNot\|AndUnless\|OrIf\|OrIfNot\|OrUnless\|Select\|Case\|Case[2-5]\|CaseElse\|Default\|Switch\|Do\|DoWhile\|DoUntil\|For\|ForEach\|MementoSection\)}\|Function\>\|Section\>\|SectionGroup\|PageEx\>\|!macro\>\)' " previous line opened a block let l:ind += shiftwidth() endif if l:thisl =~? '^\s*\%(\${\%(ElseIf\|ElseIfNot\|ElseUnless\|Else\|EndIf\|EndUnless\|AndIf\|AndIfNot\|AndUnless\|OrIf\|OrIfNot\|OrUnless\|Loop\|LoopWhile\|LoopUntil\|Next\|MementoSectionEnd\)\>}\?\|FunctionEnd\>\|SectionEnd\>\|SectionGroupEnd\|PageExEnd\>\|!macroend\>\)' " this line closed a block let l:ind -= shiftwidth() elseif l:thisl =~? '^\s*\${\%(Case\|Case[2-5]\|CaseElse\|Default\)\>}\?' if l:prevl !~? '^\s*\${\%(Select\|Switch\)}' let l:ind -= shiftwidth() endif elseif l:thisl =~? '^\s*\${\%(EndSelect\|EndSwitch\)\>}\?' " this line closed a block if l:prevl =~? '^\s*\${\%(Select\|Switch\)}' let l:ind -= shiftwidth() else let l:ind -= shiftwidth() * 2 endif endif return l:ind endfunction " vim: ts=8 sw=2 sts=2 PK&]~vim80/indent/automake.vimnu[" Vim indent file " Language: automake " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:did_indent") finish endif " same as makefile indenting for now. runtime! indent/make.vim PK&]9mvim80/indent/zsh.vimnu[" Vim indent file " Language: Zsh shell script " Maintainer: Christian Brabandt " Previous Maintainer: Nikolai Weibull " Latest Revision: 2015-05-29 " License: Vim (see :h license) " Repository: https://github.com/chrisbra/vim-zsh if exists("b:did_indent") finish endif " Same as sh indenting for now. runtime! indent/sh.vim PK&]) " Last Change: 2017 Jun 13 if exists('b:did_indent') finish endif set indentexpr= if exists('b:liquid_subtype') exe 'runtime! indent/'.b:liquid_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:liquid_subtype_indentexpr = &l:indentexpr let b:did_indent = 1 setlocal indentexpr=GetLiquidIndent() setlocal indentkeys=o,O,*,<>>,{,},0),0],o,O,!^F,=end,=endif,=endunless,=endifchanged,=endcase,=endfor,=endtablerow,=endcapture,=else,=elsif,=when,=empty " Only define the function once. if exists('*GetLiquidIndent') finish endif function! s:count(string,pattern) let string = substitute(a:string,'\C'.a:pattern,"\n",'g') return strlen(substitute(string,"[^\n]",'','g')) endfunction function! GetLiquidIndent(...) 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) exe "let ind = ".b:liquid_subtype_indentexpr let lnum = prevnonblank(v:lnum-1) let line = getline(lnum) let cline = getline(v:lnum) let line = substitute(line,'\C^\%(\s*{%\s*end\w*\s*%}\)\+','','') let line .= matchstr(cline,'\C^\%(\s*{%\s*end\w*\s*%}\)\+') let cline = substitute(cline,'\C^\%(\s*{%\s*end\w*\s*%}\)\+','','') let sw = shiftwidth() let ind += sw * s:count(line,'{%\s*\%(if\|elsif\|else\|unless\|ifchanged\|case\|when\|for\|empty\|tablerow\|capture\)\>') let ind -= sw * s:count(line,'{%\s*end\%(if\|unless\|ifchanged\|case\|for\|tablerow\|capture\)\>') let ind -= sw * s:count(cline,'{%\s*\%(elsif\|else\|when\|empty\)\>') let ind -= sw * s:count(cline,'{%\s*end\w*$') return ind endfunction PK&]].].vim80/indent/dtd.vimnu[" Vim indent file " Language: DTD (Document Type Definition for XML) " Previous Maintainer: Nikolai Weibull " Latest Revision: 2011-07-08 let s:cpo_save = &cpo set cpo&vim setlocal indentexpr=GetDTDIndent() setlocal indentkeys=!^F,o,O,> setlocal nosmartindent if exists("*GetDTDIndent") finish endif " TODO: Needs to be adjusted to stop at [, <, and ]. let s:token_pattern = '^[^[:space:]]\+' function s:lex1(input, start, ...) let pattern = a:0 > 0 ? a:1 : s:token_pattern let start = matchend(a:input, '^\_s*', a:start) if start == -1 return ["", a:start] endif let end = matchend(a:input, pattern, start) if end == -1 return ["", a:start] endif let token = strpart(a:input, start, end - start) return [token, end] endfunction function s:lex(input, start, ...) let pattern = a:0 > 0 ? a:1 : s:token_pattern let info = s:lex1(a:input, a:start, pattern) while info[0] == '--' let info = s:lex1(a:input, info[1], pattern) while info[0] != "" && info[0] != '--' let info = s:lex1(a:input, info[1], pattern) endwhile if info[0] == "" return info endif let info = s:lex1(a:input, info[1], pattern) endwhile return info endfunction function s:indent_to_innermost_parentheses(line, end) let token = '(' let end = a:end let parentheses = [end - 1] while token != "" let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\|#P\=CDATA\|%[A-Za-z0-9_-]\+;\)[?*+]\=') if token[0] == '(' call add(parentheses, end - 1) elseif token[0] == ')' if len(parentheses) == 1 return [-1, end] endif call remove(parentheses, -1) endif endwhile return [parentheses[-1] - strridx(a:line, "\n", parentheses[-1]), end] endfunction " TODO: Line and end could be script global (think OO members). function GetDTDIndent() if v:lnum == 1 return 0 endif " Begin by searching back for a " return indent endif endwhile return -1 elseif declaration == 'ELEMENT' " Check for element name. If none exists, indent one level. let [name, end] = s:lex(line, end) if name == "" return indent + shiftwidth() endif " Check for token following element name. This can be a specification of " whether the start or end tag may be omitted. If nothing is found, indent " one level. let [token, end] = s:lex(line, end, '^\%([-O(]\|ANY\|EMPTY\)') let n = 0 while token =~ '[-O]' && n < 2 let [token, end] = s:lex(line, end, '^\%([-O(]\|ANY\|EMPTY\)') let n += 1 endwhile if token == "" return indent + shiftwidth() endif " Next comes the content model. If the token we’ve found isn’t a " parenthesis it must be either ANY, EMPTY or some random junk. Either " way, we’re done indenting this element, so set it to that of the first " line so that the terminating “>” winds up having the same indention. if token != '(' return indent endif " Now go through the content model. We need to keep track of the nesting " of parentheses. As soon as we hit 0 we’re done. If that happens we must " have a complete content model. Thus set indention to be the same as that " of the first line so that the terminating “>” winds up having the same " indention. Otherwise, we’ll indent to the innermost parentheses not yet " matched. let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end) if indent_of_innermost != -1 return indent_of_innermost endif " Finally, look for any additions and/or exceptions to the content model. " This is defined by a “+” or “-” followed by another content model " declaration. " TODO: Can the “-” be separated by whitespace from the “(”? let seen = { '+(': 0, '-(': 0 } while 1 let [additions_exceptions, end] = s:lex(line, end, '^[+-](') if additions_exceptions != '+(' && additions_exceptions != '-(' let [token, end] = s:lex(line, end) if token == '>' return indent endif " TODO: Should use s:lex here on getline(v:lnum) and check for >. return getline(v:lnum) =~ '^\s*>' || count(values(seen), 0) == 0 ? indent : (indent + shiftwidth()) endif " If we’ve seen an addition or exception already and this is of the same " kind, the user is writing a broken DTD. Time to bail. if seen[additions_exceptions] return indent endif let seen[additions_exceptions] = 1 let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end) if indent_of_innermost != -1 return indent_of_innermost endif endwhile elseif declaration == 'ATTLIST' " Check for element name. If none exists, indent one level. let [name, end] = s:lex(line, end) if name == "" return indent + shiftwidth() endif " Check for any number of attributes. while 1 " Check for attribute name. If none exists, indent one level, unless the " current line is a lone “>”, in which case we indent to the same level " as the first line. Otherwise, if the attribute name is “>”, we have " actually hit the end of the attribute list, in which case we indent to " the same level as the first line. let [name, end] = s:lex(line, end) if name == "" " TODO: Should use s:lex here on getline(v:lnum) and check for >. return getline(v:lnum) =~ '^\s*>' ? indent : (indent + shiftwidth()) elseif name == ">" return indent endif " Check for attribute value declaration. If none exists, indent two " levels. Otherwise, if it’s an enumerated value, check for nested " parentheses and indent to the innermost one if we don’t reach the end " of the listc. Otherwise, just continue with looking for the default " attribute value. " TODO: Do validation of keywords " (CDATA|NMTOKEN|NMTOKENS|ID|IDREF|IDREFS|ENTITY|ENTITIES)? let [value, end] = s:lex(line, end, '^\%((\|[^[:space:]]\+\)') if value == "" return indent + shiftwidth() * 2 elseif value == 'NOTATION' " If this is a enumerated value based on notations, read another token " for the actual value. If it doesn’t exist, indent three levels. " TODO: If validating according to above, value must be equal to '('. let [value, end] = s:lex(line, end, '^\%((\|[^[:space:]]\+\)') if value == "" return indent + shiftwidth() * 3 endif endif if value == '(' let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end) if indent_of_innermost != -1 return indent_of_innermost endif endif " Finally look for the attribute’s default value. If non exists, indent " two levels. let [default, end] = s:lex(line, end, '^\%("\_[^"]*"\|#\(REQUIRED\|IMPLIED\|FIXED\)\)') if default == "" return indent + shiftwidth() * 2 elseif default == '#FIXED' " We need to look for the fixed value. If non exists, indent three " levels. let [default, end] = s:lex(line, end, '^"\_[^"]*"') if default == "" return indent + shiftwidth() * 3 endif endif endwhile elseif declaration == 'ENTITY' " Check for entity name. If none exists, indent one level. Otherwise, if " the name actually turns out to be a percent sign, “%”, this is a " parameter entity. Read another token to determine the entity name and, " again, if none exists, indent one level. let [name, end] = s:lex(line, end) if name == "" return indent + shiftwidth() elseif name == '%' let [name, end] = s:lex(line, end) if name == "" return indent + shiftwidth() endif endif " Now check for the entity value. If none exists, indent one level. If it " does exist, indent to same level as first line, as we’re now done with " this entity. " " The entity value can be a string in single or double quotes (no escapes " to worry about, as entities are used instead). However, it can also be " that this is an external unparsed entity. In that case we have to look " further for (possibly) a public ID and an URI followed by the NDATA " keyword and the actual notation name. For the public ID and URI, indent " two levels, if they don’t exist. If the NDATA keyword doesn’t exist, " indent one level. Otherwise, if the actual notation name doesn’t exist, " indent two level. If it does, indent to same level as first line, as " we’re now done with this entity. let [value, end] = s:lex(line, end) if value == "" return indent + shiftwidth() elseif value == 'SYSTEM' || value == 'PUBLIC' let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)') if quoted_string == "" return indent + shiftwidth() * 2 endif if value == 'PUBLIC' let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)') if quoted_string == "" return indent + shiftwidth() * 2 endif endif let [ndata, end] = s:lex(line, end) if ndata == "" return indent + shiftwidth() endif let [name, end] = s:lex(line, end) return name == "" ? (indent + shiftwidth() * 2) : indent else return indent endif elseif declaration == 'NOTATION' " Check for notation name. If none exists, indent one level. let [name, end] = s:lex(line, end) if name == "" return indent + shiftwidth() endif " Now check for the external ID. If none exists, indent one level. let [id, end] = s:lex(line, end) if id == "" return indent + shiftwidth() elseif id == 'SYSTEM' || id == 'PUBLIC' let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)') if quoted_string == "" return indent + shiftwidth() * 2 endif if id == 'PUBLIC' let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\|>\)') if quoted_string == "" " TODO: Should use s:lex here on getline(v:lnum) and check for >. return getline(v:lnum) =~ '^\s*>' ? indent : (indent + shiftwidth() * 2) elseif quoted_string == '>' return indent endif endif endif return indent endif " TODO: Processing directives could be indented I suppose. But perhaps it’s " just as well to let the user decide how to indent them (perhaps extending " this function to include proper support for whatever processing directive " language they want to use). " Conditional sections are simply passed along to let Vim decide what to do " (and hence the user). return -1 endfunction let &cpo = s:cpo_save unlet s:cpo_save PK&]Swvim80/autoload/csscomplete.vimnu[" Vim completion script " Language: CSS " Based on MDN CSS Reference at 2016 Jan " plus CSS Speech Module " Maintainer: Kao, Wei-Ko(othree) ( othree AT gmail DOT com ) " Original Author: Mikolaj Machowski ( mikmach AT wp DOT pl ) " Last Change: 2016 Jan 11 let s:values = split("all additive-symbols align-content align-items align-self animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-repeat background-size block-size border border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-decoration-break box-shadow box-sizing break-after break-before break-inside caption-side clear clip clip-path color columns column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cue cue-before cue-after cursor direction display empty-cells fallback filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float font font-family font-feature-settings font-kerning font-language-override font-size font-size-adjust font-stretch font-style font-synthesis font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-ligatures font-variant-numeric font-variant-position font-weight grid grid-area grid-auto-columns grid-auto-flow grid-auto-position grid-auto-rows grid-column grid-column-start grid-column-end grid-row grid-row-start grid-row-end grid-template grid-template-areas grid-template-rows grid-template-columns height hyphens image-rendering image-resolution image-orientation ime-mode inline-size isolation justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-block-end margin-block-start margin-bottom margin-inline-end margin-inline-start margin-left margin-right margin-top marks mask mask-type max-block-size max-height max-inline-size max-width max-zoom min-block-size min-height min-inline-size min-width min-zoom mix-blend-mode negative object-fit object-position offset-block-end offset-block-start offset-inline-end offset-inline-start opacity order orientation orphans outline outline-color outline-offset outline-style outline-width overflow overflow-wrap overflow-x overflow-y pad padding padding-block-end padding-block-start padding-bottom padding-inline-end padding-inline-start padding-left padding-right padding-top page-break-after page-break-before page-break-inside pause-before pause-after pause perspective perspective-origin pointer-events position prefix quotes range resize rest rest-before rest-after right ruby-align ruby-merge ruby-position scroll-behavior scroll-snap-coordinate scroll-snap-destination scroll-snap-points-x scroll-snap-points-y scroll-snap-type scroll-snap-type-x scroll-snap-type-y shape-image-threshold shape-margin shape-outside speak speak-as suffix symbols system table-layout tab-size text-align text-align-last text-combine-upright text-decoration text-decoration-color text-decoration-line text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-transform text-underline-position top touch-action transform transform-box transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi unicode-range user-zoom vertical-align visibility voice-balance voice-duration voice-family voice-pitch voice-rate voice-range voice-stress voice-volume white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index zoom") function! csscomplete#CompleteCSS(findstart, base) if a:findstart " We need whole line to proper checking let line = getline('.') let start = col('.') - 1 let compl_begin = col('.') - 2 while start >= 0 && line[start - 1] =~ '\%(\k\|-\)' let start -= 1 endwhile let b:after = line[compl_begin :] let b:compl_context = line[0:compl_begin] return start endif " There are few chars important for context: " ^ ; : { } /* */ " Where ^ is start of line and /* */ are comment borders " Depending on their relative position to cursor we will know what should " be completed. " 1. if nearest are ^ or { or ; current word is property " 2. if : it is value (with exception of pseudo things) " 3. if } we are outside of css definitions " 4. for comments ignoring is be the easiest but assume they are the same " as 1. " 5. if @ complete at-rule " 6. if ! complete important if exists("b:compl_context") let line = b:compl_context let after = b:after unlet! b:compl_context else let line = a:base endif let res = [] let res2 = [] let borders = {} " Check last occurrence of sequence let openbrace = strridx(line, '{') let closebrace = strridx(line, '}') let colon = strridx(line, ':') let semicolon = strridx(line, ';') let opencomm = strridx(line, '/*') let closecomm = strridx(line, '*/') let style = strridx(line, 'style\s*=') let atrule = strridx(line, '@') let exclam = strridx(line, '!') if openbrace > -1 let borders[openbrace] = "openbrace" endif if closebrace > -1 let borders[closebrace] = "closebrace" endif if colon > -1 let borders[colon] = "colon" endif if semicolon > -1 let borders[semicolon] = "semicolon" endif if opencomm > -1 let borders[opencomm] = "opencomm" endif if closecomm > -1 let borders[closecomm] = "closecomm" endif if style > -1 let borders[style] = "style" endif if atrule > -1 let borders[atrule] = "atrule" endif if exclam > -1 let borders[exclam] = "exclam" endif if len(borders) == 0 || borders[max(keys(borders))] =~ '^\%(openbrace\|semicolon\|opencomm\|closecomm\|style\)$' " Complete properties let entered_property = matchstr(line, '.\{-}\zs[a-zA-Z-]*$') for m in s:values if m =~? '^'.entered_property call add(res, m . ':') elseif m =~? entered_property call add(res2, m . ':') endif endfor return res + res2 elseif borders[max(keys(borders))] == 'colon' " Get name of property let prop = tolower(matchstr(line, '\zs[a-zA-Z-]*\ze\s*:[^:]\{-}$')) let wide_keywords = ["initial", "inherit", "unset"] let color_values = ["transparent", "rgb(", "rgba(", "hsl(", "hsla(", "#"] let border_style_values = ["none", "hidden", "dotted", "dashed", "solid", "double", "groove", "ridge", "inset", "outset"] let border_width_values = ["thin", "thick", "medium"] let list_style_type_values = ["decimal", "decimal-leading-zero", "arabic-indic", "armenian", "upper-armenian", "lower-armenian", "bengali", "cambodian", "khmer", "cjk-decimal", "devanagari", "georgian", "gujarati", "gurmukhi", "hebrew", "kannada", "lao", "malayalam", "mongolian", "myanmar", "oriya", "persian", "lower-roman", "upper-roman", "tamil", "telugu", "thai", "tibetan", "lower-alpha", "lower-latin", "upper-alpha", "upper-latin", "cjk-earthly-branch", "cjk-heavenly-stem", "lower-greek", "hiragana", "hiragana-iroha", "katakana", "katakana-iroha", "disc", "circle", "square", "disclosure-open", "disclosure-closed"] let timing_functions = ["cubic-bezier(", "steps(", "linear", "ease", "ease-in", "ease-in-out", "ease-out", "step-start", "step-end"] if prop == 'all' let values = [] elseif prop == 'additive-symbols' let values = [] elseif prop == 'align-content' let values = ["flex-start", "flex-end", "center", "space-between", "space-around", "stretch"] elseif prop == 'align-items' let values = ["flex-start", "flex-end", "center", "baseline", "stretch"] elseif prop == 'align-self' let values = ["auto", "flex-start", "flex-end", "center", "baseline", "stretch"] elseif prop == 'animation' let values = timing_functions + ["normal", "reverse", "alternate", "alternate-reverse"] + ["none", "forwards", "backwards", "both"] + ["running", "paused"] elseif prop == 'animation-delay' let values = [] elseif prop == 'animation-direction' let values = ["normal", "reverse", "alternate", "alternate-reverse"] elseif prop == 'animation-duration' let values = [] elseif prop == 'animation-fill-mode' let values = ["none", "forwards", "backwards", "both"] elseif prop == 'animation-iteration-count' let values = [] elseif prop == 'animation-name' let values = [] elseif prop == 'animation-play-state' let values = ["running", "paused"] elseif prop == 'animation-timing-function' let values = timing_functions elseif prop == 'background-attachment' let values = ["scroll", "fixed"] elseif prop == 'background-color' let values = color_values elseif prop == 'background-image' let values = ["url(", "none"] elseif prop == 'background-position' let vals = matchstr(line, '.*:\s*\zs.*') if vals =~ '^\%([a-zA-Z]\+\)\?$' let values = ["top", "center", "bottom"] elseif vals =~ '^[a-zA-Z]\+\s\+\%([a-zA-Z]\+\)\?$' let values = ["left", "center", "right"] else return [] endif elseif prop == 'background-repeat' let values = ["repeat", "repeat-x", "repeat-y", "no-repeat"] elseif prop == 'background-size' let values = ["auto", "contain", "cover"] elseif prop == 'background' let values = ["scroll", "fixed"] + color_values + ["url(", "none"] + ["top", "center", "bottom", "left", "right"] + ["repeat", "repeat-x", "repeat-y", "no-repeat"] + ["auto", "contain", "cover"] elseif prop =~ 'border\%(-top\|-right\|-bottom\|-left\|-block-start\|-block-end\)\?$' let vals = matchstr(line, '.*:\s*\zs.*') if vals =~ '^\%([a-zA-Z0-9.]\+\)\?$' let values = border_width_values elseif vals =~ '^[a-zA-Z0-9.]\+\s\+\%([a-zA-Z]\+\)\?$' let values = border_style_values elseif vals =~ '^[a-zA-Z0-9.]\+\s\+[a-zA-Z]\+\s\+\%([a-zA-Z(]\+\)\?$' let values = color_values else return [] endif elseif prop =~ 'border-\%(top\|right\|bottom\|left\|block-start\|block-end\)-color' let values = color_values elseif prop =~ 'border-\%(top\|right\|bottom\|left\|block-start\|block-end\)-style' let values = border_style_values elseif prop =~ 'border-\%(top\|right\|bottom\|left\|block-start\|block-end\)-width' let values = border_width_values elseif prop == 'border-color' let values = color_values elseif prop == 'border-style' let values = border_style_values elseif prop == 'border-width' let values = border_width_values elseif prop == 'bottom' let values = ["auto"] elseif prop == 'box-decoration-break' let values = ["slice", "clone"] elseif prop == 'box-shadow' let values = ["inset"] elseif prop == 'box-sizing' let values = ["border-box", "content-box"] elseif prop =~ 'break-\%(before\|after\)' let values = ["auto", "always", "avoid", "left", "right", "page", "column", "region", "recto", "verso", "avoid-page", "avoid-column", "avoid-region"] elseif prop == 'break-inside' let values = ["auto", "avoid", "avoid-page", "avoid-column", "avoid-region"] elseif prop == 'caption-side' let values = ["top", "bottom"] elseif prop == 'clear' let values = ["none", "left", "right", "both"] elseif prop == 'clip' let values = ["auto", "rect("] elseif prop == 'clip-path' let values = ["fill-box", "stroke-box", "view-box", "none"] elseif prop == 'color' let values = color_values elseif prop == 'columns' let values = [] elseif prop == 'column-count' let values = ['auto'] elseif prop == 'column-fill' let values = ['auto', 'balance'] elseif prop == 'column-rule-color' let values = color_values elseif prop == 'column-rule-style' let values = border_style_values elseif prop == 'column-rule-width' let values = border_width_values elseif prop == 'column-rule' let vals = matchstr(line, '.*:\s*\zs.*') if vals =~ '^\%([a-zA-Z0-9.]\+\)\?$' let values = border_width_values elseif vals =~ '^[a-zA-Z0-9.]\+\s\+\%([a-zA-Z]\+\)\?$' let values = border_style_values elseif vals =~ '^[a-zA-Z0-9.]\+\s\+[a-zA-Z]\+\s\+\%([a-zA-Z(]\+\)\?$' let values = color_values else return [] endif elseif prop == 'column-span' let values = ["none", "all"] elseif prop == 'column-width' let values = ["auto"] elseif prop == 'content' let values = ["normal", "attr(", "open-quote", "close-quote", "no-open-quote", "no-close-quote"] elseif prop =~ 'counter-\%(increment\|reset\)$' let values = ["none"] elseif prop =~ 'cue\%(-after\|-before\)\=$' let values = ["url("] elseif prop == 'cursor' let values = ["url(", "auto", "crosshair", "default", "pointer", "move", "e-resize", "ne-resize", "nw-resize", "n-resize", "se-resize", "sw-resize", "s-resize", "w-resize", "text", "wait", "help", "progress"] elseif prop == 'direction' let values = ["ltr", "rtl"] elseif prop == 'display' let values = ["inline", "block", "list-item", "inline-list-item", "run-in", "inline-block", "table", "inline-table", "table-row-group", "table-header-group", "table-footer-group", "table-row", "table-column-group", "table-column", "table-cell", "table-caption", "none", "flex", "inline-flex", "grid", "inline-grid", "ruby", "ruby-base", "ruby-text", "ruby-base-container", "ruby-text-container", "contents"] elseif prop == 'elevation' let values = ["below", "level", "above", "higher", "lower"] elseif prop == 'empty-cells' let values = ["show", "hide"] elseif prop == 'fallback' let values = list_style_type_values elseif prop == 'filter' let values = ["blur(", "brightness(", "contrast(", "drop-shadow(", "grayscale(", "hue-rotate(", "invert(", "opacity(", "sepia(", "saturate("] elseif prop == 'flex-basis' let values = ["auto", "content"] elseif prop == 'flex-flow' let values = ["row", "row-reverse", "column", "column-reverse", "nowrap", "wrap", "wrap-reverse"] elseif prop == 'flex-grow' let values = [] elseif prop == 'flex-shrink' let values = [] elseif prop == 'flex-wrap' let values = ["nowrap", "wrap", "wrap-reverse"] elseif prop == 'flex' let values = ["nowrap", "wrap", "wrap-reverse"] + ["row", "row-reverse", "column", "column-reverse", "nowrap", "wrap", "wrap-reverse"] + ["auto", "content"] elseif prop == 'float' let values = ["left", "right", "none"] elseif prop == 'font-family' let values = ["sans-serif", "serif", "monospace", "cursive", "fantasy"] elseif prop == 'font-feature-settings' let values = ["normal", '"aalt"', '"abvf"', '"abvm"', '"abvs"', '"afrc"', '"akhn"', '"blwf"', '"blwm"', '"blws"', '"calt"', '"case"', '"ccmp"', '"cfar"', '"cjct"', '"clig"', '"cpct"', '"cpsp"', '"cswh"', '"curs"', '"cv', '"c2pc"', '"c2sc"', '"dist"', '"dlig"', '"dnom"', '"dtls"', '"expt"', '"falt"', '"fin2"', '"fin3"', '"fina"', '"flac"', '"frac"', '"fwid"', '"half"', '"haln"', '"halt"', '"hist"', '"hkna"', '"hlig"', '"hngl"', '"hojo"', '"hwid"', '"init"', '"isol"', '"ital"', '"jalt"', '"jp78"', '"jp83"', '"jp90"', '"jp04"', '"kern"', '"lfbd"', '"liga"', '"ljmo"', '"lnum"', '"locl"', '"ltra"', '"ltrm"', '"mark"', '"med2"', '"medi"', '"mgrk"', '"mkmk"', '"mset"', '"nalt"', '"nlck"', '"nukt"', '"numr"', '"onum"', '"opbd"', '"ordn"', '"ornm"', '"palt"', '"pcap"', '"pkna"', '"pnum"', '"pref"', '"pres"', '"pstf"', '"psts"', '"pwid"', '"qwid"', '"rand"', '"rclt"', '"rkrf"', '"rlig"', '"rphf"', '"rtbd"', '"rtla"', '"rtlm"', '"ruby"', '"salt"', '"sinf"', '"size"', '"smcp"', '"smpl"', '"ss01"', '"ss02"', '"ss03"', '"ss04"', '"ss05"', '"ss06"', '"ss07"', '"ss08"', '"ss09"', '"ss10"', '"ss11"', '"ss12"', '"ss13"', '"ss14"', '"ss15"', '"ss16"', '"ss17"', '"ss18"', '"ss19"', '"ss20"', '"ssty"', '"stch"', '"subs"', '"sups"', '"swsh"', '"titl"', '"tjmo"', '"tnam"', '"tnum"', '"trad"', '"twid"', '"unic"', '"valt"', '"vatu"', '"vert"', '"vhal"', '"vjmo"', '"vkna"', '"vkrn"', '"vpal"', '"vrt2"', '"zero"'] elseif prop == 'font-kerning' let values = ["auto", "normal", "none"] elseif prop == 'font-language-override' let values = ["normal"] elseif prop == 'font-size' let values = ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large", "larger", "smaller"] elseif prop == 'font-size-adjust' let values = [] elseif prop == 'font-stretch' let values = ["normal", "ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded"] elseif prop == 'font-style' let values = ["normal", "italic", "oblique"] elseif prop == 'font-synthesis' let values = ["none", "weight", "style"] elseif prop == 'font-variant-alternates' let values = ["normal", "historical-forms", "stylistic(", "styleset(", "character-variant(", "swash(", "ornaments(", "annotation("] elseif prop == 'font-variant-caps' let values = ["normal", "small-caps", "all-small-caps", "petite-caps", "all-petite-caps", "unicase", "titling-caps"] elseif prop == 'font-variant-asian' let values = ["normal", "ruby", "jis78", "jis83", "jis90", "jis04", "simplified", "traditional"] elseif prop == 'font-variant-ligatures' let values = ["normal", "none", "common-ligatures", "no-common-ligatures", "discretionary-ligatures", "no-discretionary-ligatures", "historical-ligatures", "no-historical-ligatures", "contextual", "no-contextual"] elseif prop == 'font-variant-numeric' let values = ["normal", "ordinal", "slashed-zero", "lining-nums", "oldstyle-nums", "proportional-nums", "tabular-nums", "diagonal-fractions", "stacked-fractions"] elseif prop == 'font-variant-position' let values = ["normal", "sub", "super"] elseif prop == 'font-variant' let values = ["normal", "historical-forms", "stylistic(", "styleset(", "character-variant(", "swash(", "ornaments(", "annotation("] + ["small-caps", "all-small-caps", "petite-caps", "all-petite-caps", "unicase", "titling-caps"] + ["ruby", "jis78", "jis83", "jis90", "jis04", "simplified", "traditional"] + ["none", "common-ligatures", "no-common-ligatures", "discretionary-ligatures", "no-discretionary-ligatures", "historical-ligatures", "no-historical-ligatures", "contextual", "no-contextual"] + ["ordinal", "slashed-zero", "lining-nums", "oldstyle-nums", "proportional-nums", "tabular-nums", "diagonal-fractions", "stacked-fractions"] + ["sub", "super"] elseif prop == 'font-weight' let values = ["normal", "bold", "bolder", "lighter", "100", "200", "300", "400", "500", "600", "700", "800", "900"] elseif prop == 'font' let values = ["normal", "italic", "oblique", "small-caps", "bold", "bolder", "lighter", "100", "200", "300", "400", "500", "600", "700", "800", "900", "xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large", "larger", "smaller", "sans-serif", "serif", "monospace", "cursive", "fantasy", "caption", "icon", "menu", "message-box", "small-caption", "status-bar"] elseif prop =~ '^\%(height\|width\)$' let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"] elseif prop =~ '^\%(left\|rigth\)$' let values = ["auto"] elseif prop == 'image-rendering' let values = ["auto", "crisp-edges", "pixelated"] elseif prop == 'image-orientation' let values = ["from-image", "flip"] elseif prop == 'ime-mode' let values = ["auto", "normal", "active", "inactive", "disabled"] elseif prop == 'inline-size' let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"] elseif prop == 'isolation' let values = ["auto", "isolate"] elseif prop == 'justify-content' let values = ["flex-start", "flex-end", "center", "space-between", "space-around"] elseif prop == 'letter-spacing' let values = ["normal"] elseif prop == 'line-break' let values = ["auto", "loose", "normal", "strict"] elseif prop == 'line-height' let values = ["normal"] elseif prop == 'list-style-image' let values = ["url(", "none"] elseif prop == 'list-style-position' let values = ["inside", "outside"] elseif prop == 'list-style-type' let values = list_style_type_values elseif prop == 'list-style' let values = list_style_type_values + ["inside", "outside"] + ["url(", "none"] elseif prop == 'margin' let values = ["auto"] elseif prop =~ 'margin-\%(right\|left\|top\|bottom\|block-start\|block-end\|inline-start\|inline-end\)$' let values = ["auto"] elseif prop == 'marks' let values = ["crop", "cross", "none"] elseif prop == 'mask' let values = ["url("] elseif prop == 'mask-type' let values = ["luminance", "alpha"] elseif prop == '\%(max\|min\)-\%(block\|inline\)-size' let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"] elseif prop == '\%(max\|min\)-\%(height\|width\)' let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"] elseif prop == '\%(max\|min\)-zoom' let values = ["auto"] elseif prop == 'mix-blend-mode' let values = ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"] elseif prop == 'opacity' let values = [] elseif prop == 'orientation' let values = ["auto", "portrait", "landscape"] elseif prop == 'orphans' let values = [] elseif prop == 'outline-offset' let values = [] elseif prop == 'outline-color' let values = color_values elseif prop == 'outline-style' let values = ["none", "hidden", "dotted", "dashed", "solid", "double", "groove", "ridge", "inset", "outset"] elseif prop == 'outline-width' let values = ["thin", "thick", "medium"] elseif prop == 'outline' let vals = matchstr(line, '.*:\s*\zs.*') if vals =~ '^\%([a-zA-Z0-9,()#]\+\)\?$' let values = color_values elseif vals =~ '^[a-zA-Z0-9,()#]\+\s\+\%([a-zA-Z]\+\)\?$' let values = ["none", "hidden", "dotted", "dashed", "solid", "double", "groove", "ridge", "inset", "outset"] elseif vals =~ '^[a-zA-Z0-9,()#]\+\s\+[a-zA-Z]\+\s\+\%([a-zA-Z(]\+\)\?$' let values = ["thin", "thick", "medium"] else return [] endif elseif prop == 'overflow-wrap' let values = ["normal", "break-word"] elseif prop =~ 'overflow\%(-x\|-y\)\=' let values = ["visible", "hidden", "scroll", "auto"] elseif prop == 'pad' let values = [] elseif prop == 'padding' let values = [] elseif prop =~ 'padding-\%(top\|right\|bottom\|left\|inline-start\|inline-end\|block-start\|block-end\)$' let values = [] elseif prop =~ 'page-break-\%(after\|before\)$' let values = ["auto", "always", "avoid", "left", "right", "recto", "verso"] elseif prop == 'page-break-inside' let values = ["auto", "avoid"] elseif prop =~ 'pause\%(-after\|-before\)\=$' let values = ["none", "x-weak", "weak", "medium", "strong", "x-strong"] elseif prop == 'perspective' let values = ["none"] elseif prop == 'perspective-origin' let values = ["top", "bottom", "left", "center", " right"] elseif prop == 'pointer-events' let values = ["auto", "none", "visiblePainted", "visibleFill", "visibleStroke", "visible", "painted", "fill", "stroke", "all"] elseif prop == 'position' let values = ["static", "relative", "absolute", "fixed", "sticky"] elseif prop == 'prefix' let values = [] elseif prop == 'quotes' let values = ["none"] elseif prop == 'range' let values = ["auto", "infinite"] elseif prop == 'resize' let values = ["none", "both", "horizontal", "vertical"] elseif prop =~ 'rest\%(-after\|-before\)\=$' let values = ["none", "x-weak", "weak", "medium", "strong", "x-strong"] elseif prop == 'ruby-align' let values = ["start", "center", "space-between", "space-around"] elseif prop == 'ruby-merge' let values = ["separate", "collapse", "auto"] elseif prop == 'ruby-position' let values = ["over", "under", "inter-character"] elseif prop == 'scroll-behavior' let values = ["auto", "smooth"] elseif prop == 'scroll-snap-coordinate' let values = ["none"] elseif prop == 'scroll-snap-destination' return [] elseif prop == 'scroll-snap-points-\%(x\|y\)$' let values = ["none", "repeat("] elseif prop == 'scroll-snap-type\%(-x\|-y\)\=$' let values = ["none", "mandatory", "proximity"] elseif prop == 'shape-image-threshold' let values = [] elseif prop == 'shape-margin' let values = [] elseif prop == 'shape-outside' let values = ["margin-box", "border-box", "padding-box", "content-box", 'inset(', 'circle(', 'ellipse(', 'polygon(', 'url('] elseif prop == 'speak' let values = ["auto", "none", "normal"] elseif prop == 'speak-as' let values = ["auto", "normal", "spell-out", "digits"] elseif prop == 'src' let values = ["url("] elseif prop == 'suffix' let values = [] elseif prop == 'symbols' let values = [] elseif prop == 'system' let vals = matchstr(line, '.*:\s*\zs.*') if vals =~ '^extends' let values = list_style_type_values else let values = ["cyclic", "numeric", "alphabetic", "symbolic", "additive", "fixed", "extends"] endif elseif prop == 'table-layout' let values = ["auto", "fixed"] elseif prop == 'tab-size' let values = [] elseif prop == 'text-align' let values = ["start", "end", "left", "right", "center", "justify", "match-parent"] elseif prop == 'text-align-last' let values = ["auto", "start", "end", "left", "right", "center", "justify"] elseif prop == 'text-combine-upright' let values = ["none", "all", "digits"] elseif prop == 'text-decoration-line' let values = ["none", "underline", "overline", "line-through", "blink"] elseif prop == 'text-decoration-color' let values = color_values elseif prop == 'text-decoration-style' let values = ["solid", "double", "dotted", "dashed", "wavy"] elseif prop == 'text-decoration' let values = ["none", "underline", "overline", "line-through", "blink"] + ["solid", "double", "dotted", "dashed", "wavy"] + color_values elseif prop == 'text-emphasis-color' let values = color_values elseif prop == 'text-emphasis-position' let values = ["over", "under", "left", "right"] elseif prop == 'text-emphasis-style' let values = ["none", "filled", "open", "dot", "circle", "double-circle", "triangle", "sesame"] elseif prop == 'text-emphasis' let values = color_values + ["over", "under", "left", "right"] + ["none", "filled", "open", "dot", "circle", "double-circle", "triangle", "sesame"] elseif prop == 'text-indent' let values = ["hanging", "each-line"] elseif prop == 'text-orientation' let values = ["mixed", "upright", "sideways", "sideways-right", "use-glyph-orientation"] elseif prop == 'text-overflow' let values = ["clip", "ellipsis"] elseif prop == 'text-rendering' let values = ["auto", "optimizeSpeed", "optimizeLegibility", "geometricPrecision"] elseif prop == 'text-shadow' let values = color_values elseif prop == 'text-transform' let values = ["capitalize", "uppercase", "lowercase", "full-width", "none"] elseif prop == 'text-underline-position' let values = ["auto", "under", "left", "right"] elseif prop == 'touch-action' let values = ["auto", "none", "pan-x", "pan-y", "manipulation", "pan-left", "pan-right", "pan-top", "pan-down"] elseif prop == 'transform' let values = ["matrix(", "translate(", "translateX(", "translateY(", "scale(", "scaleX(", "scaleY(", "rotate(", "skew(", "skewX(", "skewY(", "matrix3d(", "translate3d(", "translateZ(", "scale3d(", "scaleZ(", "rotate3d(", "rotateX(", "rotateY(", "rotateZ(", "perspective("] elseif prop == 'transform-box' let values = ["border-box", "fill-box", "view-box"] elseif prop == 'transform-origin' let values = ["left", "center", "right", "top", "bottom"] elseif prop == 'transform-style' let values = ["flat", "preserve-3d"] elseif prop == 'top' let values = ["auto"] elseif prop == 'transition-property' let values = ["all", "none"] + s:values elseif prop == 'transition-duration' let values = [] elseif prop == 'transition-delay' let values = [] elseif prop == 'transition-timing-function' let values = timing_functions elseif prop == 'transition' let values = ["all", "none"] + s:values + timing_functions elseif prop == 'unicode-bidi' let values = ["normal", "embed", "isolate", "bidi-override", "isolate-override", "plaintext"] elseif prop == 'unicode-range' let values = ["U+"] elseif prop == 'user-zoom' let values = ["zoom", "fixed"] elseif prop == 'vertical-align' let values = ["baseline", "sub", "super", "top", "text-top", "middle", "bottom", "text-bottom"] elseif prop == 'visibility' let values = ["visible", "hidden", "collapse"] elseif prop == 'voice-volume' let values = ["silent", "x-soft", "soft", "medium", "loud", "x-loud"] elseif prop == 'voice-balance' let values = ["left", "center", "right", "leftwards", "rightwards"] elseif prop == 'voice-family' let values = [] elseif prop == 'voice-rate' let values = ["normal", "x-slow", "slow", "medium", "fast", "x-fast"] elseif prop == 'voice-pitch' let values = ["absolute", "x-low", "low", "medium", "high", "x-high"] elseif prop == 'voice-range' let values = ["absolute", "x-low", "low", "medium", "high", "x-high"] elseif prop == 'voice-stress' let values = ["normal", "strong", "moderate", "none", "reduced "] elseif prop == 'voice-duration' let values = ["auto"] elseif prop == 'white-space' let values = ["normal", "pre", "nowrap", "pre-wrap", "pre-line"] elseif prop == 'widows' let values = [] elseif prop == 'will-change' let values = ["auto", "scroll-position", "contents"] + s:values elseif prop == 'word-break' let values = ["normal", "break-all", "keep-all"] elseif prop == 'word-spacing' let values = ["normal"] elseif prop == 'word-wrap' let values = ["normal", "break-word"] elseif prop == 'writing-mode' let values = ["horizontal-tb", "vertical-rl", "vertical-lr", "sideways-rl", "sideways-lr"] elseif prop == 'z-index' let values = ["auto"] elseif prop == 'zoom' let values = ["auto"] else " If no property match it is possible we are outside of {} and " trying to complete pseudo-(class|element) let element = tolower(matchstr(line, '\zs[a-zA-Z1-6]*\ze:[^:[:space:]]\{-}$')) if stridx('a,abbr,address,area,article,aside,audio,b,base,bdi,bdo,bgsound,blockquote,body,br,button,canvas,caption,center,cite,code,col,colgroup,command,content,data,datalist,dd,del,details,dfn,dialog,div,dl,dt,element,em,embed,fieldset,figcaption,figure,font,footer,form,frame,frameset,head,header,hgroup,hr,html,i,iframe,image,img,input,ins,isindex,kbd,keygen,label,legend,li,link,main,map,mark,menu,menuitem,meta,meter,nav,nobr,noframes,noscript,object,ol,optgroup,option,output,p,param,picture,pre,progress,q,rp,rt,rtc,ruby,s,samp,script,section,select,shadow,small,source,span,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr', ','.element.',') > -1 let values = ["active", "any", "checked", "default", "dir(", "disabled", "empty", "enabled", "first", "first-child", "first-of-type", "fullscreen", "focus", "hover", "indeterminate", "in-range", "invalid", "lang(", "last-child", "last-of-type", "left", "link", "not(", "nth-child(", "nth-last-child(", "nth-last-of-type(", "nth-of-type(", "only-child", "only-of-type", "optional", "out-of-range", "read-only", "read-write", "required", "right", "root", "scope", "target", "valid", "visited", "first-line", "first-letter", "before", "after", "selection", "backdrop"] else return [] endif endif let values = wide_keywords + values " Complete values let entered_value = matchstr(line, '.\{-}\zs[a-zA-Z0-9#,.(_-]*$') for m in values if m =~? '^'.entered_value call add(res, m) elseif m =~? entered_value call add(res2, m) endif endfor return res + res2 elseif borders[max(keys(borders))] == 'closebrace' return [] elseif borders[max(keys(borders))] == 'exclam' " Complete values let entered_imp = matchstr(line, '.\{-}!\s*\zs[a-zA-Z ]*$') let values = ["important"] for m in values if m =~? '^'.entered_imp call add(res, m) endif endfor return res elseif borders[max(keys(borders))] == 'atrule' let afterat = matchstr(line, '.*@\zs.*') if afterat =~ '\s' let atrulename = matchstr(line, '.*@\zs[a-zA-Z-]\+\ze') if atrulename == 'media' let entered_atruleafter = matchstr(line, '.*@media\s\+\zs.*$') if entered_atruleafter =~ "([^)]*$" let entered_atruleafter = matchstr(entered_atruleafter, '(\s*\zs[^)]*$') let values = ["max-width", "min-width", "width", "max-height", "min-height", "height", "max-aspect-ration", "min-aspect-ration", "aspect-ratio", "orientation", "max-resolution", "min-resolution", "resolution", "scan", "grid", "update-frequency", "overflow-block", "overflow-inline", "max-color", "min-color", "color", "max-color-index", "min-color-index", "color-index", "monochrome", "inverted-colors", "pointer", "hover", "any-pointer", "any-hover", "light-level", "scripting"] else let values = ["screen", "print", "speech", "all", "not", "and", "("] endif elseif atrulename == 'supports' let entered_atruleafter = matchstr(line, '.*@supports\s\+\zs.*$') if entered_atruleafter =~ "([^)]*$" let entered_atruleafter = matchstr(entered_atruleafter, '(\s*\zs.*$') let values = s:values else let values = ["("] endif elseif atrulename == 'charset' let entered_atruleafter = matchstr(line, '.*@charset\s\+\zs.*$') let values = [ \ '"UTF-8";', '"ANSI_X3.4-1968";', '"ISO_8859-1:1987";', '"ISO_8859-2:1987";', '"ISO_8859-3:1988";', '"ISO_8859-4:1988";', '"ISO_8859-5:1988";', \ '"ISO_8859-6:1987";', '"ISO_8859-7:1987";', '"ISO_8859-8:1988";', '"ISO_8859-9:1989";', '"ISO-8859-10";', '"ISO_6937-2-add";', '"JIS_X0201";', \ '"JIS_Encoding";', '"Shift_JIS";', '"Extended_UNIX_Code_Packed_Format_for_Japanese";', '"Extended_UNIX_Code_Fixed_Width_for_Japanese";', \ '"BS_4730";', '"SEN_850200_C";', '"IT";', '"ES";', '"DIN_66003";', '"NS_4551-1";', '"NF_Z_62-010";', '"ISO-10646-UTF-1";', '"ISO_646.basic:1983";', \ '"INVARIANT";', '"ISO_646.irv:1983";', '"NATS-SEFI";', '"NATS-SEFI-ADD";', '"NATS-DANO";', '"NATS-DANO-ADD";', '"SEN_850200_B";', '"KS_C_5601-1987";', \ '"ISO-2022-KR";', '"EUC-KR";', '"ISO-2022-JP";', '"ISO-2022-JP-2";', '"JIS_C6220-1969-jp";', '"JIS_C6220-1969-ro";', '"PT";', '"greek7-old";', \ '"latin-greek";', '"NF_Z_62-010_(1973)";', '"Latin-greek-1";', '"ISO_5427";', '"JIS_C6226-1978";', '"BS_viewdata";', '"INIS";', '"INIS-8";', \ '"INIS-cyrillic";', '"ISO_5427:1981";', '"ISO_5428:1980";', '"GB_1988-80";', '"GB_2312-80";', '"NS_4551-2";', '"videotex-suppl";', '"PT2";', \ '"ES2";', '"MSZ_7795.3";', '"JIS_C6226-1983";', '"greek7";', '"ASMO_449";', '"iso-ir-90";', '"JIS_C6229-1984-a";', '"JIS_C6229-1984-b";', \ '"JIS_C6229-1984-b-add";', '"JIS_C6229-1984-hand";', '"JIS_C6229-1984-hand-add";', '"JIS_C6229-1984-kana";', '"ISO_2033-1983";', \ '"ANSI_X3.110-1983";', '"T.61-7bit";', '"T.61-8bit";', '"ECMA-cyrillic";', '"CSA_Z243.4-1985-1";', '"CSA_Z243.4-1985-2";', '"CSA_Z243.4-1985-gr";', \ '"ISO_8859-6-E";', '"ISO_8859-6-I";', '"T.101-G2";', '"ISO_8859-8-E";', '"ISO_8859-8-I";', '"CSN_369103";', '"JUS_I.B1.002";', '"IEC_P27-1";', \ '"JUS_I.B1.003-serb";', '"JUS_I.B1.003-mac";', '"greek-ccitt";', '"NC_NC00-10:81";', '"ISO_6937-2-25";', '"GOST_19768-74";', '"ISO_8859-supp";', \ '"ISO_10367-box";', '"latin-lap";', '"JIS_X0212-1990";', '"DS_2089";', '"us-dk";', '"dk-us";', '"KSC5636";', '"UNICODE-1-1-UTF-7";', '"ISO-2022-CN";', \ '"ISO-2022-CN-EXT";', '"ISO-8859-13";', '"ISO-8859-14";', '"ISO-8859-15";', '"ISO-8859-16";', '"GBK";', '"GB18030";', '"OSD_EBCDIC_DF04_15";', \ '"OSD_EBCDIC_DF03_IRV";', '"OSD_EBCDIC_DF04_1";', '"ISO-11548-1";', '"KZ-1048";', '"ISO-10646-UCS-2";', '"ISO-10646-UCS-4";', '"ISO-10646-UCS-Basic";', \ '"ISO-10646-Unicode-Latin1";', '"ISO-10646-J-1";', '"ISO-Unicode-IBM-1261";', '"ISO-Unicode-IBM-1268";', '"ISO-Unicode-IBM-1276";', \ '"ISO-Unicode-IBM-1264";', '"ISO-Unicode-IBM-1265";', '"UNICODE-1-1";', '"SCSU";', '"UTF-7";', '"UTF-16BE";', '"UTF-16LE";', '"UTF-16";', '"CESU-8";', \ '"UTF-32";', '"UTF-32BE";', '"UTF-32LE";', '"BOCU-1";', '"ISO-8859-1-Windows-3.0-Latin-1";', '"ISO-8859-1-Windows-3.1-Latin-1";', \ '"ISO-8859-2-Windows-Latin-2";', '"ISO-8859-9-Windows-Latin-5";', '"hp-roman8";', '"Adobe-Standard-Encoding";', '"Ventura-US";', \ '"Ventura-International";', '"DEC-MCS";', '"IBM850";', '"PC8-Danish-Norwegian";', '"IBM862";', '"PC8-Turkish";', '"IBM-Symbols";', '"IBM-Thai";', \ '"HP-Legal";', '"HP-Pi-font";', '"HP-Math8";', '"Adobe-Symbol-Encoding";', '"HP-DeskTop";', '"Ventura-Math";', '"Microsoft-Publishing";', \ '"Windows-31J";', '"GB2312";', '"Big5";', '"macintosh";', '"IBM037";', '"IBM038";', '"IBM273";', '"IBM274";', '"IBM275";', '"IBM277";', '"IBM278";', \ '"IBM280";', '"IBM281";', '"IBM284";', '"IBM285";', '"IBM290";', '"IBM297";', '"IBM420";', '"IBM423";', '"IBM424";', '"IBM437";', '"IBM500";', '"IBM851";', \ '"IBM852";', '"IBM855";', '"IBM857";', '"IBM860";', '"IBM861";', '"IBM863";', '"IBM864";', '"IBM865";', '"IBM868";', '"IBM869";', '"IBM870";', '"IBM871";', \ '"IBM880";', '"IBM891";', '"IBM903";', '"IBM904";', '"IBM905";', '"IBM918";', '"IBM1026";', '"EBCDIC-AT-DE";', '"EBCDIC-AT-DE-A";', '"EBCDIC-CA-FR";', \ '"EBCDIC-DK-NO";', '"EBCDIC-DK-NO-A";', '"EBCDIC-FI-SE";', '"EBCDIC-FI-SE-A";', '"EBCDIC-FR";', '"EBCDIC-IT";', '"EBCDIC-PT";', '"EBCDIC-ES";', \ '"EBCDIC-ES-A";', '"EBCDIC-ES-S";', '"EBCDIC-UK";', '"EBCDIC-US";', '"UNKNOWN-8BIT";', '"MNEMONIC";', '"MNEM";', '"VISCII";', '"VIQR";', '"KOI8-R";', \ '"HZ-GB-2312";', '"IBM866";', '"IBM775";', '"KOI8-U";', '"IBM00858";', '"IBM00924";', '"IBM01140";', '"IBM01141";', '"IBM01142";', '"IBM01143";', \ '"IBM01144";', '"IBM01145";', '"IBM01146";', '"IBM01147";', '"IBM01148";', '"IBM01149";', '"Big5-HKSCS";', '"IBM1047";', '"PTCP154";', '"Amiga-1251";', \ '"KOI7-switched";', '"BRF";', '"TSCII";', '"windows-1250";', '"windows-1251";', '"windows-1252";', '"windows-1253";', '"windows-1254";', '"windows-1255";', \ '"windows-1256";', '"windows-1257";', '"windows-1258";', '"TIS-620";'] elseif atrulename == 'namespace' let entered_atruleafter = matchstr(line, '.*@namespace\s\+\zs.*$') let values = ["url("] elseif atrulename == 'document' let entered_atruleafter = matchstr(line, '.*@document\s\+\zs.*$') let values = ["url(", "url-prefix(", "domain(", "regexp("] elseif atrulename == 'import' let entered_atruleafter = matchstr(line, '.*@import\s\+\zs.*$') if entered_atruleafter =~ "^[\"']" let filestart = matchstr(entered_atruleafter, '^.\zs.*') let files = split(glob(filestart.'*'), '\n') let values = map(copy(files), '"\"".v:val') elseif entered_atruleafter =~ "^url(" let filestart = matchstr(entered_atruleafter, "^url([\"']\\?\\zs.*") let files = split(glob(filestart.'*'), '\n') let values = map(copy(files), '"url(".v:val') else let values = ['"', 'url('] endif else return [] endif for m in values if m =~? '^'.entered_atruleafter if entered_atruleafter =~? '^"' && m =~? '^"' let m = m[1:] endif if b:after =~? '"' && stridx(m, '"') > -1 let m = m[0:stridx(m, '"')-1] endif call add(res, m) elseif m =~? entered_atruleafter if m =~? '^"' let m = m[1:] endif call add(res2, m) endif endfor return res + res2 endif let values = ["charset", "page", "media", "import", "font-face", "namespace", "supports", "keyframes", "viewport", "document"] let entered_atrule = matchstr(line, '.*@\zs[a-zA-Z-]*$') for m in values if m =~? '^'.entered_atrule call add(res, m .' ') elseif m =~? entered_atrule call add(res2, m .' ') endif endfor return res + res2 endif return [] endfunction PK&]dvim80/autoload/paste.vimnu[" Vim support file to help with paste mappings and menus " Maintainer: Bram Moolenaar " Last Change: 2017 Aug 30 " Define the string to use for items that are present both in Edit, Popup and " Toolbar menu. Also used in mswin.vim and macmap.vim. " Pasting blockwise and linewise selections is not possible in Insert and " Visual mode without the +virtualedit feature. They are pasted as if they " were characterwise instead. Add to that some tricks to leave the cursor in " the right position, also for "gi". if has("virtualedit") let paste#paste_cmd = {'n': ":call paste#Paste()"} let paste#paste_cmd['v'] = '"-c' . paste#paste_cmd['n'] let paste#paste_cmd['i'] = "\\\"+gP" func! paste#Paste() let ove = &ve set ve=all normal! `^ if @+ != '' normal! "+gP endif let c = col(".") normal! i if col(".") < c " compensate for i moving the cursor left normal! l endif let &ve = ove endfunc else let paste#paste_cmd = {'n': "\"=@+.'xy'gPFx\"_2x"} let paste#paste_cmd['v'] = '"-cgix' . paste#paste_cmd['n'] . '"_x' let paste#paste_cmd['i'] = 'x' . paste#paste_cmd['n'] . '"_s' endif PK&]: vim80/autoload/rustfmt.vimnu[" Author: Stephen Sugden " " Adapted from https://github.com/fatih/vim-go " For bugs, patches and license go to https://github.com/rust-lang/rust.vim if !exists("g:rustfmt_autosave") let g:rustfmt_autosave = 0 endif if !exists("g:rustfmt_command") let g:rustfmt_command = "rustfmt" endif if !exists("g:rustfmt_options") let g:rustfmt_options = "" endif if !exists("g:rustfmt_fail_silently") let g:rustfmt_fail_silently = 0 endif let s:got_fmt_error = 0 function! s:RustfmtCommandRange(filename, line1, line2) let l:arg = {"file": shellescape(a:filename), "range": [a:line1, a:line2]} return printf("%s %s --write-mode=overwrite --file-lines '[%s]'", g:rustfmt_command, g:rustfmt_options, json_encode(l:arg)) endfunction function! s:RustfmtCommand(filename) return g:rustfmt_command . " --write-mode=overwrite " . g:rustfmt_options . " " . shellescape(a:filename) endfunction function! s:RunRustfmt(command, curw, tmpname) if exists("*systemlist") let out = systemlist(a:command) else let out = split(system(a:command), '\r\?\n') endif if v:shell_error == 0 || v:shell_error == 3 " remove undo point caused via BufWritePre try | silent undojoin | catch | endtry " Replace current file with temp file, then reload buffer call rename(a:tmpname, expand('%')) silent edit! let &syntax = &syntax " only clear location list if it was previously filled to prevent " clobbering other additions if s:got_fmt_error let s:got_fmt_error = 0 call setloclist(0, []) lwindow endif elseif g:rustfmt_fail_silently == 0 " otherwise get the errors and put them in the location list let errors = [] for line in out " src/lib.rs:13:5: 13:10 error: expected `,`, or `}`, found `value` let tokens = matchlist(line, '^\(.\{-}\):\(\d\+\):\(\d\+\):\s*\(\d\+:\d\+\s*\)\?\s*error: \(.*\)') if !empty(tokens) call add(errors, {"filename": @%, \"lnum": tokens[2], \"col": tokens[3], \"text": tokens[5]}) endif endfor if empty(errors) % | " Couldn't detect rustfmt error format, output errors endif if !empty(errors) call setloclist(0, errors, 'r') echohl Error | echomsg "rustfmt returned error" | echohl None endif let s:got_fmt_error = 1 lwindow " We didn't use the temp file, so clean up call delete(a:tmpname) endif call winrestview(a:curw) endfunction function! rustfmt#FormatRange(line1, line2) let l:curw = winsaveview() let l:tmpname = expand("%:p:h") . "/." . expand("%:p:t") . ".rustfmt" call writefile(getline(1, '$'), l:tmpname) let command = s:RustfmtCommandRange(l:tmpname, a:line1, a:line2) call s:RunRustfmt(command, l:curw, l:tmpname) endfunction function! rustfmt#Format() let l:curw = winsaveview() let l:tmpname = expand("%:p:h") . "/." . expand("%:p:t") . ".rustfmt" call writefile(getline(1, '$'), l:tmpname) let command = s:RustfmtCommand(l:tmpname) call s:RunRustfmt(command, l:curw, l:tmpname) endfunction PK&]UaM}M}vim80/autoload/tohtml.vimnu[" Vim autoload file for the tohtml plugin. " Maintainer: Ben Fritz " Last Change: 2013 Sep 03 " " Additional contributors: " " Original by Bram Moolenaar " Diff2HTML() added by Christian Brabandt " " See Mercurial change logs for more! " this file uses line continuations let s:cpo_sav = &cpo set cpo&vim " Automatically find charsets from all encodings supported natively by Vim. With " the 8bit- and 2byte- prefixes, Vim can actually support more encodings than " this. Let the user specify these however since they won't be supported on " every system. " " Note, not all of Vim's supported encodings have a charset to use. " " Names in this list are from: " http://www.iana.org/assignments/character-sets " g:tohtml#encoding_to_charset: {{{ let g:tohtml#encoding_to_charset = { \ 'latin1' : 'ISO-8859-1', \ 'iso-8859-2' : 'ISO-8859-2', \ 'iso-8859-3' : 'ISO-8859-3', \ 'iso-8859-4' : 'ISO-8859-4', \ 'iso-8859-5' : 'ISO-8859-5', \ 'iso-8859-6' : 'ISO-8859-6', \ 'iso-8859-7' : 'ISO-8859-7', \ 'iso-8859-8' : 'ISO-8859-8', \ 'iso-8859-9' : 'ISO-8859-9', \ 'iso-8859-10' : '', \ 'iso-8859-13' : 'ISO-8859-13', \ 'iso-8859-14' : '', \ 'iso-8859-15' : 'ISO-8859-15', \ 'koi8-r' : 'KOI8-R', \ 'koi8-u' : 'KOI8-U', \ 'macroman' : 'macintosh', \ 'cp437' : '', \ 'cp775' : '', \ 'cp850' : '', \ 'cp852' : '', \ 'cp855' : '', \ 'cp857' : '', \ 'cp860' : '', \ 'cp861' : '', \ 'cp862' : '', \ 'cp863' : '', \ 'cp865' : '', \ 'cp866' : 'IBM866', \ 'cp869' : '', \ 'cp874' : '', \ 'cp1250' : 'windows-1250', \ 'cp1251' : 'windows-1251', \ 'cp1253' : 'windows-1253', \ 'cp1254' : 'windows-1254', \ 'cp1255' : 'windows-1255', \ 'cp1256' : 'windows-1256', \ 'cp1257' : 'windows-1257', \ 'cp1258' : 'windows-1258', \ 'euc-jp' : 'EUC-JP', \ 'sjis' : 'Shift_JIS', \ 'cp932' : 'Shift_JIS', \ 'cp949' : '', \ 'euc-kr' : 'EUC-KR', \ 'cp936' : 'GBK', \ 'euc-cn' : 'GB2312', \ 'big5' : 'Big5', \ 'cp950' : 'Big5', \ 'utf-8' : 'UTF-8', \ 'ucs-2' : 'UTF-8', \ 'ucs-2le' : 'UTF-8', \ 'utf-16' : 'UTF-8', \ 'utf-16le' : 'UTF-8', \ 'ucs-4' : 'UTF-8', \ 'ucs-4le' : 'UTF-8', \ } lockvar g:tohtml#encoding_to_charset " Notes: " 1. All UCS/UTF are converted to UTF-8 because it is much better supported " 2. Any blank spaces are there because Vim supports it but at least one major " web browser does not according to http://wiki.whatwg.org/wiki/Web_Encodings. " }}} " Only automatically find encodings supported natively by Vim, let the user " specify the encoding if it's not natively supported. This function is only " used when the user specifies the charset, they better know what they are " doing! " " Names in this list are from: " http://www.iana.org/assignments/character-sets " g:tohtml#charset_to_encoding: {{{ let g:tohtml#charset_to_encoding = { \ 'iso_8859-1:1987' : 'latin1', \ 'iso-ir-100' : 'latin1', \ 'iso_8859-1' : 'latin1', \ 'iso-8859-1' : 'latin1', \ 'latin1' : 'latin1', \ 'l1' : 'latin1', \ 'ibm819' : 'latin1', \ 'cp819' : 'latin1', \ 'csisolatin1' : 'latin1', \ 'iso_8859-2:1987' : 'iso-8859-2', \ 'iso-ir-101' : 'iso-8859-2', \ 'iso_8859-2' : 'iso-8859-2', \ 'iso-8859-2' : 'iso-8859-2', \ 'latin2' : 'iso-8859-2', \ 'l2' : 'iso-8859-2', \ 'csisolatin2' : 'iso-8859-2', \ 'iso_8859-3:1988' : 'iso-8859-3', \ 'iso-ir-109' : 'iso-8859-3', \ 'iso_8859-3' : 'iso-8859-3', \ 'iso-8859-3' : 'iso-8859-3', \ 'latin3' : 'iso-8859-3', \ 'l3' : 'iso-8859-3', \ 'csisolatin3' : 'iso-8859-3', \ 'iso_8859-4:1988' : 'iso-8859-4', \ 'iso-ir-110' : 'iso-8859-4', \ 'iso_8859-4' : 'iso-8859-4', \ 'iso-8859-4' : 'iso-8859-4', \ 'latin4' : 'iso-8859-4', \ 'l4' : 'iso-8859-4', \ 'csisolatin4' : 'iso-8859-4', \ 'iso_8859-5:1988' : 'iso-8859-5', \ 'iso-ir-144' : 'iso-8859-5', \ 'iso_8859-5' : 'iso-8859-5', \ 'iso-8859-5' : 'iso-8859-5', \ 'cyrillic' : 'iso-8859-5', \ 'csisolatincyrillic' : 'iso-8859-5', \ 'iso_8859-6:1987' : 'iso-8859-6', \ 'iso-ir-127' : 'iso-8859-6', \ 'iso_8859-6' : 'iso-8859-6', \ 'iso-8859-6' : 'iso-8859-6', \ 'ecma-114' : 'iso-8859-6', \ 'asmo-708' : 'iso-8859-6', \ 'arabic' : 'iso-8859-6', \ 'csisolatinarabic' : 'iso-8859-6', \ 'iso_8859-7:1987' : 'iso-8859-7', \ 'iso-ir-126' : 'iso-8859-7', \ 'iso_8859-7' : 'iso-8859-7', \ 'iso-8859-7' : 'iso-8859-7', \ 'elot_928' : 'iso-8859-7', \ 'ecma-118' : 'iso-8859-7', \ 'greek' : 'iso-8859-7', \ 'greek8' : 'iso-8859-7', \ 'csisolatingreek' : 'iso-8859-7', \ 'iso_8859-8:1988' : 'iso-8859-8', \ 'iso-ir-138' : 'iso-8859-8', \ 'iso_8859-8' : 'iso-8859-8', \ 'iso-8859-8' : 'iso-8859-8', \ 'hebrew' : 'iso-8859-8', \ 'csisolatinhebrew' : 'iso-8859-8', \ 'iso_8859-9:1989' : 'iso-8859-9', \ 'iso-ir-148' : 'iso-8859-9', \ 'iso_8859-9' : 'iso-8859-9', \ 'iso-8859-9' : 'iso-8859-9', \ 'latin5' : 'iso-8859-9', \ 'l5' : 'iso-8859-9', \ 'csisolatin5' : 'iso-8859-9', \ 'iso-8859-10' : 'iso-8859-10', \ 'iso-ir-157' : 'iso-8859-10', \ 'l6' : 'iso-8859-10', \ 'iso_8859-10:1992' : 'iso-8859-10', \ 'csisolatin6' : 'iso-8859-10', \ 'latin6' : 'iso-8859-10', \ 'iso-8859-13' : 'iso-8859-13', \ 'iso-8859-14' : 'iso-8859-14', \ 'iso-ir-199' : 'iso-8859-14', \ 'iso_8859-14:1998' : 'iso-8859-14', \ 'iso_8859-14' : 'iso-8859-14', \ 'latin8' : 'iso-8859-14', \ 'iso-celtic' : 'iso-8859-14', \ 'l8' : 'iso-8859-14', \ 'iso-8859-15' : 'iso-8859-15', \ 'iso_8859-15' : 'iso-8859-15', \ 'latin-9' : 'iso-8859-15', \ 'koi8-r' : 'koi8-r', \ 'cskoi8r' : 'koi8-r', \ 'koi8-u' : 'koi8-u', \ 'macintosh' : 'macroman', \ 'mac' : 'macroman', \ 'csmacintosh' : 'macroman', \ 'ibm437' : 'cp437', \ 'cp437' : 'cp437', \ '437' : 'cp437', \ 'cspc8codepage437' : 'cp437', \ 'ibm775' : 'cp775', \ 'cp775' : 'cp775', \ 'cspc775baltic' : 'cp775', \ 'ibm850' : 'cp850', \ 'cp850' : 'cp850', \ '850' : 'cp850', \ 'cspc850multilingual' : 'cp850', \ 'ibm852' : 'cp852', \ 'cp852' : 'cp852', \ '852' : 'cp852', \ 'cspcp852' : 'cp852', \ 'ibm855' : 'cp855', \ 'cp855' : 'cp855', \ '855' : 'cp855', \ 'csibm855' : 'cp855', \ 'ibm857' : 'cp857', \ 'cp857' : 'cp857', \ '857' : 'cp857', \ 'csibm857' : 'cp857', \ 'ibm860' : 'cp860', \ 'cp860' : 'cp860', \ '860' : 'cp860', \ 'csibm860' : 'cp860', \ 'ibm861' : 'cp861', \ 'cp861' : 'cp861', \ '861' : 'cp861', \ 'cp-is' : 'cp861', \ 'csibm861' : 'cp861', \ 'ibm862' : 'cp862', \ 'cp862' : 'cp862', \ '862' : 'cp862', \ 'cspc862latinhebrew' : 'cp862', \ 'ibm863' : 'cp863', \ 'cp863' : 'cp863', \ '863' : 'cp863', \ 'csibm863' : 'cp863', \ 'ibm865' : 'cp865', \ 'cp865' : 'cp865', \ '865' : 'cp865', \ 'csibm865' : 'cp865', \ 'ibm866' : 'cp866', \ 'cp866' : 'cp866', \ '866' : 'cp866', \ 'csibm866' : 'cp866', \ 'ibm869' : 'cp869', \ 'cp869' : 'cp869', \ '869' : 'cp869', \ 'cp-gr' : 'cp869', \ 'csibm869' : 'cp869', \ 'windows-1250' : 'cp1250', \ 'windows-1251' : 'cp1251', \ 'windows-1253' : 'cp1253', \ 'windows-1254' : 'cp1254', \ 'windows-1255' : 'cp1255', \ 'windows-1256' : 'cp1256', \ 'windows-1257' : 'cp1257', \ 'windows-1258' : 'cp1258', \ 'extended_unix_code_packed_format_for_japanese' : 'euc-jp', \ 'cseucpkdfmtjapanese' : 'euc-jp', \ 'euc-jp' : 'euc-jp', \ 'shift_jis' : 'sjis', \ 'ms_kanji' : 'sjis', \ 'sjis' : 'sjis', \ 'csshiftjis' : 'sjis', \ 'ibm-thai' : 'cp874', \ 'csibmthai' : 'cp874', \ 'ks_c_5601-1987' : 'cp949', \ 'iso-ir-149' : 'cp949', \ 'ks_c_5601-1989' : 'cp949', \ 'ksc_5601' : 'cp949', \ 'korean' : 'cp949', \ 'csksc56011987' : 'cp949', \ 'euc-kr' : 'euc-kr', \ 'cseuckr' : 'euc-kr', \ 'gbk' : 'cp936', \ 'cp936' : 'cp936', \ 'ms936' : 'cp936', \ 'windows-936' : 'cp936', \ 'gb_2312-80' : 'euc-cn', \ 'iso-ir-58' : 'euc-cn', \ 'chinese' : 'euc-cn', \ 'csiso58gb231280' : 'euc-cn', \ 'big5' : 'big5', \ 'csbig5' : 'big5', \ 'utf-8' : 'utf-8', \ 'iso-10646-ucs-2' : 'ucs-2', \ 'csunicode' : 'ucs-2', \ 'utf-16' : 'utf-16', \ 'utf-16be' : 'utf-16', \ 'utf-16le' : 'utf-16le', \ 'utf-32' : 'ucs-4', \ 'utf-32be' : 'ucs-4', \ 'utf-32le' : 'ucs-4le', \ 'iso-10646-ucs-4' : 'ucs-4', \ 'csucs4' : 'ucs-4' \ } lockvar g:tohtml#charset_to_encoding "}}} func! tohtml#Convert2HTML(line1, line2) "{{{ let s:settings = tohtml#GetUserSettings() if !&diff || s:settings.diff_one_file "{{{ if a:line2 >= a:line1 let g:html_start_line = a:line1 let g:html_end_line = a:line2 else let g:html_start_line = a:line2 let g:html_end_line = a:line1 endif runtime syntax/2html.vim "}}} else "{{{ let win_list = [] let buf_list = [] windo if &diff | call add(win_list, winbufnr(0)) | endif let s:settings.whole_filler = 1 let g:html_diff_win_num = 0 for window in win_list " switch to the next buffer to convert exe ":" . bufwinnr(window) . "wincmd w" " figure out whether current charset and encoding will work, if not " default to UTF-8 if !exists('g:html_use_encoding') && \ (((&l:fileencoding=='' || (&l:buftype!='' && &l:buftype!=?'help')) \ && &encoding!=?s:settings.vim_encoding) \ || &l:fileencoding!='' && &l:fileencoding!=?s:settings.vim_encoding) echohl WarningMsg echomsg "TOhtml: mismatched file encodings in Diff buffers, using UTF-8" echohl None let s:settings.vim_encoding = 'utf-8' let s:settings.encoding = 'UTF-8' endif " set up for diff-mode conversion let g:html_start_line = 1 let g:html_end_line = line('$') let g:html_diff_win_num += 1 " convert this file runtime syntax/2html.vim " remember the HTML buffer for later combination call add(buf_list, bufnr('%')) endfor unlet g:html_diff_win_num call tohtml#Diff2HTML(win_list, buf_list) endif "}}} unlet g:html_start_line unlet g:html_end_line unlet s:settings endfunc "}}} func! tohtml#Diff2HTML(win_list, buf_list) "{{{ let xml_line = "" let tag_close = '>' let s:old_paste = &paste set paste let s:old_magic = &magic set magic if s:settings.use_xhtml if s:settings.encoding != "" let xml_line = "" else let xml_line = "" endif let tag_close = ' />' endif let style = [s:settings.use_xhtml ? "" : '-->'] let body_line = '' let html = [] if s:settings.use_xhtml call add(html, xml_line) endif if s:settings.use_xhtml call add(html, "") call add(html, '') elseif s:settings.use_css && !s:settings.no_pre call add(html, "") call add(html, '') else call add(html, '') call add(html, '') endif call add(html, '') " include encoding as close to the top as possible, but only if not already " contained in XML information if s:settings.encoding != "" && !s:settings.use_xhtml call add(html, "diff') call add(html, '') let body_line_num = len(html) if !empty(s:settings.prevent_copy) call add(html, "") call add(html, "") call add(html, "
0
") call add(html, "
") call add(html, "
") else call add(html, '') endif call add(html, "") call add(html, '') for buf in a:win_list call add(html, '') endfor call add(html, '') let diff_style_start = 0 let insert_index = 0 for buf in a:buf_list let temp = [] exe bufwinnr(buf) . 'wincmd w' " If text is folded because of user foldmethod settings, etc. we don't want " to act on everything in a fold by mistake. setlocal nofoldenable " When not using CSS or when using xhtml, the line can be important. " Assume it will be the same for all buffers and grab it from the first " buffer. Similarly, need to grab the body end line as well. if body_line == '' 1 call search('', 'b') let s:body_end_line = getline('.') endif " Grab the style information. Some of this will be duplicated so only insert " it if it's not already there. {{{ 1 let style_start = search('^') if style_start > 0 && style_end > 0 let buf_styles = getline(style_start + 1, style_end - 1) for a_style in buf_styles if index(style, a_style) == -1 if diff_style_start == 0 if a_style =~ '\\_s\+.*id='oneCharWidth'.*\_s\+.*id='oneInputWidth'.*\_s\+.*id='oneEmWidth'\)\?\zs/d_ $ ??,$d_ let temp = getline(1,'$') " clean out id on the main content container because we already set it on " the table let temp[0] = substitute(temp[0], " id='vimCodeElement[^']*'", "", "") " undo deletion of start and end part " so we can later save the file as valid html " TODO: restore using grabbed lines if undolevel is 1? normal! 2u if s:settings.use_css call add(html, '') " Close this buffer " TODO: the comment above says we're going to allow saving the file " later...but here we discard it? quit! endfor let html[body_line_num] = body_line call add(html, '') call add(html, '
'.bufname(buf).'
') elseif s:settings.use_xhtml call add(html, '
') else call add(html, '
') endif let html += temp call add(html, '
') call add(html, s:body_end_line) call add(html, '') " The generated HTML is admittedly ugly and takes a LONG time to fold. " Make sure the user doesn't do syntax folding when loading a generated file, " using a modeline. call add(html, '') let i = 1 let name = "Diff" . (s:settings.use_xhtml ? ".xhtml" : ".html") " Find an unused file name if current file name is already in use while filereadable(name) let name = substitute(name, '\d*\.x\?html$', '', '') . i . '.' . fnamemodify(copy(name), ":t:e") let i += 1 endwhile exe "topleft new " . name setlocal modifiable " just in case some user autocmd creates content in the new buffer, make sure " it is empty before proceeding %d " set the fileencoding to match the charset we'll be using let &l:fileencoding=s:settings.vim_encoding " According to http://www.w3.org/TR/html4/charset.html#doc-char-set, the byte " order mark is highly recommend on the web when using multibyte encodings. But, " it is not a good idea to include it on UTF-8 files. Otherwise, let Vim " determine when it is actually inserted. if s:settings.vim_encoding == 'utf-8' setlocal nobomb else setlocal bomb endif call append(0, html) if len(style) > 0 1 let style_start = search('^')-1 " add required javascript in reverse order so we can just call append again " and again without adjusting {{{ " insert script closing tag call append(style_start, [ \ '', \ s:settings.use_xhtml ? '//]]>' : '-->', \ "" \ ]) " insert script which corrects the size of small input elements in " prevent_copy mode. See 2html.vim for details on why this is needed and how " it works. if !empty(s:settings.prevent_copy) call append(style_start, [ \ '', \ '/* simulate a "ch" unit by asking the browser how big a zero character is */', \ 'function FixCharWidth() {', \ ' /* get the hidden element which gives the width of a single character */', \ ' var goodWidth = document.getElementById("oneCharWidth").clientWidth;', \ ' /* get all input elements, we''ll filter on class later */', \ ' var inputTags = document.getElementsByTagName("input");', \ ' var ratio = 5;', \ ' var inputWidth = document.getElementById("oneInputWidth").clientWidth;', \ ' var emWidth = document.getElementById("oneEmWidth").clientWidth;', \ ' if (inputWidth > goodWidth) {', \ ' while (ratio < 100*goodWidth/emWidth && ratio < 100) {', \ ' ratio += 5;', \ ' }', \ ' document.getElementById("vimCodeElement'.s:settings.id_suffix.'").className = "em"+ratio;', \ ' }', \ '}' \ ]) endif " " insert javascript to get IDs from line numbers, and to open a fold before " jumping to any lines contained therein call append(style_start, [ \ " /* Always jump to new location even if the line was hidden inside a fold, or", \ " * we corrected the raw number to a line ID.", \ " */", \ " if (lineElem) {", \ " lineElem.scrollIntoView(true);", \ " }", \ " return true;", \ "}", \ "if ('onhashchange' in window) {", \ " window.onhashchange = JumpToLine;", \ "}" \ ]) if s:settings.dynamic_folds call append(style_start, [ \ "", \ " /* navigate upwards in the DOM tree to open all folds containing the line */", \ " var node = lineElem;", \ " while (node && node.id != 'vimCodeElement".s:settings.id_suffix."')", \ " {", \ " if (node.className == 'closed-fold')", \ " {", \ " /* toggle open the fold ID (remove window ID) */", \ " toggleFold(node.id.substr(4));", \ " }", \ " node = node.parentNode;", \ " }", \ ]) endif call append(style_start, [ \ "", \ "/* function to open any folds containing a jumped-to line before jumping to it */", \ "function JumpToLine()", \ "{", \ " var lineNum;", \ " lineNum = window.location.hash;", \ " lineNum = lineNum.substr(1); /* strip off '#' */", \ "", \ " if (lineNum.indexOf('L') == -1) {", \ " lineNum = 'L'+lineNum;", \ " }", \ " if (lineNum.indexOf('W') == -1) {", \ " lineNum = 'W1'+lineNum;", \ " }", \ " lineElem = document.getElementById(lineNum);" \ ]) " Insert javascript to toggle matching folds open and closed in all windows, " if dynamic folding is active. if s:settings.dynamic_folds call append(style_start, [ \ " function toggleFold(objID)", \ " {", \ " for (win_num = 1; win_num <= ".len(a:buf_list)."; win_num++)", \ " {", \ " var fold;", \ ' fold = document.getElementById("win"+win_num+objID);', \ " if(fold.className == 'closed-fold')", \ " {", \ " fold.className = 'open-fold';", \ " }", \ " else if (fold.className == 'open-fold')", \ " {", \ " fold.className = 'closed-fold';", \ " }", \ " }", \ " }", \ ]) endif " insert script tag; javascript is always needed for the line number " normalization for URL hashes call append(style_start, [ \ "', 'W')) let js_scripttags += js_scripttag endif endwhile let b:js_extfiles += js_scripttags call cursor(l,c) unlet! l c endif endif " }}} if !exists("b:csscompl") && !exists("b:jscompl") let b:compl_context = getline('.')[0:(compl_begin)] if b:compl_context !~ '<[^>]*$' " Look like we may have broken tag. Check previous lines. let i = 1 while 1 let context_line = getline(curline-i) if context_line =~ '<[^>]*$' " Yep, this is this line let context_lines = getline(curline-i, curline-1) + [b:compl_context] let b:compl_context = join(context_lines, ' ') break elseif context_line =~ '>[^<]*$' || i == curline " We are in normal tag line, no need for completion at all " OR reached first line without tag at all let b:compl_context = '' break endif let i += 1 endwhile " Make sure we don't have counter unlet! i endif let b:compl_context = matchstr(b:compl_context, '.*\zs<.*') " Return proper start for on-events. Without that beginning of " completion will be badly reported if b:compl_context =~? 'on[a-z]*\s*=\s*\(''[^'']*\|"[^"]*\)$' let start = col('.') - 1 while start >= 0 && line[start - 1] =~ '\k' let start -= 1 endwhile endif " If b:compl_context begins with = 0 && line[start - 1] =~ '[a-zA-Z_0-9\x7f-\xff$]' let start -= 1 endwhile endif else let b:compl_context = getline('.')[0:compl_begin] endif return start else " Initialize base return lists let res = [] let res2 = [] " a:base is very short - we need context let context = b:compl_context " Check if we should do CSS completion inside of + contains=@htmlCss,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc syn match htmlCssStyleComment contained "\(\)" syn region htmlCssDefinition matchgroup=htmlArg start='style="' keepend matchgroup=htmlString end='"' contains=css.*Attr,css.*Prop,cssComment,cssLength,cssColor,cssURL,cssImportant,cssError,cssString,@htmlPreproc hi def link htmlStyleArg htmlString endif if main_syntax == "html" " synchronizing (does not always work if a comment includes legal " html tags, but doing it right would mean to always start " at the first line, which is too slow) syn sync match htmlHighlight groupthere NONE "<[/a-zA-Z]" syn sync match htmlHighlight groupthere javaScript " 800 || v:version == 800 && has("patch1038") hi def htmlStrike term=strikethrough cterm=strikethrough gui=strikethrough else hi def htmlStrike term=underline cterm=underline gui=underline endif endif endif hi def link htmlPreStmt PreProc hi def link htmlPreError Error hi def link htmlPreProc PreProc hi def link htmlPreAttr String hi def link htmlPreProcAttrName PreProc hi def link htmlPreProcAttrError Error hi def link htmlSpecial Special hi def link htmlSpecialChar Special hi def link htmlString String hi def link htmlStatement Statement hi def link htmlComment Comment hi def link htmlCommentPart Comment hi def link htmlValue String hi def link htmlCommentError htmlError hi def link htmlTagError htmlError hi def link htmlEvent javaScript hi def link htmlError Error hi def link javaScript Special hi def link javaScriptExpression javaScript hi def link htmlCssStyleComment Comment hi def link htmlCssDefinition Special let b:current_syntax = "html" if main_syntax == 'html' unlet main_syntax endif let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]NkgBgBvim80/syntax/readline.vimnu[" Vim syntax file " Language: readline(3) configuration file " Maintainer: Daniel Moch " Previous Maintainer: Nikolai Weibull " Latest Revision: 2017-12-25 " readline_has_bash - if defined add support for bash specific " settings/functions if exists('b:current_syntax') finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn match readlineKey contained \ '\S' \ nextgroup=readlineKeyTerminator syn match readlineBegin display '^' \ nextgroup=readlineComment, \ readlineConditional, \ readlineInclude, \ readlineKeyName, \ readlineKey, \ readlineKeySeq, \ readlineKeyword \ skipwhite syn region readlineComment contained display oneline \ start='#' \ end='$' \ contains=readlineTodo, \ @Spell syn keyword readlineTodo contained \ TODO \ FIXME \ XXX \ NOTE syn match readlineConditional contained \ '$if\>' \ nextgroup=readlineTest, \ readlineTestApp \ skipwhite syn keyword readlineTest contained \ mode \ nextgroup=readlineTestModeEq syn match readlineTestModeEq contained \ '=' \ nextgroup=readlineEditingMode syn keyword readlineTest contained \ term \ nextgroup=readlineTestTermEq syn match readlineTestTermEq contained \ '=' \ nextgroup=readlineTestTerm syn match readlineTestTerm contained \ '\S\+' syn match readlineTestApp contained \ '\S\+' syn match readlineConditional contained display \ '$\%(else\|endif\)\>' syn match readlineInclude contained display \ '$include\>' \ nextgroup=readlinePath syn match readlinePath contained display \ '.\+' syn case ignore syn match readlineKeyName contained display \ nextgroup=readlineKeySeparator, \ readlineKeyTerminator \ '\%(Control\|Del\|Esc\|Escape\|LFD\|Meta\|Newline\|Ret\|Return\|Rubout\|Space\|Spc\|Tab\)' syn case match syn match readlineKeySeparator contained \ '-' \ nextgroup=readlineKeyName, \ readlineKey syn match readlineKeyTerminator contained \ ':' \ nextgroup=readlineFunction \ skipwhite syn region readlineKeySeq contained display oneline \ start=+"+ \ skip=+\\\\\|\\"+ \ end=+"+ \ contains=readlineKeyEscape \ nextgroup=readlineKeyTerminator syn match readlineKeyEscape contained display \ +\\\([CM]-\|[e\\"'abdfnrtv]\|\o\{3}\|x\x\{2}\)+ syn keyword readlineKeyword contained \ set \ nextgroup=readlineVariable \ skipwhite syn keyword readlineVariable contained \ nextgroup=readlineBellStyle \ skipwhite \ bell-style syn keyword readlineVariable contained \ nextgroup=readlineBoolean \ skipwhite \ bind-tty-special-chars \ colored-stats \ completion-ignore-case \ completion-map-case \ convert-meta \ disable-completion \ echo-control-characters \ enable-keypad \ enable-meta-key \ expand-tilde \ history-preserve-point \ horizontal-scroll-mode \ input-meta \ meta-flag \ mark-directories \ mark-modified-lines \ mark-symlinked-directories \ match-hidden-files \ menu-complete-display-prefix \ output-meta \ page-completions \ print-completions-horizontally \ revert-all-at-newline \ show-all-if-ambiguous \ show-all-if-unmodified \ show-mode-in-prompt \ skip-completed-text \ visible-stats syn keyword readlineVariable contained \ nextgroup=readlineString \ skipwhite \ comment-begin \ isearch-terminators \ vi-cmd-mode-string \ vi-ins-mode-string \ emacs-mode-string syn keyword readlineVariable contained \ nextgroup=readlineNumber \ skipwhite \ completion-display-width \ completion-prefix-display-length \ completion-query-items \ history-size \ keyseq-timeout syn keyword readlineVariable contained \ nextgroup=readlineEditingMode \ skipwhite \ editing-mode syn keyword readlineVariable contained \ nextgroup=readlineKeymap \ skipwhite \ keymap syn keyword readlineBellStyle contained \ audible \ visible \ none syn case ignore syn keyword readlineBoolean contained \ on \ off syn case match syn region readlineString contained display oneline \ matchgroup=readlineStringDelimiter \ start=+"+ \ skip=+\\\\\|\\"+ \ end=+"+ syn match readlineNumber contained display \ '[+-]\d\+\>' syn keyword readlineEditingMode contained \ emacs \ vi syn match readlineKeymap contained display \ 'emacs\%(-\%(standard\|meta\|ctlx\)\)\=\|vi\%(-\%(move\|command\|insert\)\)\=' syn keyword readlineFunction contained \ beginning-of-line \ end-of-line \ forward-char \ backward-char \ forward-word \ backward-word \ clear-screen \ redraw-current-line \ \ accept-line \ previous-history \ next-history \ beginning-of-history \ end-of-history \ reverse-search-history \ forward-search-history \ non-incremental-reverse-search-history \ non-incremental-forward-search-history \ history-search-forward \ history-search-backward \ yank-nth-arg \ yank-last-arg \ \ delete-char \ backward-delete-char \ forward-backward-delete-char \ quoted-insert \ tab-insert \ self-insert \ transpose-chars \ transpose-words \ upcase-word \ downcase-word \ capitalize-word \ overwrite-mode \ \ kill-line \ backward-kill-line \ unix-line-discard \ kill-whole-line \ kill-word \ backward-kill-word \ unix-word-rubout \ unix-filename-rubout \ delete-horizontal-space \ kill-region \ copy-region-as-kill \ copy-backward-word \ copy-forward-word \ yank \ yank-pop \ \ digit-argument \ universal-argument \ \ complete \ possible-completions \ insert-completions \ menu-complete \ menu-complete-backward \ delete-char-or-list \ \ start-kbd-macro \ end-kbd-macro \ call-last-kbd-macro \ \ re-read-init-file \ abort \ do-uppercase-version \ prefix-meta \ undo \ revert-line \ tilde-expand \ set-mark \ exchange-point-and-mark \ character-search \ character-search-backward \ skip-csi-sequence \ insert-comment \ dump-functions \ dump-variables \ dump-macros \ emacs-editing-mode \ vi-editing-mode \ \ vi-eof-maybe \ vi-movement-mode \ vi-undo \ vi-match \ vi-tilde-expand \ vi-complete \ vi-char-search \ vi-redo \ vi-search \ vi-arg-digit \ vi-append-eol \ vi-prev-word \ vi-change-to \ vi-delete-to \ vi-end-word \ vi-char-search \ vi-fetch-history \ vi-insert-beg \ vi-search-again \ vi-put \ vi-replace \ vi-subst \ vi-char-search \ vi-next-word \ vi-yank-to \ vi-first-print \ vi-yank-arg \ vi-goto-mark \ vi-append-mode \ vi-prev-word \ vi-change-to \ vi-delete-to \ vi-end-word \ vi-char-search \ vi-insert-mode \ vi-set-mark \ vi-search-again \ vi-put \ vi-change-char \ vi-subst \ vi-char-search \ vi-undo \ vi-next-word \ vi-delete \ vi-yank-to \ vi-column \ vi-change-case if exists("readline_has_bash") syn keyword readlineFunction contained \ shell-expand-line \ history-expand-line \ magic-space \ alias-expand-line \ history-and-alias-expand-line \ insert-last-argument \ operate-and-get-next \ forward-backward-delete-char \ delete-char-or-list \ complete-filename \ possible-filename-completions \ complete-username \ possible-username-completions \ complete-variable \ possible-variable-completions \ complete-hostname \ possible-hostname-completions \ complete-command \ possible-command-completions \ dynamic-complete-history \ complete-into-braces \ glob-expand-word \ glob-list-expansions \ display-shell-version \ glob-complete-word \ edit-and-execute-command endif hi def link readlineKey readlineKeySeq hi def link readlineComment Comment hi def link readlineTodo Todo hi def link readlineConditional Conditional hi def link readlineTest Type hi def link readlineDelimiter Delimiter hi def link readlineTestModeEq readlineEq hi def link readlineTestTermEq readlineEq hi def link readlineTestTerm readlineString hi def link readlineTestAppEq readlineEq hi def link readlineTestApp readlineString hi def link readlineInclude Include hi def link readlinePath String hi def link readlineKeyName SpecialChar hi def link readlineKeySeparator readlineKeySeq hi def link readlineKeyTerminator readlineDelimiter hi def link readlineKeySeq String hi def link readlineKeyEscape SpecialChar hi def link readlineKeyword Keyword hi def link readlineVariable Identifier hi def link readlineBellStyle Constant hi def link readlineBoolean Boolean hi def link readlineString String hi def link readlineStringDelimiter readlineString hi def link readlineNumber Number hi def link readlineEditingMode Constant hi def link readlineKeymap Constant hi def link readlineFunction Function let b:current_syntax = 'readline' let &cpo = s:cpo_save unlet s:cpo_save PK&]tvim80/syntax/pinfo.vimnu[" Vim syntax file " Language: pinfo(1) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-06-17 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn case ignore syn keyword pinfoTodo contained FIXME TODO XXX NOTE syn region pinfoComment start='^#' end='$' contains=pinfoTodo,@Spell syn keyword pinfoOptions MANUAL CUT-MAN-HEADERS CUT-EMPTY-MAN-LINES \ RAW-FILENAME APROPOS \ DONT-HANDLE-WITHOUT-TAG-TABLE HTTPVIEWER \ FTPVIEWER MAILEDITOR PRINTUTILITY MANLINKS \ INFOPATH MAN-OPTIONS STDERR-REDIRECTION \ LONG-MANUAL-LINKS FILTER-0xB7 \ QUIT-CONFIRMATION QUIT-CONFIRM-DEFAULT \ CLEAR-SCREEN-AT-EXIT CALL-READLINE-HISTORY \ HIGHLIGHTREGEXP SAFE-USER SAFE-GROUP syn keyword pinfoColors COL_NORMAL COL_TOPLINE COL_BOTTOMLINE \ COL_MENU COL_MENUSELECTED COL_NOTE \ COL_NOTESELECTED COL_URL COL_URLSELECTED \ COL_INFOHIGHLIGHT COL_MANUALBOLD \ COL_MANUALITALIC COL_SEARCHHIGHLIGHT syn keyword pinfoColorDefault COLOR_DEFAULT syn keyword pinfoColorBold BOLD syn keyword pinfoColorNoBold NO_BOLD syn keyword pinfoColorBlink BLINK syn keyword pinfoColorNoBlink NO_BLINK syn keyword pinfoColorBlack COLOR_BLACK syn keyword pinfoColorRed COLOR_RED syn keyword pinfoColorGreen COLOR_GREEN syn keyword pinfoColorYellow COLOR_YELLOW syn keyword pinfoColorBlue COLOR_BLUE syn keyword pinfoColorMagenta COLOR_MAGENTA syn keyword pinfoColorCyan COLOR_CYAN syn keyword pinfoColorWhite COLOR_WHITE syn keyword pinfoKeys KEY_TOTALSEARCH_1 KEY_TOTALSEARCH_2 \ KEY_SEARCH_1 KEY_SEARCH_2 \ KEY_SEARCH_AGAIN_1 KEY_SEARCH_AGAIN_2 \ KEY_GOTO_1 KEY_GOTO_2 KEY_PREVNODE_1 \ KEY_PREVNODE_2 KEY_NEXTNODE_1 \ KEY_NEXTNODE_2 KEY_UP_1 KEY_UP_2 KEY_END_1 \ KEY_END_2 KEY_PGDN_1 KEY_PGDN_2 \ KEY_PGDN_AUTO_1 KEY_PGDN_AUTO_2 KEY_HOME_1 \ KEY_HOME_2 KEY_PGUP_1 KEY_PGUP_2 \ KEY_PGUP_AUTO_1 KEY_PGUP_AUTO_2 KEY_DOWN_1 \ KEY_DOWN_2 KEY_TOP_1 KEY_TOP_2 KEY_BACK_1 \ KEY_BACK_2 KEY_FOLLOWLINK_1 \ KEY_FOLLOWLINK_2 KEY_REFRESH_1 \ KEY_REFRESH_2 KEY_SHELLFEED_1 \ KEY_SHELLFEED_2 KEY_QUIT_1 KEY_QUIT_2 \ KEY_GOLINE_1 KEY_GOLINE_2 KEY_PRINT_1 \ KEY_PRINT_2 KEY_DIRPAGE_1 KEY_DIRPAGE_2 \ KEY_TWODOWN_1 KEY_TWODOWN_2 KEY_TWOUP_1 \ KEY_TWOUP_2 syn keyword pinfoSpecialKeys KEY_BREAK KEY_DOWN KEY_UP KEY_LEFT KEY_RIGHT \ KEY_DOWN KEY_HOME KEY_BACKSPACE KEY_NPAGE \ KEY_PPAGE KEY_END KEY_IC KEY_DC syn region pinfoSpecialKeys matchgroup=pinfoSpecialKeys transparent \ start=+KEY_\%(F\|CTRL\|ALT\)(+ end=+)+ syn region pinfoSimpleKey start=+'+ skip=+\\'+ end=+'+ \ contains=pinfoSimpleKeyEscape syn match pinfoSimpleKeyEscape +\\[\\nt']+ syn match pinfoKeycode '\<\d\+\>' syn keyword pinfoConstants TRUE FALSE YES NO hi def link pinfoTodo Todo hi def link pinfoComment Comment hi def link pinfoOptions Keyword hi def link pinfoColors Keyword hi def link pinfoColorDefault Normal hi def link pinfoSpecialKeys SpecialChar hi def link pinfoSimpleKey String hi def link pinfoSimpleKeyEscape SpecialChar hi def link pinfoKeycode Number hi def link pinfoConstants Constant hi def link pinfoKeys Keyword hi def pinfoColorBold cterm=bold hi def pinfoColorNoBold cterm=none hi def pinfoColorBlink cterm=inverse hi def pinfoColorNoBlink cterm=none hi def pinfoColorBlack ctermfg=Black guifg=Black hi def pinfoColorRed ctermfg=DarkRed guifg=DarkRed hi def pinfoColorGreen ctermfg=DarkGreen guifg=DarkGreen hi def pinfoColorYellow ctermfg=DarkYellow guifg=DarkYellow hi def pinfoColorBlue ctermfg=DarkBlue guifg=DarkBlue hi def pinfoColorMagenta ctermfg=DarkMagenta guifg=DarkMagenta hi def pinfoColorCyan ctermfg=DarkCyan guifg=DarkCyan hi def pinfoColorWhite ctermfg=LightGray guifg=LightGray let b:current_syntax = "pinfo" let &cpo = s:cpo_save unlet s:cpo_save PK&]dzvim80/syntax/diva.vimnu[" Vim syntax file " Language: SKILL for Diva " Maintainer: Toby Schaffer " Last Change: 2001 May 09 " Comments: SKILL is a Lisp-like programming language for use in EDA " tools from Cadence Design Systems. It allows you to have " a programming environment within the Cadence environment " that gives you access to the complete tool set and design " database. These items are for Diva verification rules decks. " Don't remove any old syntax stuff hanging around! We need stuff " from skill.vim. if !exists("did_skill_syntax_inits") runtime! syntax/skill.vim endif syn keyword divaDRCKeywords area enc notch ovlp sep width syn keyword divaDRCKeywords app diffNet length lengtha lengthb syn keyword divaDRCKeywords notParallel only_perp opposite parallel syn keyword divaDRCKeywords sameNet shielded with_perp syn keyword divaDRCKeywords edge edgea edgeb fig figa figb syn keyword divaDRCKeywords normalGrow squareGrow message raw syn keyword divaMeasKeywords perimeter length bends_all bends_full syn keyword divaMeasKeywords bends_part corners_all corners_full syn keyword divaMeasKeywords corners_part angles_all angles_full syn keyword divaMeasKeywords angles_part fig_count butting coincident syn keyword divaMeasKeywords over not_over outside inside enclosing syn keyword divaMeasKeywords figure one_net two_net three_net grounded syn keyword divaMeasKeywords polarized limit keep ignore syn match divaCtrlFunctions "(ivIf\>"hs=s+1 syn match divaCtrlFunctions "\"hs=s+1 syn match divaCtrlFunctions "\"hs=s+1 syn match divaCtrlFunctions "\"hs=s+1 syn match divaCtrlFunctions "\"hs=s+1 syn match divaCtrlFunctions "\"hs=s+1 syn match divaExtFunctions "\"hs=s+1 syn match divaExtFunctions "\<\(save\|measure\|attach\|multiLevel\|calculate\)Parasitic("he=e-1 syn match divaExtFunctions "(\(calculate\|measure\)Parameter\>"hs=s+1 syn match divaExtFunctions "\<\(calculate\|measure\)Parameter("he=e-1 syn match divaExtFunctions "(measure\(Resistance\|Fringe\)\>"hs=s+1 syn match divaExtFunctions "\"hs=s+1 syn match divaExtFunctions "\"hs=s+1 syn match divaDRCFunctions "\"hs=s+1 syn match divaDRCFunctions "\"hs=s+1 syn match divaDRCFunctions "\"hs=s+1 syn match divaDRCFunctions "\"hs=s+1 syn match divaFunctions "\<\(drcExtract\|lvs\)Rules("he=e-1 syn match divaLayerFunctions "(saveDerived\>"hs=s+1 syn match divaLayerFunctions "\"hs=s+1 syn match divaLayerFunctions "\"hs=s+1 syn match divaChkFunctions "\"hs=s+1 syn match divaChkFunctions "\"hs=s+1 syn match divaLVSFunctions "\"hs=s+1 syn match divaLVSFunctions "\"hs=s+1 syn match divaLVSFunctions "\"hs=s+1 syn match divaLVSFunctions "\<\(permute\|prune\|remove\)Device("he=e-1 syn match divaGeomFunctions "(geom\u\a\+\(45\|90\)\=\>"hs=s+1 syn match divaGeomFunctions "\ " Last Change: 2012 Feb 03 by Thilo Six " $Id: opl.vim,v 1.1 2004/06/13 17:34:11 vimboss Exp $ " Open Psion Language... (EPOC16/EPOC32) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " case is not significant syn case ignore " A bunch of useful OPL keywords syn keyword OPLStatement proc endp abs acos addr adjustalloc alert alloc app syn keyword OPLStatement append appendsprite asc asin at atan back beep syn keyword OPLStatement begintrans bookmark break busy byref cache syn keyword OPLStatement cachehdr cacherec cachetidy call cancel caption syn keyword OPLStatement changesprite chr$ clearflags close closesprite cls syn keyword OPLStatement cmd$ committrans compact compress const continue syn keyword OPLStatement copy cos count create createsprite cursor syn keyword OPLStatement datetosecs datim$ day dayname$ days daystodate syn keyword OPLStatement dbuttons dcheckbox dchoice ddate declare dedit syn keyword OPLStatement deditmulti defaultwin deg delete dfile dfloat syn keyword OPLStatement dialog diaminit diampos dinit dir$ dlong do dow syn keyword OPLStatement dposition drawsprite dtext dtime dxinput edit else syn keyword OPLStatement elseif enda endif endv endwh entersend entersend0 syn keyword OPLStatement eof erase err err$ errx$ escape eval exist exp ext syn keyword OPLStatement external find findfield findlib first fix$ flags syn keyword OPLStatement flt font freealloc gat gborder gbox gbutton syn keyword OPLStatement gcircle gclock gclose gcls gcolor gcopy gcreate syn keyword OPLStatement gcreatebit gdrawobject gellipse gen$ get get$ syn keyword OPLStatement getcmd$ getdoc$ getevent getevent32 geteventa32 syn keyword OPLStatement geteventc getlibh gfill gfont ggmode ggrey gheight syn keyword OPLStatement gidentity ginfo ginfo32 ginvert giprint glineby syn keyword OPLStatement glineto gloadbit gloadfont global gmove gorder syn keyword OPLStatement goriginx goriginy goto gotomark gpatt gpeekline syn keyword OPLStatement gpoly gprint gprintb gprintclip grank gsavebit syn keyword OPLStatement gscroll gsetpenwidth gsetwin gstyle gtmode gtwidth syn keyword OPLStatement gunloadfont gupdate guse gvisible gwidth gx syn keyword OPLStatement gxborder gxprint gy hex$ hour iabs icon if include syn keyword OPLStatement input insert int intf intrans key key$ keya keyc syn keyword OPLStatement killmark kmod last lclose left$ len lenalloc syn keyword OPLStatement linklib ln loadlib loadm loc local lock log lopen syn keyword OPLStatement lower$ lprint max mcard mcasc mean menu mid$ min syn keyword OPLStatement minit minute mkdir modify month month$ mpopup syn keyword OPLStatement newobj newobjh next notes num$ odbinfo off onerr syn keyword OPLStatement open openr opx os parse$ path pause peek pi syn keyword OPLStatement pointerfilter poke pos position possprite print syn keyword OPLStatement put rad raise randomize realloc recsize rename syn keyword OPLStatement rept$ return right$ rmdir rnd rollback sci$ screen syn keyword OPLStatement screeninfo second secstodate send setdoc setflags syn keyword OPLStatement setname setpath sin space sqr statuswin syn keyword OPLStatement statwininfo std stop style sum tan testevent trap syn keyword OPLStatement type uadd unloadlib unloadm until update upper$ syn keyword OPLStatement use usr usr$ usub val var vector week while year " syn keyword OPLStatement rem syn match OPLNumber "\<\d\+\>" syn match OPLNumber "\<\d\+\.\d*\>" syn match OPLNumber "\.\d\+\>" syn region OPLString start=+"+ end=+"+ syn region OPLComment start="REM[\t ]" end="$" syn match OPLMathsOperator "-\|=\|[:<>+\*^/\\]" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link OPLStatement Statement hi def link OPLNumber Number hi def link OPLString String hi def link OPLComment Comment hi def link OPLMathsOperator Conditional " hi def link OPLError Error let b:current_syntax = "opl" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]U[reevim80/syntax/loginaccess.vimnu[" Vim syntax file " Language: login.access(5) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword loginaccessTodo contained TODO FIXME XXX NOTE syn region loginaccessComment display oneline start='^#' end='$' \ contains=loginaccessTodo,@Spell syn match loginaccessBegin display '^' \ nextgroup=loginaccessPermission, \ loginaccessComment skipwhite syn match loginaccessPermission contained display '[^#]' \ contains=loginaccessPermError \ nextgroup=loginaccessUserSep syn match loginaccessPermError contained display '[^+-]' syn match loginaccessUserSep contained display ':' \ nextgroup=loginaccessUsers, \ loginaccessAllUsers, \ loginaccessExceptUsers syn match loginaccessUsers contained display '[^, \t:]\+' \ nextgroup=loginaccessUserIntSep, \ loginaccessOriginSep syn match loginaccessAllUsers contained display '\' \ nextgroup=loginaccessUserIntSep, \ loginaccessOriginSep syn match loginaccessLocalUsers contained display '\' \ nextgroup=loginaccessUserIntSep, \ loginaccessOriginSep syn match loginaccessExceptUsers contained display '\' \ nextgroup=loginaccessUserIntSep, \ loginaccessOriginSep syn match loginaccessUserIntSep contained display '[, \t]' \ nextgroup=loginaccessUsers, \ loginaccessAllUsers, \ loginaccessExceptUsers syn match loginaccessOriginSep contained display ':' \ nextgroup=loginaccessOrigins, \ loginaccessAllOrigins, \ loginaccessExceptOrigins syn match loginaccessOrigins contained display '[^, \t]\+' \ nextgroup=loginaccessOriginIntSep syn match loginaccessAllOrigins contained display '\' \ nextgroup=loginaccessOriginIntSep syn match loginaccessLocalOrigins contained display '\' \ nextgroup=loginaccessOriginIntSep syn match loginaccessExceptOrigins contained display '\' \ nextgroup=loginaccessOriginIntSep syn match loginaccessOriginIntSep contained display '[, \t]' \ nextgroup=loginaccessOrigins, \ loginaccessAllOrigins, \ loginaccessExceptOrigins hi def link loginaccessTodo Todo hi def link loginaccessComment Comment hi def link loginaccessPermission Type hi def link loginaccessPermError Error hi def link loginaccessUserSep Delimiter hi def link loginaccessUsers Identifier hi def link loginaccessAllUsers Macro hi def link loginaccessLocalUsers Macro hi def link loginaccessExceptUsers Operator hi def link loginaccessUserIntSep loginaccessUserSep hi def link loginaccessOriginSep loginaccessUserSep hi def link loginaccessOrigins Identifier hi def link loginaccessAllOrigins Macro hi def link loginaccessLocalOrigins Macro hi def link loginaccessExceptOrigins loginaccessExceptUsers hi def link loginaccessOriginIntSep loginaccessUserSep let b:current_syntax = "loginaccess" let &cpo = s:cpo_save unlet s:cpo_save PK&]m{""vim80/syntax/rst.vimnu[" Vim syntax file " Language: reStructuredText documentation format " Maintainer: Marshall Ward " Previous Maintainer: Nikolai Weibull " Website: https://github.com/marshallward/vim-restructuredtext " Latest Revision: 2016-08-18 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore syn match rstTransition /^[=`:.'"~^_*+#-]\{4,}\s*$/ syn cluster rstCruft contains=rstEmphasis,rstStrongEmphasis, \ rstInterpretedText,rstInlineLiteral,rstSubstitutionReference, \ rstInlineInternalTargets,rstFootnoteReference,rstHyperlinkReference syn region rstLiteralBlock matchgroup=rstDelimiter \ start='::\_s*\n\ze\z(\s\+\)' skip='^$' end='^\z1\@!' \ contains=@NoSpell syn region rstQuotedLiteralBlock matchgroup=rstDelimiter \ start="::\_s*\n\ze\z([!\"#$%&'()*+,-./:;<=>?@[\]^_`{|}~]\)" \ end='^\z1\@!' contains=@NoSpell syn region rstDoctestBlock oneline display matchgroup=rstDelimiter \ start='^>>>\s' end='^$' syn region rstTable transparent start='^\n\s*+[-=+]\+' end='^$' \ contains=rstTableLines,@rstCruft syn match rstTableLines contained display '|\|+\%(=\+\|-\+\)\=' syn region rstSimpleTable transparent \ start='^\n\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' \ end='^$' \ contains=rstSimpleTableLines,@rstCruft syn match rstSimpleTableLines contained display \ '^\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' syn match rstSimpleTableLines contained display \ '^\%(\s*\)\@>\%(\%(-\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(-\+\)\@>\%(\s*\)\@>\)\+\)\@>$' syn cluster rstDirectives contains=rstFootnote,rstCitation, \ rstHyperlinkTarget,rstExDirective syn match rstExplicitMarkup '^\s*\.\.\_s' \ nextgroup=@rstDirectives,rstComment,rstSubstitutionDefinition let s:ReferenceName = '[[:alnum:]]\+\%([_.-][[:alnum:]]\+\)*' syn keyword rstTodo contained FIXME TODO XXX NOTE execute 'syn region rstComment contained' . \ ' start=/.*/' \ ' end=/^\s\@!/ contains=rstTodo' execute 'syn region rstFootnote contained matchgroup=rstDirective' . \ ' start=+\[\%(\d\+\|#\%(' . s:ReferenceName . '\)\=\|\*\)\]\_s+' . \ ' skip=+^$+' . \ ' end=+^\s\@!+ contains=@rstCruft,@NoSpell' execute 'syn region rstCitation contained matchgroup=rstDirective' . \ ' start=+\[' . s:ReferenceName . '\]\_s+' . \ ' skip=+^$+' . \ ' end=+^\s\@!+ contains=@rstCruft,@NoSpell' syn region rstHyperlinkTarget contained matchgroup=rstDirective \ start='_\%(_\|[^:\\]*\%(\\.[^:\\]*\)*\):\_s' skip=+^$+ end=+^\s\@!+ syn region rstHyperlinkTarget contained matchgroup=rstDirective \ start='_`[^`\\]*\%(\\.[^`\\]*\)*`:\_s' skip=+^$+ end=+^\s\@!+ syn region rstHyperlinkTarget matchgroup=rstDirective \ start=+^__\_s+ skip=+^$+ end=+^\s\@!+ execute 'syn region rstExDirective contained matchgroup=rstDirective' . \ ' start=+' . s:ReferenceName . '::\_s+' . \ ' skip=+^$+' . \ ' end=+^\s\@!+ contains=@rstCruft,rstLiteralBlock' execute 'syn match rstSubstitutionDefinition contained' . \ ' /|' . s:ReferenceName . '|\_s\+/ nextgroup=@rstDirectives' function! s:DefineOneInlineMarkup(name, start, middle, end, char_left, char_right) execute 'syn region rst' . a:name . \ ' start=+' . a:char_left . '\zs' . a:start . \ '\ze[^[:space:]' . a:char_right . a:start[strlen(a:start) - 1] . ']+' . \ a:middle . \ ' end=+\S' . a:end . '\ze\%($\|\s\|[''"’)\]}>/:.,;!?\\-]\)+' endfunction function! s:DefineInlineMarkup(name, start, middle, end) let middle = a:middle != "" ? \ (' skip=+\\\\\|\\' . a:middle . '+') : \ "" call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, "'", "'") call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '"', '"') call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '(', ')') call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\[', '\]') call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '{', '}') call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '<', '>') call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '’', '’') " TODO: Additional Unicode Pd, Po, Pi, Pf, Ps characters call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\%(^\|\s\|[/:]\)', '') execute 'syn match rst' . a:name . \ ' +\%(^\|\s\|[''"([{/:.,;!?\\-]\)+' execute 'hi def link rst' . a:name . 'Delimiter' . ' rst' . a:name endfunction call s:DefineInlineMarkup('Emphasis', '\*', '\*', '\*') call s:DefineInlineMarkup('StrongEmphasis', '\*\*', '\*', '\*\*') call s:DefineInlineMarkup('InterpretedTextOrHyperlinkReference', '`', '`', '`_\{0,2}') call s:DefineInlineMarkup('InlineLiteral', '``', "", '``') call s:DefineInlineMarkup('SubstitutionReference', '|', '|', '|_\{0,2}') call s:DefineInlineMarkup('InlineInternalTargets', '_`', '`', '`') syn match rstSections "^\%(\([=`:.'"~^_*+#-]\)\1\+\n\)\=.\+\n\([=`:.'"~^_*+#-]\)\2\+$" " TODO: Can’t remember why these two can’t be defined like the ones above. execute 'syn match rstFootnoteReference contains=@NoSpell' . \ ' +\[\%(\d\+\|#\%(' . s:ReferenceName . '\)\=\|\*\)\]_+' execute 'syn match rstCitationReference contains=@NoSpell' . \ ' +\[' . s:ReferenceName . '\]_\ze\%($\|\s\|[''")\]}>/:.,;!?\\-]\)+' execute 'syn match rstHyperlinkReference' . \ ' /\<' . s:ReferenceName . '__\=\ze\%($\|\s\|[''")\]}>/:.,;!?\\-]\)/' syn match rstStandaloneHyperlink contains=@NoSpell \ "\<\%(\%(\%(https\=\|file\|ftp\|gopher\)://\|\%(mailto\|news\):\)[^[:space:]'\"<>]\+\|www[[:alnum:]_-]*\.[[:alnum:]_-]\+\.[^[:space:]'\"<>]\+\)[[:alnum:]/]" syn region rstCodeBlock contained matchgroup=rstDirective \ start=+\%(sourcecode\|code\%(-block\)\=\)::\s\+\w*\_s*\n\ze\z(\s\+\)+ \ skip=+^$+ \ end=+^\z1\@!+ \ contains=@NoSpell syn cluster rstDirectives add=rstCodeBlock if !exists('g:rst_syntax_code_list') let g:rst_syntax_code_list = ['vim', 'java', 'cpp', 'lisp', 'php', \ 'python', 'perl', 'sh'] endif for code in g:rst_syntax_code_list unlet! b:current_syntax " guard against setting 'isk' option which might cause problems (issue #108) let prior_isk = &l:iskeyword exe 'syn include @rst'.code.' syntax/'.code.'.vim' exe 'syn region rstDirective'.code.' matchgroup=rstDirective fold' \.' start=#\%(sourcecode\|code\%(-block\)\=\)::\s\+'.code.'\_s*\n\ze\z(\s\+\)#' \.' skip=#^$#' \.' end=#^\z1\@!#' \.' contains=@NoSpell,@rst'.code exe 'syn cluster rstDirectives add=rstDirective'.code " reset 'isk' setting, if it has been changed if &l:iskeyword !=# prior_isk let &l:iskeyword = prior_isk endif unlet! prior_isk endfor " TODO: Use better syncing. syn sync minlines=50 linebreaks=2 hi def link rstTodo Todo hi def link rstComment Comment hi def link rstSections Title hi def link rstTransition rstSections hi def link rstLiteralBlock String hi def link rstQuotedLiteralBlock String hi def link rstDoctestBlock PreProc hi def link rstTableLines rstDelimiter hi def link rstSimpleTableLines rstTableLines hi def link rstExplicitMarkup rstDirective hi def link rstDirective Keyword hi def link rstFootnote String hi def link rstCitation String hi def link rstHyperlinkTarget String hi def link rstExDirective String hi def link rstSubstitutionDefinition rstDirective hi def link rstDelimiter Delimiter hi def rstEmphasis ctermfg=13 term=italic cterm=italic gui=italic hi def rstStrongEmphasis ctermfg=1 term=bold cterm=bold gui=bold hi def link rstInterpretedTextOrHyperlinkReference Identifier hi def link rstInlineLiteral String hi def link rstSubstitutionReference PreProc hi def link rstInlineInternalTargets Identifier hi def link rstFootnoteReference Identifier hi def link rstCitationReference Identifier hi def link rstHyperLinkReference Identifier hi def link rstStandaloneHyperlink Identifier hi def link rstCodeBlock String let b:current_syntax = "rst" let &cpo = s:cpo_save unlet s:cpo_save PK&]^t4XXvim80/syntax/foxpro.vimnu[" Vim syntax file " Filename: foxpro.vim " Version: 1.0 " Language: FoxPro for DOS/UNIX v2.6 " Maintainer: Bill W. Smith, Jr. " Last Change: 15 May 2006 " This file replaces the FoxPro for DOS v2.x syntax file " maintained by Powing Tse " " Change Log: added support for FoxPro Codebook highlighting " corrected highlighting of comments that do NOT start in col 1 " corrected highlighting of comments at end of line (&&) " " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " FoxPro Codebook Naming Conventions syn match foxproCBConst "\<[c][A-Z][A-Za-z0-9_]*\>" syn match foxproCBVar "\<[lgrt][acndlmf][A-Z][A-Za-z0-9_]*\>" syn match foxproCBField "\<[a-z0-9]*\.[A-Za-z0-9_]*\>" " PROPER CodeBook field names start with the data type and do NOT have _ syn match foxproCBField "\<[A-Za-z0-9]*\.[acndlm][A-Z][A-Za-z0-9]*\>" syn match foxproCBWin "\" " CodeBook 2.0 defined objects as follows " This uses the hotkey from the screen builder as the second character syn match foxproCBObject "\<[lgr][bfthnkoli][A-Z][A-Za-z0-9_]*\>" " A later version added the following conventions for objects syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syn match foxproCBObject "\" syntax case ignore " Highlight special characters syn match foxproSpecial "^\s*!" syn match foxproSpecial "&" syn match foxproSpecial ";\s*$" syn match foxproSpecial "^\s*=" syn match foxproSpecial "^\s*\\" syn match foxproSpecial "^\s*\\\\" syn match foxproSpecial "^\s*?" syn match foxproSpecial "^\s*??" syn match foxproSpecial "^\s*???" syn match foxproSpecial "\\." " @ Statements syn match foxproAtSymbol contained "^\s*@" syn match foxproAtCmd contained "\\|\\|\\|\\|\\|\\|\\|\\|\\|\" syn match foxproAtStart transparent "^\s*@.*" contains=ALL " preprocessor directives syn match foxproPreProc "^\s*#\s*\(\\|\\|\\|\\)" syn match foxproPreProc "^\s*#\s*\(\\|\\)" syn match foxproPreProc "^\s*#\s*\" " Functions syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 syn match foxproFunc "\\s*("me=e-1 " Commands syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\<=\>" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\/n" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\" syn match foxproCmd "^\s*\\s*\" " Enclosed Block syn match foxproEnBlk "^\s*\\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" syn match foxproEnBlk "^\s*\" " System Variables syn keyword foxproSysVar _alignment _assist _beautify _box _calcmem _calcvalue syn keyword foxproSysVar _cliptext _curobj _dblclick _diarydate _dos _foxdoc syn keyword foxproSysVar _foxgraph _gengraph _genmenu _genpd _genscrn _genxtab syn keyword foxproSysVar _indent _lmargin _mac _mline _padvance _pageno _pbpage syn keyword foxproSysVar _pcolno _pcopies _pdriver _pdsetup _pecode _peject _pepage syn keyword foxproSysVar _plength _plineno _ploffset _ppitch _pquality _pretext syn keyword foxproSysVar _pscode _pspacing _pwait _rmargin _shell _spellchk syn keyword foxproSysVar _startup _tabs _tally _text _throttle _transport _unix syn keyword foxproSysVar _windows _wrap " Strings syn region foxproString start=+"+ end=+"+ oneline syn region foxproString start=+'+ end=+'+ oneline syn region foxproString start=+\[+ end=+\]+ oneline " Constants syn match foxproConst "\.t\." syn match foxproConst "\.f\." "integer number, or floating point number without a dot and with "f". syn match foxproNumber "\<[0-9]\+\>" "floating point number, with dot, optional exponent syn match foxproFloat "\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=\>" "floating point number, starting with a dot, optional exponent syn match foxproFloat "\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>" "floating point number, without dot, with exponent syn match foxproFloat "\<[0-9]\+e[-+]\=[0-9]\+\>" syn match foxproComment "^\s*\*.*" syn match foxproComment "&&.*" "catch errors caused by wrong parenthesis syn region foxproParen transparent start='(' end=')' contains=ALLBUT,foxproParenErr syn match foxproParenErr ")" syn sync minlines=1 maxlines=3 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link foxproSpecial Special hi def link foxproAtSymbol Special hi def link foxproAtCmd Statement hi def link foxproPreProc PreProc hi def link foxproFunc Identifier hi def link foxproCmd Statement hi def link foxproEnBlk Type hi def link foxproSysVar String hi def link foxproString String hi def link foxproConst Constant hi def link foxproNumber Number hi def link foxproFloat Float hi def link foxproComment Comment hi def link foxproParenErr Error hi def link foxproCBConst PreProc hi def link foxproCBField Special hi def link foxproCBVar Identifier hi def link foxproCBWin Special hi def link foxproCBObject Identifier let b:current_syntax = "foxpro" PK&]I ``vim80/syntax/sql.vimnu[" Vim syntax file loader " Language: SQL " Maintainer: David Fishburn " Last Change: Thu Sep 15 2005 10:30:02 AM " Version: 1.0 " Description: Checks for a: " buffer local variable, " global variable, " If the above exist, it will source the type specified. " If none exist, it will source the default sql.vim file. " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Default to the standard Vim distribution file let filename = 'sqloracle' " Check for overrides. Buffer variables have the highest priority. if exists("b:sql_type_override") " Check the runtimepath to see if the file exists if globpath(&runtimepath, 'syntax/'.b:sql_type_override.'.vim') != '' let filename = b:sql_type_override endif elseif exists("g:sql_type_default") if globpath(&runtimepath, 'syntax/'.g:sql_type_default.'.vim') != '' let filename = g:sql_type_default endif endif " Source the appropriate file exec 'runtime syntax/'.filename.'.vim' " vim:sw=4: PK&]}~vim80/syntax/csp.vimnu[" Vim syntax file " Language: CSP (Communication Sequential Processes, using FDR input syntax) " Maintainer: Jan Bredereke " Version: 0.6.0 " Last change: Mon Mar 25, 2002 " URL: http://www.tzi.de/~brederek/vim/ " Copying: You may distribute and use this file freely, in the same " way as the vim editor itself. " " To Do: - Probably I missed some keywords or operators, please " fix them and notify me, the maintainer. " - Currently, we do lexical highlighting only. It would be " nice to have more actual syntax checks, including " highlighting of wrong syntax. " - The additional syntax for the RT-Tester (pseudo-comments) " should be optional. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " case is significant to FDR: syn case match " Block comments in CSP are between {- and -} syn region cspComment start="{-" end="-}" contains=cspTodo " Single-line comments start with -- syn region cspComment start="--" end="$" contains=cspTodo,cspOldRttComment,cspSdlRttComment keepend " Numbers: syn match cspNumber "\<\d\+\>" " Conditionals: syn keyword cspConditional if then else " Operators on processes: " -> ? : ! ' ; /\ \ [] |~| [> & [[..<-..]] ||| [|..|] || [..<->..] ; : @ ||| syn match cspOperator "->" syn match cspOperator "/\\" syn match cspOperator "[^/]\\"lc=1 syn match cspOperator "\[\]" syn match cspOperator "|\~|" syn match cspOperator "\[>" syn match cspOperator "\[\[" syn match cspOperator "\]\]" syn match cspOperator "<-" syn match cspOperator "|||" syn match cspOperator "[^|]||[^|]"lc=1,me=e-1 syn match cspOperator "[^|{\~]|[^|}\~]"lc=1,me=e-1 syn match cspOperator "\[|" syn match cspOperator "|\]" syn match cspOperator "\[[^>]"me=e-1 syn match cspOperator "\]" syn match cspOperator "<->" syn match cspOperator "[?:!';@]" syn match cspOperator "&" syn match cspOperator "\." " (not on processes:) " syn match cspDelimiter "{|" " syn match cspDelimiter "|}" " syn match cspDelimiter "{[^-|]"me=e-1 " syn match cspDelimiter "[^-|]}"lc=1 " Keywords: syn keyword cspKeyword length null head tail concat elem syn keyword cspKeyword union inter diff Union Inter member card syn keyword cspKeyword empty set Set Seq syn keyword cspKeyword true false and or not within let syn keyword cspKeyword nametype datatype diamond normal syn keyword cspKeyword sbisim tau_loop_factor model_compress syn keyword cspKeyword explicate syn match cspKeyword "transparent" syn keyword cspKeyword external chase prioritize syn keyword cspKeyword channel Events syn keyword cspKeyword extensions productions syn keyword cspKeyword Bool Int " Reserved keywords: syn keyword cspReserved attribute embed module subtype " Include: syn region cspInclude matchgroup=cspIncludeKeyword start="^include" end="$" keepend contains=cspIncludeArg syn region cspIncludeArg start='\s\+\"' end= '\"\s*' contained " Assertions: syn keyword cspAssert assert deterministic divergence free deadlock syn keyword cspAssert livelock syn match cspAssert "\[T=" syn match cspAssert "\[F=" syn match cspAssert "\[FD=" syn match cspAssert "\[FD\]" syn match cspAssert "\[F\]" " Types and Sets " (first char a capital, later at least one lower case, no trailing underscore): syn match cspType "\<_*[A-Z][A-Z_0-9]*[a-z]\(\|[A-Za-z_0-9]*[A-Za-z0-9]\)\>" " Processes (all upper case, no trailing underscore): " (For identifiers that could be types or sets, too, this second rule set " wins.) syn match cspProcess "\<[A-Z_][A-Z_0-9]*[A-Z0-9]\>" syn match cspProcess "\<[A-Z_]\>" " reserved identifiers for tool output (ending in underscore): syn match cspReservedIdentifier "\<[A-Za-z_][A-Za-z_0-9]*_\>" " ToDo markers: syn match cspTodo "FIXME" contained syn match cspTodo "TODO" contained syn match cspTodo "!!!" contained " RT-Tester pseudo comments: " (The now obsolete syntax:) syn match cspOldRttComment "^--\$\$AM_UNDEF"lc=2 contained syn match cspOldRttComment "^--\$\$AM_ERROR"lc=2 contained syn match cspOldRttComment "^--\$\$AM_WARNING"lc=2 contained syn match cspOldRttComment "^--\$\$AM_SET_TIMER"lc=2 contained syn match cspOldRttComment "^--\$\$AM_RESET_TIMER"lc=2 contained syn match cspOldRttComment "^--\$\$AM_ELAPSED_TIMER"lc=2 contained syn match cspOldRttComment "^--\$\$AM_OUTPUT"lc=2 contained syn match cspOldRttComment "^--\$\$AM_INPUT"lc=2 contained " (The current syntax:) syn region cspRttPragma matchgroup=cspRttPragmaKeyword start="^pragma\s\+" end="\s*$" oneline keepend contains=cspRttPragmaArg,cspRttPragmaSdl syn keyword cspRttPragmaArg AM_ERROR AM_WARNING AM_SET_TIMER contained syn keyword cspRttPragmaArg AM_RESET_TIMER AM_ELAPSED_TIMER contained syn keyword cspRttPragmaArg AM_OUTPUT AM_INPUT AM_INTERNAL contained " the "SDL_MATCH" extension: syn region cspRttPragmaSdl matchgroup=cspRttPragmaKeyword start="SDL_MATCH\s\+" end="\s*$" contains=cspRttPragmaSdlArg contained syn keyword cspRttPragmaSdlArg TRANSLATE nextgroup=cspRttPragmaSdlTransName contained syn keyword cspRttPragmaSdlArg PARAM SKIP OPTIONAL CHOICE ARRAY nextgroup=cspRttPragmaSdlName contained syn match cspRttPragmaSdlName "\s*\S\+\s*" nextgroup=cspRttPragmaSdlTail contained syn region cspRttPragmaSdlTail start="" end="\s*$" contains=cspRttPragmaSdlTailArg contained syn keyword cspRttPragmaSdlTailArg SUBSET_USED DEFAULT_VALUE Present contained syn match cspRttPragmaSdlTransName "\s*\w\+\s*" nextgroup=cspRttPragmaSdlTransTail contained syn region cspRttPragmaSdlTransTail start="" end="\s*$" contains=cspRttPragmaSdlTransTailArg contained syn keyword cspRttPragmaSdlTransTailArg sizeof contained syn match cspRttPragmaSdlTransTailArg "\*" contained syn match cspRttPragmaSdlTransTailArg "(" contained syn match cspRttPragmaSdlTransTailArg ")" contained " temporary syntax extension for commented-out "pragma SDL_MATCH": syn match cspSdlRttComment "pragma\s\+SDL_MATCH\s\+" nextgroup=cspRttPragmaSdlArg contained syn sync lines=250 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later " (For vim version <=5.7, the command groups are defined in " $VIMRUNTIME/syntax/synload.vim ) hi def link cspComment Comment hi def link cspNumber Number hi def link cspConditional Conditional hi def link cspOperator Delimiter hi def link cspKeyword Keyword hi def link cspReserved SpecialChar hi def link cspInclude Error hi def link cspIncludeKeyword Include hi def link cspIncludeArg Include hi def link cspAssert PreCondit hi def link cspType Type hi def link cspProcess Function hi def link cspTodo Todo hi def link cspOldRttComment Define hi def link cspRttPragmaKeyword Define hi def link cspSdlRttComment Define hi def link cspRttPragmaArg Define hi def link cspRttPragmaSdlArg Define hi def link cspRttPragmaSdlName Default hi def link cspRttPragmaSdlTailArg Define hi def link cspRttPragmaSdlTransName Default hi def link cspRttPragmaSdlTransTailArg Define hi def link cspReservedIdentifier Error " (Currently unused vim method: Debug) let b:current_syntax = "csp" " vim: ts=8 PK&]CA JJvim80/syntax/teraterm.vimnu[" Vim syntax file " Language: Tera Term Language (TTL) " Based on Tera Term Version 4.92 " Maintainer: Ken Takata " URL: https://github.com/k-takata/vim-teraterm " Last Change: 2016 Aug 17 " Filenames: *.ttl " License: VIM License if exists("b:current_syntax") finish endif let s:save_cpo = &cpo set cpo&vim syn case ignore syn region ttlComment start=";" end="$" contains=@Spell syn region ttlComment start="/\*" end="\*/" contains=@Spell syn region ttlFirstComment start="/\*" end="\*/" contained contains=@Spell \ nextgroup=ttlStatement,ttlFirstComment syn match ttlCharacter "#\%(\d\+\|\$\x\+\)\>" syn match ttlNumber "\%(\<\d\+\|\$\x\+\)\>" syn match ttlString "'[^']*'" contains=@Spell syn match ttlString '"[^"]*"' contains=@Spell syn cluster ttlConstant contains=ttlCharacter,ttlNumber,ttlString syn match ttlLabel ":\s*\w\{1,32}\>" syn keyword ttlOperator and or xor not syn match ttlVar "\" syn match ttlVar "\" syn keyword ttlVar inputstr matchstr paramcnt params result timeout mtimeout syn match ttlLine nextgroup=ttlStatement "^" syn match ttlStatement contained "\s*" \ nextgroup=ttlIf,ttlElseIf,ttlConditional,ttlRepeat, \ ttlFirstComment,ttlComment,ttlLabel,@ttlCommand syn cluster ttlCommand contains=ttlControlCommand,ttlCommunicationCommand, \ ttlStringCommand,ttlFileCommand,ttlPasswordCommand, \ ttlMiscCommand syn keyword ttlIf contained nextgroup=ttlIfExpression if syn keyword ttlElseIf contained nextgroup=ttlElseIfExpression elseif syn match ttlIfExpression contained "\s.*" \ contains=@ttlConstant,ttlVar,ttlOperator,ttlComment,ttlThen, \ @ttlCommand syn match ttlElseIfExpression contained "\s.*" \ contains=@ttlConstant,ttlVar,ttlOperator,ttlComment,ttlThen syn keyword ttlThen contained then syn keyword ttlConditional contained else endif syn keyword ttlRepeat contained for next until enduntil while endwhile syn match ttlRepeat contained \ "\<\%(do\|loop\)\%(\s\+\%(while\|until\)\)\?\>" syn keyword ttlControlCommand contained \ break call continue end execcmnd exit goto include \ mpause pause return syn keyword ttlCommunicationCommand contained \ bplusrecv bplussend callmenu changedir clearscreen \ closett connect cygconnect disconnect dispstr \ enablekeyb flushrecv gethostname getmodemstatus \ gettitle kmtfinish kmtget kmtrecv kmtsend loadkeymap \ logautoclosemode logclose loginfo logopen logpause \ logrotate logstart logwrite quickvanrecv \ quickvansend recvln restoresetup scprecv scpsend \ send sendbreak sendbroadcast sendfile sendkcode \ sendln sendlnbroadcast sendmulticast setbaud \ setdebug setdtr setecho setmulticastname setrts \ setsync settitle showtt testlink unlink wait \ wait4all waitevent waitln waitn waitrecv waitregex \ xmodemrecv xmodemsend ymodemrecv ymodemsend \ zmodemrecv zmodemsend syn keyword ttlStringCommand contained \ code2str expandenv int2str regexoption sprintf \ sprintf2 str2code str2int strcompare strconcat \ strcopy strinsert strjoin strlen strmatch strremove \ strreplace strscan strspecial strsplit strtrim \ tolower toupper syn keyword ttlFileCommand contained \ basename dirname fileclose fileconcat filecopy \ filecreate filedelete filelock filemarkptr fileopen \ filereadln fileread filerename filesearch fileseek \ fileseekback filestat filestrseek filestrseek2 \ filetruncate fileunlock filewrite filewriteln \ findfirst findnext findclose foldercreate \ folderdelete foldersearch getdir getfileattr makepath \ setdir setfileattr syn keyword ttlPasswordCommand contained \ delpassword getpassword ispassword passwordbox \ setpassword syn keyword ttlMiscCommand contained \ beep bringupbox checksum8 checksum8file checksum16 \ checksum16file checksum32 checksum32file closesbox \ clipb2var crc16 crc16file crc32 crc32file exec \ dirnamebox filenamebox getdate getenv getipv4addr \ getipv6addr getspecialfolder gettime getttdir getver \ ifdefined inputbox intdim listbox messagebox random \ rotateleft rotateright setdate setdlgpos setenv \ setexitcode settime show statusbox strdim uptime \ var2clipb yesnobox hi def link ttlCharacter Character hi def link ttlNumber Number hi def link ttlComment Comment hi def link ttlFirstComment Comment hi def link ttlString String hi def link ttlLabel Label hi def link ttlIf Conditional hi def link ttlElseIf Conditional hi def link ttlThen Conditional hi def link ttlConditional Conditional hi def link ttlRepeat Repeat hi def link ttlControlCommand Keyword hi def link ttlVar Identifier hi def link ttlOperator Operator hi def link ttlCommunicationCommand Keyword hi def link ttlStringCommand Keyword hi def link ttlFileCommand Keyword hi def link ttlPasswordCommand Keyword hi def link ttlMiscCommand Keyword let b:current_syntax = "teraterm" let &cpo = s:save_cpo unlet s:save_cpo " vim: ts=8 sw=2 sts=2 PK&]EN N vim80/syntax/mel.vimnu[" Vim syntax file " Language: MEL (Maya Extension Language) " Maintainer: Robert Minsk " Last Change: May 27 1999 " Based on: Bram Moolenaar C syntax file " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " when wanted, highlight trailing white space and spaces before tabs if exists("mel_space_errors") sy match melSpaceError "\s\+$" sy match melSpaceError " \+\t"me=e-1 endif " A bunch of usefull MEL keyworks sy keyword melBoolean true false yes no on off sy keyword melFunction proc sy match melIdentifier "\$\(\a\|_\)\w*" sy keyword melStatement break continue return sy keyword melConditional if else switch sy keyword melRepeat while for do in sy keyword melLabel case default sy keyword melOperator size eval env exists whatIs sy keyword melKeyword alias sy keyword melException catch error warning sy keyword melInclude source sy keyword melType int float string vector matrix sy keyword melStorageClass global sy keyword melDebug trace sy keyword melTodo contained TODO FIXME XXX " MEL data types sy match melCharSpecial contained "\\[ntr\\"]" sy match melCharError contained "\\[^ntr\\"]" sy region melString start=+"+ skip=+\\"+ end=+"+ contains=melCharSpecial,melCharError sy case ignore sy match melInteger "\<\d\+\(e[-+]\=\d\+\)\=\>" sy match melFloat "\<\d\+\(e[-+]\=\d\+\)\=f\>" sy match melFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=f\=\>" sy match melFloat "\.\d\+\(e[-+]\=\d\+\)\=f\=\>" sy case match sy match melCommaSemi contained "[,;]" sy region melMatrixVector start=/<>/ contains=melInteger,melFloat,melIdentifier,melCommaSemi sy cluster melGroup contains=melFunction,melStatement,melConditional,melLabel,melKeyword,melStorageClass,melTODO,melCharSpecial,melCharError,melCommaSemi " catch errors caused by wrong parenthesis sy region melParen transparent start='(' end=')' contains=ALLBUT,@melGroup,melParenError,melInParen sy match melParenError ")" sy match melInParen contained "[{}]" " comments sy region melComment start="/\*" end="\*/" contains=melTodo,melSpaceError sy match melComment "//.*" contains=melTodo,melSpaceError sy match melCommentError "\*/" sy region melQuestionColon matchgroup=melConditional transparent start='?' end=':' contains=ALLBUT,@melGroup if !exists("mel_minlines") let mel_minlines=15 endif exec "sy sync ccomment melComment minlines=" . mel_minlines " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link melBoolean Boolean hi def link melFunction Function hi def link melIdentifier Identifier hi def link melStatement Statement hi def link melConditional Conditional hi def link melRepeat Repeat hi def link melLabel Label hi def link melOperator Operator hi def link melKeyword Keyword hi def link melException Exception hi def link melInclude Include hi def link melType Type hi def link melStorageClass StorageClass hi def link melDebug Debug hi def link melTodo Todo hi def link melCharSpecial SpecialChar hi def link melString String hi def link melInteger Number hi def link melFloat Float hi def link melMatrixVector Float hi def link melComment Comment hi def link melError Error hi def link melSpaceError melError hi def link melCharError melError hi def link melParenError melError hi def link melInParen melError hi def link melCommentError melError let b:current_syntax = "mel" PK&]9EK vim80/syntax/gp.vimnu[" Vim syntax file " Language: gp (version 2.5) " Maintainer: Karim Belabas " Last change: 2012 Jan 08 " URL: http://pari.math.u-bordeaux.fr " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " control statements syntax keyword gpStatement break return next syntax keyword gpConditional if syntax keyword gpRepeat until while for fordiv forell forprime syntax keyword gpRepeat forsubgroup forstep forvec " storage class syntax keyword gpScope my local global " defaults syntax keyword gpInterfaceKey breakloop colors compatible syntax keyword gpInterfaceKey datadir debug debugfiles debugmem syntax keyword gpInterfaceKey echo factor_add_primes factor_proven format syntax keyword gpInterfaceKey graphcolormap graphcolors syntax keyword gpInterfaceKey help histfile histsize syntax keyword gpInterfaceKey lines linewrap log logfile new_galois_format syntax keyword gpInterfaceKey output parisize path prettyprinter primelimit syntax keyword gpInterfaceKey prompt prompt_cont psfile syntax keyword gpInterfaceKey readline realprecision recover syntax keyword gpInterfaceKey secure seriesprecision simplify strictmatch syntax keyword gpInterfaceKey TeXstyle timer syntax match gpInterface "^\s*\\[a-z].*" syntax keyword gpInterface default syntax keyword gpInput read input " functions syntax match gpFunRegion "^\s*[a-zA-Z][_a-zA-Z0-9]*(.*)\s*=\s*[^ \t=]"me=e-1 contains=gpFunction,gpArgs syntax match gpFunRegion "^\s*[a-zA-Z][_a-zA-Z0-9]*(.*)\s*=\s*$" contains=gpFunction,gpArgs syntax match gpArgs contained "[a-zA-Z][_a-zA-Z0-9]*" syntax match gpFunction contained "^\s*[a-zA-Z][_a-zA-Z0-9]*("me=e-1 " String and Character constants " Highlight special (backslash'ed) characters differently syntax match gpSpecial contained "\\[ent\\]" syntax region gpString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gpSpecial "comments syntax region gpComment start="/\*" end="\*/" contains=gpTodo syntax match gpComment "\\\\.*" contains=gpTodo syntax keyword gpTodo contained TODO syntax sync ccomment gpComment minlines=10 "catch errors caused by wrong parenthesis syntax region gpParen transparent start='(' end=')' contains=ALLBUT,gpParenError,gpTodo,gpFunction,gpArgs,gpSpecial syntax match gpParenError ")" syntax match gpInParen contained "[{}]" hi def link gpConditional Conditional hi def link gpRepeat Repeat hi def link gpError Error hi def link gpParenError gpError hi def link gpInParen gpError hi def link gpStatement Statement hi def link gpString String hi def link gpComment Comment hi def link gpInterface Type hi def link gpInput Type hi def link gpInterfaceKey Statement hi def link gpFunction Function hi def link gpScope Type " contained ones hi def link gpSpecial Special hi def link gpTodo Todo hi def link gpArgs Type let b:current_syntax = "gp" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]p/U/Uvim80/syntax/pike.vimnu[" Vim syntax file " Language: Pike " Maintainer: Stephen R. van den Berg " Maintainer of previous implementation: Francesco Chemolli " Last Change: 2018 Jan 28 " Version: 2.9 " Remark: Derived from the C-syntax; fixed several bugs in the C-syntax " Remark: and extended it with the Pike syntax. " Remark: Includes a highlighter for all Pike types of parenthesis errors. " Remark: Includes a highlighter for SQL on multiline strings. " Remark: Includes a highlighter for any embedded Autodoc format. " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " For multiline strings, try formatting them as SQL syn include @pikeSQL :p:h/sqloracle.vim unlet b:current_syntax " For embedded Autodoc documentation (WIP) syn include @pikeAutodoc :p:h/autodoc.vim unlet b:current_syntax syn case match " Supports array, multiset, mapping multi-character delimiter matching " Supports rotating amongst several same-level preprocessor conditionals packadd! matchit let b:match_words = "({:}\\@1<=),(\\[:]\\@1<=),(<:>\\@1<=),^\s*#\s*\%(if\%(n\?def\)\|else\|el\%(se\)\?if\|endif\)\>" " A bunch of useful Pike keywords syn keyword pikeDebug gauge backtrace describe_backtrace werror _Static_assert static_assert syn keyword pikeException error catch throw syn keyword pikeLabel case default break return continue syn keyword pikeConditional if else switch syn keyword pikeRepeat while for foreach do syn keyword pikePredef RegGetKeyNames RegGetValue RegGetValues syn keyword pikePredef __automap__ __empty_program syn keyword pikePredef __handle_sprintf_format __parse_pike_type _disable_threads syn keyword pikePredef _do_call_outs _exit _gdb_breakpoint syn keyword pikePredef abs access acos acosh add_constant alarm all_constants syn keyword pikePredef array_sscanf asin asinh atan atan2 atanh atexit syn keyword pikePredef basetype call_function call_out call_out_info cd ceil syn keyword pikePredef combine_path combine_path_nt syn keyword pikePredef combine_path_unix compile copy_value cos cosh cpp crypt syn keyword pikePredef ctime decode_value delay encode_value encode_value_canonic syn keyword pikePredef enumerate errno exece exit exp file_stat file_truncate syn keyword pikePredef filesystem_stat find_call_out floor fork function_name syn keyword pikePredef function_object function_program gc syn keyword pikePredef get_active_compilation_handler get_active_error_handler syn keyword pikePredef get_all_groups get_all_users get_dir get_groups_for_user syn keyword pikePredef get_iterator get_profiling_info get_weak_flag getcwd syn keyword pikePredef getgrgid getgrnam gethrdtime gethrtime gethrvtime getpid syn keyword pikePredef getpwnam getpwuid getxattr glob gmtime has_index has_prefix syn keyword pikePredef has_suffix has_value hash hash_7_0 hash_7_4 hash_8_0 syn keyword pikePredef hash_value kill limit listxattr load_module localtime syn keyword pikePredef log lower_case master max min mkdir mktime mv syn keyword pikePredef object_program pow query_num_arg random_seed syn keyword pikePredef remove_call_out removexattr replace_master rm round syn keyword pikePredef set_priority set_weak_flag setxattr sgn signal signame syn keyword pikePredef signum sin sinh sleep sort sprintf sqrt sscanf strerror syn keyword pikePredef string_filter_non_unicode string_to_unicode string_to_utf8 syn keyword pikePredef tan tanh time trace types ualarm unicode_to_string syn keyword pikePredef upper_case utf8_to_string version syn keyword pikePredef write lock try_lock syn keyword pikePredef MutexKey Timestamp Date Time TimeTZ Interval Inet Range syn keyword pikePredef Null null inf nan syn keyword pikeTodo contained TODO FIXME XXX " Match parengroups: allows for highlighting indices of mappings and " highlighting semicolons that are out of place due to a paren imbalance syn cluster pikePreShort contains=pikeDefine,pikePreProc,pikeCppOutWrapper,pikeCppInWrapper,pikePreCondit,pikePreConditMatch syn cluster pikeExprGroup contains=pikeMappIndex,@pikeStmt,pikeNest,@pikeBadGroup,pikeSoftCast syn match pikeWord transparent contained /[^()'"[\]{},;:]\+/ contains=ALLBUT,@pikePreProcGroup,@pikeExprGroup syn match pikeFirstWord transparent display contained /^\s*#[^()'"[\]{},;:]\+/ contains=@pikePreShort syn cluster pikeMappElm contains=pikeMappIndex,@pikeStmt syn cluster pikeStmt contains=pikeFirstWord,pikeCharacter,pikeString,pikeMlString,pikeWord,pikeNest syn cluster pikeBadGroup contains=pikeBadPClose,pikeBadAClose,pikeBadBClose,pikeBadSPClose,pikeBadSAClose,pikeBadSBClose,pikeBadSClose,pikeBadSPAClose,pikeBadSBAClose syn match pikeBadPClose display contained "[}\]]" syn match pikeBadAClose display contained "[)\]]" syn match pikeBadBClose display contained "[)}]" syn match pikeBadSPClose display contained "[;}\]]" syn match pikeBadSAClose display contained "[;)\]]" syn match pikeBadSPAClose display contained "[;\]]" syn match pikeBadSBAClose display contained "[;}]" syn match pikeBadSClose display contained "[;)}\]]" syn region pikeNest transparent start="(\@1)" contains=@pikeStmt,pikeBadSPClose keepend " It's easy to accidentally add a space after a backslash that was intended " for line continuation. Some compilers allow it, which makes it " unpredictable and should be avoided. syn match pikeBadContinuation contained "\\\s\+$" " pikeCommentGroup allows adding matches for special things in comments syn cluster pikeCommentGroup contains=pikeTodo,pikeBadContinuation " String and Character constants " Highlight special characters (those which have a backslash) differently syn match pikeSpecial display contained "\\\%(x\x*\|d\d*\|\o\+\|u\x\{4}\|U\x\{8}\|[abefnrtv]\|$\)" " ISO C11 or ISO C++ 11 if !exists("c_no_cformat") " Highlight % items in strings. syn match pikeFormat display "%\%(\d\+\$\)\=[-+' #0*]*\%(\d*\|\*\|\*\d\+\$\)\%(\.\%(\d*\|\*\|\*\d\+\$\)\)\=\%([hlLjzt]\|ll\|hh\)\=\%([aAbdiuoxXDOUfFeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained syn match pikeFormat display "%%" contained syn region pikeString start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=pikeSpecial,pikeDelimiterDQ,pikeFormat,@Spell keepend syn region pikeMlString start=+#"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeSpecial,pikeFormat,pikeDelimiterDQ,@Spell,pikeEmbeddedString keepend else syn region pikeString start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=pikeSpecial,pikeDelimiterDQ,@Spell syn region pikeMlString transparent start=+#"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeSpecial,pikeDelimiterDQ,@Spell,pikeEmbeddedString keepend endif " Use SQL-syntax highlighting in multiline string if it starts with " a standard SQL keyword syn case ignore " FIXME Use explicit newline match to cover up a bug in the regexp engine " If the kludge is not used, the match will only start unless at least a space " follows the initial doublequote on the first line (or the keyword is on " the first line). syn region pikeEmbeddedString contained start=+\%(#"\n\?\)\@2<=\_s*\%(SELECT\|INSERT\|UPDATE\|DELETE\|WITH\|CREATE\|DROP\|ALTER\)\>+ skip=+\\\\\|\\"+ end=+[\\#]\@1" "hex number syn match pikeNumber display contained "\<0x\x\+\%(u\=l\{0,2}\|ll\=u\)\>" " Flag the first zero of an octal number as something special syn match pikeOctal display contained "\<0\o\+\%(u\=l\{0,2}\|ll\=u\)\>" contains=pikeOctalZero syn match pikeOctalZero display contained "\<0" "floating point number, with dot, optional exponent syn match pikeFloat display contained "\<\d\+\%(f\|\.[0-9.]\@!\d*\%(e[-+]\=\d\+\)\=[fl]\=\)" "floating point number, starting with a dot, optional exponent syn match pikeFloat display contained "[0-9.]\@1" "floating point number, without dot, with exponent syn match pikeFloat display contained "\<\d\+e[-+]\=\d\+[fl]\=\>" "hexadecimal floating point number, two variants, with exponent syn match pikeFloat display contained "\<0x\%(\x\+\.\?\|\x*\.\x\+\)p[-+]\=\d\+[fl]\=\>" " flag an octal number with wrong digits syn match pikeOctalError display contained "\<0\o*[89]\d*" syn case match if exists("c_comment_strings") " A comment can contain pikeString, pikeCharacter and pikeNumber. " But a "*/" inside a pikeString in a pikeComment DOES end the comment! So we " need to use a special type of pikeString: pikeCommentString, which also ends on " "*/", and sees a "*" at the start of the line as comment again. " Unfortunately this doesn't very well work for // type of comments :-( syn match pikeCommentSkip contained "^\s*\*\%($\|\s\+\)" syn region pikeCommentString contained start=+\\\@" skip="\\$" end="$" transparent keepend contains=pikeString,pikeCharacter,pikeNumbers,pikeCommentError,pikeSpaceError,pikeCppOperator,pikeCppPrefix syn match pikePreConditMatch display "^\s*\zs#\s*\%(else\|endif\)\>" if !exists("c_no_if0") syn cluster pikeCppOutInGroup contains=pikeCppInIf,pikeCppInElse,pikeCppInElse2,pikeCppOutIf,pikeCppOutIf2,pikeCppOutElse,pikeCppInSkip,pikeCppOutSkip syn region pikeCppOutWrapper start="^\s*\zs#\s*if\s\+0\+\s*\%($\|//\|/\*\|&\)" end=".\@=\|$" contains=pikeCppOutIf,pikeCppOutElse,@NoSpell fold syn region pikeCppOutIf contained start="0\+" matchgroup=pikeCppOutWrapper end="^\s*#\s*endif\>" contains=pikeCppOutIf2,pikeCppOutElse if !exists("c_no_if0_fold") syn region pikeCppOutIf2 contained matchgroup=pikeCppOutWrapper start="0\+" end="^\ze\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0\+\s*\%($\|//\|/\*\|&\)\)\@!\|endif\>\)" contains=pikeSpaceError,pikeCppOutSkip,@Spell fold else syn region pikeCppOutIf2 contained matchgroup=pikeCppOutWrapper start="0\+" end="^\ze\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0\+\s*\%($\|//\|/\*\|&\)\)\@!\|endif\>\)" contains=pikeSpaceError,pikeCppOutSkip,@Spell endif syn region pikeCppOutElse contained matchgroup=pikeCppOutWrapper start="^\s*#\s*\%(else\|el\%(se\)\?if\)" end="^\s*#\s*endif\>" contains=TOP,pikePreCondit syn region pikeCppInWrapper start="^\s*\zs#\s*if\s\+0*[1-9]\d*\s*\%($\|//\|/\*\||\)" end=".\@=\|$" contains=pikeCppInIf,pikeCppInElse fold syn region pikeCppInIf contained matchgroup=pikeCppInWrapper start="\d\+" end="^\s*#\s*endif\>" contains=TOP,pikePreCondit if !exists("c_no_if0_fold") syn region pikeCppInElse contained start="^\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0*[1-9]\d*\s*\%($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=pikeCppInIf contains=pikeCppInElse2 fold else syn region pikeCppInElse contained start="^\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0*[1-9]\d*\s*\%($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=pikeCppInIf contains=pikeCppInElse2 endif syn region pikeCppInElse2 contained matchgroup=pikeCppInWrapper start="^\s*#\s*\%(else\|el\%(se\)\?if\)\%([^/]\|/[^/*]\)*" end="^\ze\s*#\s*endif\>" contains=pikeSpaceError,pikeCppOutSkip,@Spell syn region pikeCppOutSkip contained start="^\s*#\s*if\%(n\?def\)\?\>" skip="\\$" end="^\s*#\s*endif\>" contains=pikeSpaceError,pikeCppOutSkip syn region pikeCppInSkip contained matchgroup=pikeCppInWrapper start="^\s*#\s*\%(if\s\+\%(\d\+\s*\%($\|//\|/\*\||\|&\)\)\@!\|ifn\?def\>\)" skip="\\$" end="^\s*#\s*endif\>" containedin=pikeCppOutElse,pikeCppInIf,pikeCppInSkip contains=TOP,pikePreProc endif syn region pikeIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeDelimiterDQ keepend syn match pikeIncluded display contained "<[^>]*>" syn match pikeInclude display "^\s*\zs#\s*include\>\s*["<]" contains=pikeIncluded syn cluster pikePreProcGroup contains=pikeIncluded,pikeInclude,pikeEmbeddedString,pikeCppOutWrapper,pikeCppInWrapper,@pikeCppOutInGroup,pikeFormat,pikeMlString,pikeCommentStartError,@pikeBadGroup,pikeWord syn region pikeDefine start="^\s*\zs#\s*\%(define\|undef\)\>" skip="\\$" end="$" keepend contains=@pikeStmt,@pikeBadGroup syn region pikePreProc start="^\s*\zs#\s*\%(pragma\|charset\|pike\|require\|string\|line\|warning\|error\)\>" skip="\\$" end="$" transparent keepend contains=pikeString,pikeCharacter,pikeNumbers,pikeCommentError,pikeSpaceError,pikeCppOperator,pikeCppPrefix,@Spell,pikeConstant syn match pikeAutodocReal display contained "\%(//\|[/ \t\v]\*\|^\*\)\@2<=!.*" contains=@pikeAutodoc containedin=pikeComment,pikeCommentL syn cluster pikeCommentGroup add=pikeAutodocReal syn cluster pikePreProcGroup add=pikeAutodocReal " Highlight User Labels " Avoid matching foo::bar() in C++ by requiring that the next char is not ':' syn match pikeUserLabel display "\%(^\|[{};]\)\zs\I\i*\s*\ze:\%([^:]\|$\)" contained contains=NONE syn match pikeUserLabel display "\%(\<\%(break\|continue\)\_s\+\)\@10<=\I\i*" contained contains=NONE syn match pikeUserLabel display "\%(\ " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword libaoTodo contained TODO FIXME XXX NOTE syn region libaoComment display oneline start='^\s*#' end='$' \ contains=libaoTodo,@Spell syn keyword libaoKeyword default_driver hi def link libaoTodo Todo hi def link libaoComment Comment hi def link libaoKeyword Keyword let b:current_syntax = "libao" let &cpo = s:cpo_save unlet s:cpo_save PK&] glHECECvim80/syntax/ratpoison.vimnu[" Vim syntax file " Language: Ratpoison configuration/commands file ( /etc/ratpoisonrc ~/.ratpoisonrc ) " Maintainer: Magnus Woldrich " URL: http://github.com/trapd00r/vim-syntax-ratpoison " Last Change: 2011 Apr 11 " Previous Maintainer: Doug Kearns " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn match ratpoisonComment "^\s*#.*$" contains=ratpoisonTodo syn keyword ratpoisonTodo TODO NOTE FIXME XXX contained syn case ignore syn keyword ratpoisonBooleanArg on off contained syn case match syn keyword ratpoisonCommandArg abort addhook alias banish chdir contained syn keyword ratpoisonCommandArg clrunmanaged cnext colon compat cother contained syn keyword ratpoisonCommandArg cprev curframe dedicate definekey delete contained syn keyword ratpoisonCommandArg delkmap describekey echo escape exec contained syn keyword ratpoisonCommandArg fdump focus focusdown focuslast focusleft contained syn keyword ratpoisonCommandArg focusprev focusright focusup frestore fselect contained syn keyword ratpoisonCommandArg gdelete getenv getsel gmerge gmove contained syn keyword ratpoisonCommandArg gnew gnewbg gnext gprev gravity contained syn keyword ratpoisonCommandArg groups gselect help hsplit inext contained syn keyword ratpoisonCommandArg info iother iprev kill lastmsg contained syn keyword ratpoisonCommandArg license link listhook meta msgwait contained syn keyword ratpoisonCommandArg newkmap newwm next nextscreen number contained syn keyword ratpoisonCommandArg only other prev prevscreen prompt contained syn keyword ratpoisonCommandArg putsel quit ratclick rathold ratrelwarp contained syn keyword ratpoisonCommandArg ratwarp readkey redisplay redo remhook contained syn keyword ratpoisonCommandArg remove resize restart rudeness sdump contained syn keyword ratpoisonCommandArg select set setenv sfdump shrink contained syn keyword ratpoisonCommandArg source sselect startup_message time title contained syn keyword ratpoisonCommandArg tmpwm unalias undefinekey undo unmanage contained syn keyword ratpoisonCommandArg unsetenv verbexec version vsplit warp contained syn keyword ratpoisonCommandArg windows contained syn match ratpoisonGravityArg "\<\(n\|north\)\>" contained syn match ratpoisonGravityArg "\<\(nw\|northwest\)\>" contained syn match ratpoisonGravityArg "\<\(ne\|northeast\)\>" contained syn match ratpoisonGravityArg "\<\(w\|west\)\>" contained syn match ratpoisonGravityArg "\<\(c\|center\)\>" contained syn match ratpoisonGravityArg "\<\(e\|east\)\>" contained syn match ratpoisonGravityArg "\<\(s\|south\)\>" contained syn match ratpoisonGravityArg "\<\(sw\|southwest\)\>" contained syn match ratpoisonGravityArg "\<\(se\|southeast\)\>" contained syn case match syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(F[1-9][0-9]\=\|\(\a\|\d\)\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(space\|exclam\|quotedbl\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(numbersign\|dollar\|percent\|ampersand\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(apostrophe\|quoteright\|parenleft\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(parenright\|asterisk\|plus\|comma\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(minus\|period\|slash\|colon\|semicolon\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(less\|equal\|greater\|question\|at\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(bracketleft\|backslash\|bracketright\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(asciicircum\|underscore\|grave\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(quoteleft\|braceleft\|bar\|braceright\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(asciitilde\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(BackSpace\|Tab\|Linefeed\|Clear\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Return\|Pause\|Scroll_Lock\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Sys_Req\|Escape\|Delete\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Home\|Left\|Up\|Right\|Down\|Prior\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Page_Up\|Next\|Page_Down\|End\|Begin\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Select\|Print\|Execute\|Insert\|Undo\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Redo\|Menu\|Find\|Cancel\|Help\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=\(Break\|Mode_switch\|script_switch\|Num_Lock\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=KP_\(Space\|Tab\|Enter\|F[1234]\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=KP_\(Home\|Left\|Up\|Right\|Down\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=KP_\(Prior\|Page_Up\|Next\|Page_Down\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=KP_\(End\|Begin\|Insert\|Delete\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=KP_\(Equal\|Multiply\|Add\|Separator\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonKeySeqArg "\<\([CMASH]\(-[CMASH]\)\{,4}-\)\=KP_\(Subtract\|Decimal\|Divide\|\d\)\>" contained nextgroup=ratpoisonCommandArg skipwhite syn match ratpoisonHookArg "\<\(key\|switchwin\|switchframe\|switchgroup\|quit\|restart\)\>" contained syn match ratpoisonNumberArg "\<\d\+\>" contained nextgroup=ratpoisonNumberArg skipwhite syn keyword ratpoisonSetArg barborder contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg bargravity contained nextgroup=ratpoisonGravityArg syn keyword ratpoisonSetArg barpadding contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg bgcolor syn keyword ratpoisonSetArg border contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg fgcolor syn keyword ratpoisonSetArg fwcolor syn keyword ratpoisonSetArg bwcolor syn keyword ratpoisonSetArg historysize syn keyword ratpoisonSetArg historycompaction syn keyword ratpoisonSetArg historyexpansion syn keyword ratpoisonSetArg topkmap syn keyword ratpoisonSetArg barinpadding syn keyword ratpoisonSetArg font syn keyword ratpoisonSetArg framesels syn keyword ratpoisonSetArg inputwidth contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg maxsizegravity contained nextgroup=ratpoisonGravityArg syn keyword ratpoisonSetArg padding contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg resizeunit contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg transgravity contained nextgroup=ratpoisonGravityArg syn keyword ratpoisonSetArg waitcursor contained nextgroup=ratpoisonNumberArg syn keyword ratpoisonSetArg winfmt contained nextgroup=ratpoisonWinFmtArg syn keyword ratpoisonSetArg wingravity contained nextgroup=ratpoisonGravityArg syn keyword ratpoisonSetArg winliststyle contained nextgroup=ratpoisonWinListArg syn keyword ratpoisonSetArg winname contained nextgroup=ratpoisonWinNameArg syn match ratpoisonWinFmtArg "%[nstacil]" contained nextgroup=ratpoisonWinFmtArg skipwhite syn match ratpoisonWinListArg "\<\(row\|column\)\>" contained syn match ratpoisonWinNameArg "\<\(name\|title\|class\)\>" contained syn match ratpoisonDefCommand "^\s*set\s*" nextgroup=ratpoisonSetArg syn match ratpoisonDefCommand "^\s*defbarborder\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*defbargravity\s*" nextgroup=ratpoisonGravityArg syn match ratpoisonDefCommand "^\s*defbarpadding\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*defbgcolor\s*" syn match ratpoisonDefCommand "^\s*defborder\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*deffgcolor\s*" syn match ratpoisonDefCommand "^\s*deffont\s*" syn match ratpoisonDefCommand "^\s*defframesels\s*" syn match ratpoisonDefCommand "^\s*definputwidth\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*defmaxsizegravity\s*" nextgroup=ratpoisonGravityArg syn match ratpoisonDefCommand "^\s*defpadding\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*defresizeunit\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*deftransgravity\s*" nextgroup=ratpoisonGravityArg syn match ratpoisonDefCommand "^\s*defwaitcursor\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonDefCommand "^\s*defwinfmt\s*" nextgroup=ratpoisonWinFmtArg syn match ratpoisonDefCommand "^\s*defwingravity\s*" nextgroup=ratpoisonGravityArg syn match ratpoisonDefCommand "^\s*defwinliststyle\s*" nextgroup=ratpoisonWinListArg syn match ratpoisonDefCommand "^\s*defwinname\s*" nextgroup=ratpoisonWinNameArg syn match ratpoisonDefCommand "^\s*msgwait\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonStringCommand "^\s*\zsaddhook\ze\s*" nextgroup=ratpoisonHookArg syn match ratpoisonStringCommand "^\s*\zsalias\ze\s*" syn match ratpoisonStringCommand "^\s*\zsbind\ze\s*" nextgroup=ratpoisonKeySeqArg syn match ratpoisonStringCommand "^\s*\zschdir\ze\s*" syn match ratpoisonStringCommand "^\s*\zscolon\ze\s*" nextgroup=ratpoisonCommandArg syn match ratpoisonStringCommand "^\s*\zsdedicate\ze\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonStringCommand "^\s*\zsdefinekey\ze\s*" syn match ratpoisonStringCommand "^\s*\zsdelkmap\ze\s*" syn match ratpoisonStringCommand "^\s*\zsdescribekey\ze\s*" syn match ratpoisonStringCommand "^\s*\zsecho\ze\s*" syn match ratpoisonStringCommand "^\s*\zsescape\ze\s*" nextgroup=ratpoisonKeySeqArg syn match ratpoisonStringCommand "^\s*\zsexec\ze\s*" syn match ratpoisonStringCommand "^\s*\zsfdump\ze\s*" syn match ratpoisonStringCommand "^\s*\zsfrestore\ze\s*" syn match ratpoisonStringCommand "^\s*\zsgdelete\ze\s*" syn match ratpoisonStringCommand "^\s*\zsgetenv\ze\s*" syn match ratpoisonStringCommand "^\s*\zsgravity\ze\s*" nextgroup=ratpoisonGravityArg syn match ratpoisonStringCommand "^\s*\zsgselect\ze\s*" syn match ratpoisonStringCommand "^\s*\zslink\ze\s*" nextgroup=ratpoisonKeySeqArg syn match ratpoisonStringCommand "^\s*\zslisthook\ze\s*" nextgroup=ratpoisonHookArg syn match ratpoisonStringCommand "^\s*\zsnewkmap\ze\s*" syn match ratpoisonStringCommand "^\s*\zsnewwm\ze\s*" syn match ratpoisonStringCommand "^\s*\zsnumber\ze\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonStringCommand "^\s*\zsprompt\ze\s*" syn match ratpoisonStringCommand "^\s*\zsratwarp\ze\s*" syn match ratpoisonStringCommand "^\s*\zsratrelwarp\ze\s*" syn match ratpoisonStringCommand "^\s*\zsratclick\ze\s*" syn match ratpoisonStringCommand "^\s*\zsrathold\ze\s*" syn match ratpoisonStringCommand "^\s*\zsreadkey\ze\s*" syn match ratpoisonStringCommand "^\s*\zsremhook\ze\s*" nextgroup=ratpoisonHookArg syn match ratpoisonStringCommand "^\s*\zsresize\ze\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonStringCommand "^\s*\zsrudeness\ze\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonStringCommand "^\s*\zsselect\ze\s*" nextgroup=ratpoisonNumberArg syn match ratpoisonStringCommand "^\s*\zssetenv\ze\s*" syn match ratpoisonStringCommand "^\s*\zssource\ze\s*" syn match ratpoisonStringCommand "^\s*\zssselect\ze\s*" syn match ratpoisonStringCommand "^\s*\zsstartup_message\ze\s*" nextgroup=ratpoisonBooleanArg syn match ratpoisonStringCommand "^\s*\zstitle\ze\s*" syn match ratpoisonStringCommand "^\s*\zstmpwm\ze\s*" syn match ratpoisonStringCommand "^\s*\zsunalias\ze\s*" syn match ratpoisonStringCommand "^\s*\zsunbind\ze\s*" nextgroup=ratpoisonKeySeqArg syn match ratpoisonStringCommand "^\s*\zsundefinekey\ze\s*" syn match ratpoisonStringCommand "^\s*\zsunmanage\ze\s*" syn match ratpoisonStringCommand "^\s*\zsunsetenv\ze\s*" syn match ratpoisonStringCommand "^\s*\zsverbexec\ze\s*" syn match ratpoisonStringCommand "^\s*\zswarp\ze\s*" nextgroup=ratpoisonBooleanArg syn match ratpoisonVoidCommand "^\s*\zsabort\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsbanish\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsclrunmanaged\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zscnext\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zscompat\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zscother\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zscprev\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zscurframe\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsdelete\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocusdown\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocuslast\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocusleft\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocusprev\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocusright\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocusup\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfocus\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsfselect\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgetsel\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgmerge\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgmove\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgnewbg\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgnew\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgnext\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgprev\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsgroups\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zshelp\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zshsplit\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsinext\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsinfo\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsiother\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsiprev\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zskill\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zslastmsg\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zslicense\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsmeta\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsnextscreen\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsnext\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsonly\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsother\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsprevscreen\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsprev\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsputsel\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsquit\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsredisplay\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsredo\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsremove\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsrestart\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zssdump\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zssfdump\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsshrink\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zssplit\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zstime\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsundo\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsversion\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zsvsplit\ze\s*$" syn match ratpoisonVoidCommand "^\s*\zswindows\ze\s*$" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link ratpoisonBooleanArg Boolean hi def link ratpoisonCommandArg Keyword hi def link ratpoisonComment Comment hi def link ratpoisonDefCommand Identifier hi def link ratpoisonGravityArg Constant hi def link ratpoisonKeySeqArg Special hi def link ratpoisonNumberArg Number hi def link ratpoisonSetArg Keyword hi def link ratpoisonStringCommand Identifier hi def link ratpoisonTodo Todo hi def link ratpoisonVoidCommand Identifier hi def link ratpoisonWinFmtArg Special hi def link ratpoisonWinNameArg Constant hi def link ratpoisonWinListArg Constant let b:current_syntax = "ratpoison" " vim: ts=8 PK&]wvim80/syntax/kscript.vimnu[" Vim syntax file " Language: kscript " Maintainer: Thomas Capricelli " URL: http://aquila.rezel.enst.fr/thomas/vim/kscript.vim " CVS: $Id: kscript.vim,v 1.1 2004/06/13 17:40:02 vimboss Exp $ " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn keyword kscriptPreCondit import from syn keyword kscriptHardCoded print println connect length arg mid upper lower isEmpty toInt toFloat findApplication syn keyword kscriptConditional if else switch syn keyword kscriptRepeat while for do foreach syn keyword kscriptExceptions emit catch raise try signal syn keyword kscriptFunction class struct enum syn keyword kscriptConst FALSE TRUE false true syn keyword kscriptStatement return delete syn keyword kscriptLabel case default syn keyword kscriptStorageClass const syn keyword kscriptType in out inout var syn keyword kscriptTodo contained TODO FIXME XXX syn region kscriptComment start="/\*" end="\*/" contains=kscriptTodo syn match kscriptComment "//.*" contains=kscriptTodo syn match kscriptComment "#.*$" contains=kscriptTodo syn region kscriptString start=+'+ end=+'+ skip=+\\\\\|\\'+ syn region kscriptString start=+"+ end=+"+ skip=+\\\\\|\\"+ syn region kscriptString start=+"""+ end=+"""+ syn region kscriptString start=+'''+ end=+'''+ " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link kscriptConditional Conditional hi def link kscriptRepeat Repeat hi def link kscriptExceptions Statement hi def link kscriptFunction Function hi def link kscriptConst Constant hi def link kscriptStatement Statement hi def link kscriptLabel Label hi def link kscriptStorageClass StorageClass hi def link kscriptType Type hi def link kscriptTodo Todo hi def link kscriptComment Comment hi def link kscriptString String hi def link kscriptPreCondit PreCondit hi def link kscriptHardCoded Statement let b:current_syntax = "kscript" " vim: ts=8 PK&]64vim80/syntax/robots.vimnu[" Vim syntax file " Language: "Robots.txt" files " Robots.txt files indicate to WWW robots which parts of a web site should not be accessed. " Maintainer: Dominique Stphan (dominique@mggen.com) " URL: http://www.mggen.com/vim/syntax/robots.zip " Last change: 2001 May 09 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " shut case off syn case ignore " Comment syn match robotsComment "#.*$" contains=robotsUrl,robotsMail,robotsString " Star * (means all spiders) syn match robotsStar "\*" " : syn match robotsDelimiter ":" " The keywords " User-agent syn match robotsAgent "^[Uu][Ss][Ee][Rr]\-[Aa][Gg][Ee][Nn][Tt]" " Disallow syn match robotsDisallow "^[Dd][Ii][Ss][Aa][Ll][Ll][Oo][Ww]" " Disallow: or User-Agent: and the rest of the line before an eventual comment synt match robotsLine "\(^[Uu][Ss][Ee][Rr]\-[Aa][Gg][Ee][Nn][Tt]\|^[Dd][Ii][Ss][Aa][Ll][Ll][Oo][Ww]\):[^#]*" contains=robotsAgent,robotsDisallow,robotsStar,robotsDelimiter " Some frequent things in comments syn match robotsUrl "http[s]\=://\S*" syn match robotsMail "\S*@\S*" syn region robotsString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ hi def link robotsComment Comment hi def link robotsAgent Type hi def link robotsDisallow Statement hi def link robotsLine Special hi def link robotsStar Operator hi def link robotsDelimiter Delimiter hi def link robotsUrl String hi def link robotsMail String hi def link robotsString String let b:current_syntax = "robots" " vim: ts=8 sw=2 PK&]cz.jjvim80/syntax/taskedit.vimnu[" Vim syntax file " Language: support for 'task 42 edit' " Maintainer: John Florian " Updated: Wed Jul 8 19:46:32 EDT 2009 " quit when a syntax file was already loaded. if exists("b:current_syntax") finish endif let s:keepcpo= &cpo set cpo&vim syn match taskeditHeading "^\s*#\s*Name\s\+Editable details\s*$" contained syn match taskeditHeading "^\s*#\s*-\+\s\+-\+\s*$" contained syn match taskeditReadOnly "^\s*#\s*\(UU\)\?ID:.*$" contained syn match taskeditReadOnly "^\s*#\s*Status:.*$" contained syn match taskeditReadOnly "^\s*#\s*i\?Mask:.*$" contained syn match taskeditKey "^ *.\{-}:" nextgroup=taskeditString syn match taskeditComment "^\s*#.*$" \ contains=taskeditReadOnly,taskeditHeading syn match taskeditString ".*$" contained contains=@Spell " The default methods for highlighting. Can be overridden later. hi def link taskeditComment Comment hi def link taskeditHeading Function hi def link taskeditKey Statement hi def link taskeditReadOnly Special hi def link taskeditString String let b:current_syntax = "taskedit" let &cpo = s:keepcpo unlet s:keepcpo " vim:noexpandtab PK&]Fy9U.U.vim80/syntax/autohotkey.vimnu[" Vim syntax file " Language: AutoHotkey script file " Maintainer: Michael Wong " https://github.com/mmikeww/autohotkey.vim " Latest Revision: 2017-04-03 " Previous Maintainers: SungHyun Nam " Nikolai Weibull if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore syn keyword autohotkeyTodo \ contained \ TODO FIXME XXX NOTE " only these chars are valid as escape sequences: ,%`;nrbtvaf " https://autohotkey.com/docs/commands/_EscapeChar.htm syn match autohotkeyEscape \ display \ '`[,%`;nrbtvaf]' syn region autohotkeyString \ display \ oneline \ matchgroup=autohotkeyStringDelimiter \ start=+"+ \ end=+"+ \ contains=autohotkeyEscape syn match autohotkeyVariable \ display \ oneline \ contains=autohotkeyBuiltinVariable \ keepend \ '%\S\{-}%' syn keyword autohotkeyBuiltinVariable \ A_Space A_Tab \ A_WorkingDir A_ScriptDir A_ScriptName A_ScriptFullPath A_ScriptHwnd A_LineNumber \ A_LineFile A_ThisFunc A_ThisLabel A_AhkVersion A_AhkPath A_IsUnicode A_IsCompiled A_ExitReason \ A_YYYY A_MM A_DD A_MMMM A_MMM A_DDDD A_DDD A_WDay A_YDay A_YWeek A_Hour A_Min \ A_Mon A_Year A_MDay A_NumBatchLines \ A_Sec A_MSec A_Now A_NowUTC A_TickCount \ A_IsSuspended A_IsPaused A_IsCritical A_BatchLines A_TitleMatchMode A_TitleMatchModeSpeed \ A_DetectHiddenWindows A_DetectHiddenText A_AutoTrim A_StringCaseSense \ A_FileEncoding A_FormatInteger A_FormatFloat A_KeyDelay A_WinDelay A_ControlDelay \ A_SendMode A_SendLevel A_StoreCapsLockMode A_KeyDelay A_KeyDelayDuration \ A_KeyDelayPlay A_KeyDelayPlayDuration A_MouseDelayPlay \ A_MouseDelay A_DefaultMouseSpeed A_RegView A_IconHidden A_IconTip A_IconFile \ A_CoordModeToolTip A_CoordModePixel A_CoordModeMouse A_CoordModeCaret A_CoordModeMenu \ A_IconNumber \ A_TimeIdle A_TimeIdlePhysical A_DefaultGui A_DefaultListView A_DefaultTreeView \ A_Gui A_GuiControl A_GuiWidth A_GuiHeight A_GuiX A_GuiY A_GuiEvent \ A_GuiControlEvent A_EventInfo \ A_ThisMenuItem A_ThisMenu A_ThisMenuItemPos A_ThisHotkey A_PriorHotkey \ A_PriorKey A_TimeSinceThisHotkey A_TimeSincePriorHotkey A_EndChar \ ComSpec A_Temp A_OSType A_OSVersion A_Language A_ComputerName A_UserName \ A_Is64BitOS A_PtrSize \ A_WinDir A_ProgramFiles ProgramFiles A_AppData A_AppDataCommon A_Desktop \ A_DesktopCommon A_StartMenu A_StartMenuCommon A_Programs \ A_ProgramsCommon A_Startup A_StartupCommon A_MyDocuments A_IsAdmin \ A_ScreenWidth A_ScreenHeight A_ScreenDPI A_IPAddress1 A_IPAddress2 A_IPAddress3 \ A_IPAddress4 \ A_Cursor A_CaretX A_CaretY Clipboard ClipboardAll ErrorLevel A_LastError \ A_Index A_LoopFileName A_LoopRegName A_LoopReadLine A_LoopField \ A_LoopFileExt A_LoopFileFullPath A_LoopFileLongPath A_LoopFileShortPath \ A_LoopFileShortName A_LoopFileDir A_LoopFileTimeModified A_LoopFileTimeCreated \ A_LoopFileTimeAccessed A_LoopFileAttrib A_LoopFileSize A_LoopFileSizeKB A_LoopFileSizeMB \ A_LoopRegType A_LoopRegKey A_LoopRegSubKey A_LoopRegTimeModified syn match autohotkeyBuiltinVariable \ contained \ display \ '%\d\+%' syn keyword autohotkeyCommand \ ClipWait EnvGet EnvSet EnvUpdate \ Drive DriveGet DriveSpaceFree FileAppend FileCopy FileCopyDir \ FileCreateDir FileCreateShortcut FileDelete FileGetAttrib FileEncoding \ FileGetShortcut FileGetSize FileGetTime FileGetVersion FileInstall \ FileMove FileMoveDir FileReadLine FileRead FileRecycle FileRecycleEmpty \ FileRemoveDir FileSelectFolder FileSelectFile FileSetAttrib FileSetTime \ IniDelete IniRead IniWrite SetWorkingDir \ SplitPath \ Gui GuiControl GuiControlGet IfMsgBox InputBox MsgBox Progress \ SplashImage SplashTextOn SplashTextOff ToolTip TrayTip \ Hotkey ListHotkeys BlockInput ControlSend ControlSendRaw GetKeyState \ KeyHistory KeyWait Input Send SendRaw SendInput SendPlay SendEvent \ SendMode SetKeyDelay SetNumScrollCapsLockState SetStoreCapslockMode \ EnvAdd EnvDiv EnvMult EnvSub Random SetFormat Transform \ AutoTrim BlockInput CoordMode Critical Edit ImageSearch \ ListLines ListVars Menu OutputDebug PixelGetColor PixelSearch \ SetBatchLines SetEnv SetTimer SysGet Thread Transform URLDownloadToFile \ Click ControlClick MouseClick MouseClickDrag MouseGetPos MouseMove \ SetDefaultMouseSpeed SetMouseDelay \ Process Run RunWait RunAs Shutdown Sleep \ RegDelete RegRead RegWrite \ SoundBeep SoundGet SoundGetWaveVolume SoundPlay SoundSet \ SoundSetWaveVolume \ FormatTime IfInString IfNotInString Sort StringCaseSense StringGetPos \ StringLeft StringRight StringLower StringUpper StringMid StringReplace \ StringSplit StringTrimLeft StringTrimRight StringLen \ StrSplit StrReplace Throw \ Control ControlClick ControlFocus ControlGet ControlGetFocus \ ControlGetPos ControlGetText ControlMove ControlSend ControlSendRaw \ ControlSetText Menu PostMessage SendMessage SetControlDelay \ WinMenuSelectItem GroupActivate GroupAdd GroupClose GroupDeactivate \ DetectHiddenText DetectHiddenWindows SetTitleMatchMode SetWinDelay \ StatusBarGetText StatusBarWait WinActivate WinActivateBottom WinClose \ WinGet WinGetActiveStats WinGetActiveTitle WinGetClass WinGetPos \ WinGetText WinGetTitle WinHide WinKill WinMaximize WinMinimize \ WinMinimizeAll WinMinimizeAllUndo WinMove WinRestore WinSet \ WinSetTitle WinShow WinWait WinWaitActive WinWaitNotActive WinWaitClose \ SetCapsLockState SetNumLockState SetScrollLockState syn keyword autohotkeyFunction \ InStr RegExMatch RegExReplace StrLen SubStr Asc Chr Func \ DllCall VarSetCapacity WinActive WinExist IsLabel OnMessage \ Abs Ceil Exp Floor Log Ln Mod Round Sqrt Sin Cos Tan ASin ACos ATan \ FileExist GetKeyState NumGet NumPut StrGet StrPut RegisterCallback \ IsFunc Trim LTrim RTrim IsObject Object Array FileOpen \ ComObjActive ComObjArray ComObjConnect ComObjCreate ComObjGet \ ComObjError ComObjFlags ComObjQuery ComObjType ComObjValue ComObject \ Format Exception syn keyword autohotkeyStatement \ Break Continue Exit ExitApp Gosub Goto OnExit Pause Return \ Suspend Reload new class extends syn keyword autohotkeyRepeat \ Loop syn keyword autohotkeyConditional \ IfExist IfNotExist If IfEqual IfLess IfGreater Else \ IfWinExist IfWinNotExist IfWinActive IfWinNotActive \ IfNotEqual IfLessOrEqual IfGreaterOrEqual \ while until for in try catch finally syn match autohotkeyPreProcStart \ nextgroup= \ autohotkeyInclude, \ autohotkeyPreProc \ skipwhite \ display \ '^\s*\zs#' syn keyword autohotkeyInclude \ contained \ Include \ IncludeAgain syn keyword autohotkeyPreProc \ contained \ HotkeyInterval HotKeyModifierTimeout \ Hotstring \ IfWinActive IfWinNotActive IfWinExist IfWinNotExist \ If IfTimeout \ MaxHotkeysPerInterval MaxThreads MaxThreadsBuffer MaxThreadsPerHotkey \ UseHook InstallKeybdHook InstallMouseHook \ KeyHistory \ NoTrayIcon SingleInstance \ WinActivateForce \ AllowSameLineComments \ ClipboardTimeout \ CommentFlag \ ErrorStdOut \ EscapeChar \ MaxMem \ NoEnv \ Persistent \ LTrim \ InputLevel \ MenuMaskKey \ Warn syn keyword autohotkeyMatchClass \ ahk_group ahk_class ahk_id ahk_pid ahk_exe syn match autohotkeyNumbers \ display \ transparent \ contains= \ autohotkeyInteger, \ autohotkeyFloat \ '\<\d\|\.\d' syn match autohotkeyInteger \ contained \ display \ '\d\+\>' syn match autohotkeyInteger \ contained \ display \ '0x\x\+\>' syn match autohotkeyFloat \ contained \ display \ '\d\+\.\d*\|\.\d\+\>' syn keyword autohotkeyType \ local \ global \ static \ byref syn keyword autohotkeyBoolean \ true \ false syn match autohotkeyHotkey \ contains=autohotkeyKey, \ autohotkeyHotkeyDelimiter \ display \ '^\s*\S*\%( Up\)\?::' syn match autohotkeyKey \ contained \ display \ '^.\{-}' syn match autohotkeyDelimiter \ contained \ display \ '::' " allowable hotstring options: " https://autohotkey.com/docs/Hotstrings.htm syn match autohotkeyHotstringDefinition \ contains=autohotkeyHotstring, \ autohotkeyHotstringDelimiter \ display \ '^\s*:\%([*?]\|[BORZ]0\?\|C[01]\?\|K\d\+\|P\d\+\|S[IPE]\)*:.\{-}::' syn match autohotkeyHotstring \ contained \ display \ '.\{-}' syn match autohotkeyHotstringDelimiter \ contained \ display \ '::' syn match autohotkeyHotstringDelimiter \ contains=autohotkeyHotstringOptions \ contained \ display \ ':\%([*?]\|[BORZ]0\?\|C[01]\?\|K\d\+\|P\d\+\|S[IPE]\)*:' syn match autohotkeyHotstringOptions \ contained \ display \ '\%([*?]\|[BORZ]0\?\|C[01]\?\|K\d\+\|P\d\+\|S[IPE]\)*' syn cluster autohotkeyCommentGroup \ contains= \ autohotkeyTodo, \ @Spell syn match autohotkeyComment \ display \ contains=@autohotkeyCommentGroup \ '\%(^;\|\s\+;\).*$' syn region autohotkeyComment \ contains=@autohotkeyCommentGroup \ matchgroup=autohotkeyCommentStart \ start='^\s*/\*' \ end='^\s*\*/' " TODO: Shouldn't we look for g:, b:, variables before defaulting to " something? if exists("g:autohotkey_syntax_sync_minlines") let b:autohotkey_syntax_sync_minlines = g:autohotkey_syntax_sync_minlines else let b:autohotkey_syntax_sync_minlines = 50 endif exec "syn sync ccomment autohotkeyComment minlines=" . b:autohotkey_syntax_sync_minlines hi def link autohotkeyTodo Todo hi def link autohotkeyComment Comment hi def link autohotkeyCommentStart autohotkeyComment hi def link autohotkeyEscape Special hi def link autohotkeyHotkey Type hi def link autohotkeyKey Type hi def link autohotkeyDelimiter Delimiter hi def link autohotkeyHotstringDefinition Type hi def link autohotkeyHotstring Type hi def link autohotkeyHotstringDelimiter autohotkeyDelimiter hi def link autohotkeyHotstringOptions Special hi def link autohotkeyString String hi def link autohotkeyStringDelimiter autohotkeyString hi def link autohotkeyVariable Identifier hi def link autohotkeyVariableDelimiter autohotkeyVariable hi def link autohotkeyBuiltinVariable Macro hi def link autohotkeyCommand Keyword hi def link autohotkeyFunction Function hi def link autohotkeyStatement autohotkeyCommand hi def link autohotkeyRepeat Repeat hi def link autohotkeyConditional Conditional hi def link autohotkeyPreProcStart PreProc hi def link autohotkeyInclude Include hi def link autohotkeyPreProc PreProc hi def link autohotkeyMatchClass Typedef hi def link autohotkeyNumber Number hi def link autohotkeyInteger autohotkeyNumber hi def link autohotkeyFloat autohotkeyNumber hi def link autohotkeyType Type hi def link autohotkeyBoolean Boolean let b:current_syntax = "autohotkey" let &cpo = s:cpo_save unlet s:cpo_save PK&],((vim80/syntax/elinks.vimnu[" Vim syntax file " Language: elinks(1) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-06-17 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn keyword elinksTodo contained TODO FIXME XXX NOTE syn region elinksComment display oneline start='#' end='$' \ contains=elinksTodo,@Spell syn match elinksNumber '\<\d\+\>' syn region elinksString start=+"+ skip=+\\\\\|\\"+ end=+"+ \ contains=@elinksColor syn keyword elinksKeyword set bind syn keyword elinksPrefix bookmarks syn keyword elinksOptions file_format syn keyword elinksPrefix config syn keyword elinksOptions comments indentation saving_style i18n \ saving_style_w show_template syn keyword elinksPrefix connection ssl client_cert syn keyword elinksOptions enable file cert_verify async_dns max_connections \ max_connections_to_host receive_timeout retries \ unrestartable_receive_timeout syn keyword elinksPrefix cookies syn keyword elinksOptions accept_policy max_age paranoid_security save resave syn keyword elinksPrefix document browse accesskey forms images links syn keyword elinksPrefix active_link colors search cache codepage colors syn keyword elinksPrefix format memory download dump history global html syn keyword elinksPrefix plain syn keyword elinksOptions auto_follow priority auto_submit confirm_submit \ input_size show_formhist file_tags \ image_link_tagging image_link_prefix \ image_link_suffix show_as_links \ show_any_as_links background text enable_color \ bold invert underline color_dirs numbering \ use_tabindex number_keys_select_link \ wraparound case regex show_hit_top_bottom \ wraparound show_not_found margin_width refresh \ minimum_refresh_time scroll_margin scroll_step \ table_move_order size size cache_redirects \ ignore_cache_control assume force_assumed text \ background link vlink dirs allow_dark_on_black \ ensure_contrast use_document_colors directory \ set_original_time overwrite notify_bell \ codepage width enable max_items display_type \ write_interval keep_unhistory display_frames \ display_tables expand_table_columns display_subs \ display_sups link_display underline_links \ wrap_nbsp display_links compress_empty_lines syn keyword elinksPrefix mime extension handler mailcap mimetypes type syn keyword elinksOptions ask block program enable path ask description \ prioritize enable path default_type syn keyword elinksPrefix protocol file cgi ftp proxy http bugs proxy syn keyword elinksPrefix referer https proxy rewrite dumb smart syn keyword elinksOptions path policy allow_special_files show_hidden_files \ try_encoding_extensions host anon_passwd \ use_pasv use_epsv accept_charset allow_blacklist \ broken_302_redirect post_no_keepalive http10 \ host user passwd policy fake accept_language \ accept_ui_language trace user_agent host \ enable-dumb enable-smart syn keyword elinksPrefix terminal syn keyword elinksOptions type m11_hack utf_8_io restrict_852 block_cursor \ colors transparency underline charset syn keyword elinksPrefix ui colors color mainmenu normal selected hotkey \ menu marked hotkey frame dialog generic \ frame scrollbar scrollbar-selected title text \ checkbox checkbox-label button button-selected \ field field-text meter shadow title title-bar \ title-text status status-bar status-text tabs \ unvisited normal loading separator searched mono syn keyword elinksOptions text background syn keyword elinksPrefix ui dialogs leds sessions tabs timer syn keyword elinksOptions listbox_min_height shadows underline_hotkeys enable \ auto_save auto_restore auto_save_foldername \ homepage show_bar wraparound confirm_close \ enable duration action language show_status_bar \ show_title_bar startup_goto_dialog \ success_msgbox window_title syn keyword elinksOptions secure_file_saving syn cluster elinksColor contains=elinksColorBlack,elinksColorDarkRed, \ elinksColorDarkGreen,elinksColorDarkYellow, \ elinksColorDarkBlue,elinksColorDarkMagenta, \ elinksColorDarkCyan,elinksColorGray, \ elinksColorDarkGray,elinksColorRed, \ elinksColorGreen,elinksColorYellow, \ elinksColorBlue,elinksColorMagenta, \ elinksColorCyan,elinksColorWhite syn keyword elinksColorBlack contained black syn keyword elinksColorDarkRed contained darkred sandybrown maroon crimson \ firebrick syn keyword elinksColorDarkGreen contained darkgreen darkolivegreen \ darkseagreen forestgreen \ mediumspringgreen seagreen syn keyword elinksColorDarkYellow contained brown blanchedalmond chocolate \ darkorange darkgoldenrod orange rosybrown \ saddlebrown peru olive olivedrab sienna syn keyword elinksColorDarkBlue contained darkblue cadetblue cornflowerblue \ darkslateblue deepskyblue midnightblue \ royalblue steelblue navy syn keyword elinksColorDarkMagenta contained darkmagenta mediumorchid \ mediumpurple mediumslateblue slateblue \ deeppink hotpink darkorchid orchid purple \ indigo syn keyword elinksColorDarkCyan contained darkcyan mediumaquamarine \ mediumturquoise darkturquoise teal syn keyword elinksColorGray contained silver dimgray lightslategray \ slategray lightgrey burlywood plum tan \ thistle syn keyword elinksColorDarkGray contained gray darkgray darkslategray \ darksalmon syn keyword elinksColorRed contained red indianred orangered tomato \ lightsalmon salmon coral lightcoral syn keyword elinksColorGreen contained green greenyellow lawngreen \ lightgreen lightseagreen limegreen \ mediumseagreen springgreen yellowgreen \ palegreen lime chartreuse syn keyword elinksColorYellow contained yellow beige darkkhaki \ lightgoldenrodyellow palegoldenrod gold \ goldenrod khaki lightyellow syn keyword elinksColorBlue contained blue aliceblue aqua aquamarine \ azure dodgerblue lightblue lightskyblue \ lightsteelblue mediumblue syn keyword elinksColorMagenta contained magenta darkviolet blueviolet \ lightpink mediumvioletred palevioletred \ violet pink fuchsia syn keyword elinksColorCyan contained cyan lightcyan powderblue skyblue \ turquoise paleturquoise syn keyword elinksColorWhite contained white antiquewhite floralwhite \ ghostwhite navajowhite whitesmoke linen \ lemonchiffon cornsilk lavender \ lavenderblush seashell mistyrose ivory \ papayawhip bisque gainsboro honeydew \ mintcream moccasin oldlace peachpuff snow \ wheat hi def link elinksTodo Todo hi def link elinksComment Comment hi def link elinksNumber Number hi def link elinksString String hi def link elinksKeyword Keyword hi def link elinksPrefix Identifier hi def link elinksOptions Identifier hi def elinksColorBlack ctermfg=Black guifg=Black hi def elinksColorDarkRed ctermfg=DarkRed guifg=DarkRed hi def elinksColorDarkGreen ctermfg=DarkGreen guifg=DarkGreen hi def elinksColorDarkYellow ctermfg=DarkYellow guifg=DarkYellow hi def elinksColorDarkBlue ctermfg=DarkBlue guifg=DarkBlue hi def elinksColorDarkMagenta ctermfg=DarkMagenta guifg=DarkMagenta hi def elinksColorDarkCyan ctermfg=DarkCyan guifg=DarkCyan hi def elinksColorGray ctermfg=Gray guifg=Gray hi def elinksColorDarkGray ctermfg=DarkGray guifg=DarkGray hi def elinksColorRed ctermfg=Red guifg=Red hi def elinksColorGreen ctermfg=Green guifg=Green hi def elinksColorYellow ctermfg=Yellow guifg=Yellow hi def elinksColorBlue ctermfg=Blue guifg=Blue hi def elinksColorMagenta ctermfg=Magenta guifg=Magenta hi def elinksColorCyan ctermfg=Cyan guifg=Cyan hi def elinksColorWhite ctermfg=White guifg=White let b:current_syntax = "elinks" let &cpo = s:cpo_save unlet s:cpo_save PK&]y__vim80/syntax/nroff.vimnu[" VIM syntax file " Language: nroff/groff " Maintainer: Pedro Alejandro Lpez-Valencia " URL: http://vorbote.wordpress.com/ " Last Change: 2012 Feb 2 " " {{{1 Acknowledgements " " ACKNOWLEDGEMENTS: " " My thanks to Jrme Plt , who was the " creator and maintainer of this syntax file for several years. " May I be as good at it as he has been. " " {{{1 Todo " " TODO: " " * Write syntax highlighting files for the preprocessors, " and integrate with nroff.vim. " " " {{{1 Start syntax highlighting. " " quit when a syntax file was already loaded " if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " " {{{1 plugin settings... " " {{{2 enable spacing error highlighting " if exists("nroff_space_errors") syn match nroffError /\s\+$/ syn match nroffSpaceError /[.,:;!?]\s\{2,}/ endif " " " {{{1 Special file settings " " {{{2 ms exdented paragraphs are not in the default paragraphs list. " setlocal paragraphs+=XP " " {{{2 Activate navigation to preporcessor sections. " if exists("b:preprocs_as_sections") setlocal sections=EQTSPS[\ G1GS endif " {{{1 Escape sequences " ------------------------------------------------------------ syn match nroffEscChar /\\[CN]/ nextgroup=nroffEscCharArg syn match nroffEscape /\\[*fgmnYV]/ nextgroup=nroffEscRegPar,nroffEscRegArg syn match nroffEscape /\\s[+-]\=/ nextgroup=nroffSize syn match nroffEscape /\\[$AbDhlLRvxXZ]/ nextgroup=nroffEscPar,nroffEscArg syn match nroffEscRegArg /./ contained syn match nroffEscRegArg2 /../ contained syn match nroffEscRegPar /(/ contained nextgroup=nroffEscRegArg2 syn match nroffEscArg /./ contained syn match nroffEscArg2 /../ contained syn match nroffEscPar /(/ contained nextgroup=nroffEscArg2 syn match nroffSize /\((\d\)\=\d/ contained syn region nroffEscCharArg start=/'/ end=/'/ contained syn region nroffEscArg start=/'/ end=/'/ contained contains=nroffEscape,@nroffSpecial if exists("b:nroff_is_groff") syn region nroffEscRegArg matchgroup=nroffEscape start=/\[/ end=/\]/ contained oneline syn region nroffSize matchgroup=nroffEscape start=/\[/ end=/\]/ contained endif syn match nroffEscape /\\[adprtu{}]/ syn match nroffEscape /\\$/ syn match nroffEscape /\\\$[@*]/ " {{{1 Strings and special characters " ------------------------------------------------------------ syn match nroffSpecialChar /\\[\\eE?!-]/ syn match nroffSpace "\\[&%~|^0)/,]" syn match nroffSpecialChar /\\(../ if exists("b:nroff_is_groff") syn match nroffSpecialChar /\\\[[^]]*]/ syn region nroffPreserve matchgroup=nroffSpecialChar start=/\\?/ end=/\\?/ oneline endif syn region nroffPreserve matchgroup=nroffSpecialChar start=/\\!/ end=/$/ oneline syn cluster nroffSpecial contains=nroffSpecialChar,nroffSpace syn region nroffString start=/"/ end=/"/ skip=/\\$/ contains=nroffEscape,@nroffSpecial contained syn region nroffString start=/'/ end=/'/ skip=/\\$/ contains=nroffEscape,@nroffSpecial contained " {{{1 Numbers and units " ------------------------------------------------------------ syn match nroffNumBlock /[0-9.]\a\=/ contained contains=nroffNumber syn match nroffNumber /\d\+\(\.\d*\)\=/ contained nextgroup=nroffUnit,nroffBadChar syn match nroffNumber /\.\d\+)/ contained nextgroup=nroffUnit,nroffBadChar syn match nroffBadChar /./ contained syn match nroffUnit /[icpPszmnvMu]/ contained " {{{1 Requests " ------------------------------------------------------------ " Requests begin with . or ' at the beginning of a line, or " after .if or .ie. syn match nroffReqLeader /^[.']/ nextgroup=nroffReqName skipwhite syn match nroffReqLeader /[.']/ contained nextgroup=nroffReqName skipwhite if exists("b:nroff_is_groff") " " GNU troff allows long request names " syn match nroffReqName /[^\t \\\[?]\+/ contained nextgroup=nroffReqArg else syn match nroffReqName /[^\t \\\[?]\{1,2}/ contained nextgroup=nroffReqArg endif syn region nroffReqArg start=/\S/ skip=/\\$/ end=/$/ contained contains=nroffEscape,@nroffSpecial,nroffString,nroffError,nroffSpaceError,nroffNumBlock,nroffComment " {{{2 Conditional: .if .ie .el syn match nroffReqName /\(if\|ie\)/ contained nextgroup=nroffCond skipwhite syn match nroffReqName /el/ contained nextgroup=nroffReqLeader skipwhite syn match nroffCond /\S\+/ contained nextgroup=nroffReqLeader skipwhite " {{{2 String definition: .ds .as syn match nroffReqname /[da]s/ contained nextgroup=nroffDefIdent skipwhite syn match nroffDefIdent /\S\+/ contained nextgroup=nroffDefinition skipwhite syn region nroffDefinition matchgroup=nroffSpecialChar start=/"/ matchgroup=NONE end=/\\"/me=e-2 skip=/\\$/ start=/\S/ end=/$/ contained contains=nroffDefSpecial syn match nroffDefSpecial /\\$/ contained syn match nroffDefSpecial /\\\((.\)\=./ contained if exists("b:nroff_is_groff") syn match nroffDefSpecial /\\\[[^]]*]/ contained endif " {{{2 Macro definition: .de .am, also diversion: .di syn match nroffReqName /\(d[ei]\|am\)/ contained nextgroup=nroffIdent skipwhite syn match nroffIdent /[^[?( \t]\+/ contained if exists("b:nroff_is_groff") syn match nroffReqName /als/ contained nextgroup=nroffIdent skipwhite endif " {{{2 Register definition: .rn .rr syn match nroffReqName /[rn]r/ contained nextgroup=nroffIdent skipwhite if exists("b:nroff_is_groff") syn match nroffReqName /\(rnn\|aln\)/ contained nextgroup=nroffIdent skipwhite endif " {{{1 eqn/tbl/pic " ------------------------------------------------------------ " " XXX: write proper syntax highlight for eqn / tbl / pic ? " syn region nroffEquation start=/^\.\s*EQ\>/ end=/^\.\s*EN\>/ syn region nroffTable start=/^\.\s*TS\>/ end=/^\.\s*TE\>/ syn region nroffPicture start=/^\.\s*PS\>/ end=/^\.\s*PE\>/ syn region nroffRefer start=/^\.\s*\[\>/ end=/^\.\s*\]\>/ syn region nroffGrap start=/^\.\s*G1\>/ end=/^\.\s*G2\>/ syn region nroffGremlin start=/^\.\s*GS\>/ end=/^\.\s*GE|GF\>/ " {{{1 Comments " ------------------------------------------------------------ syn region nroffIgnore start=/^[.']\s*ig/ end=/^['.]\s*\./ syn match nroffComment /\(^[.']\s*\)\=\\".*/ contains=nroffTodo syn match nroffComment /^'''.*/ contains=nroffTodo if exists("b:nroff_is_groff") syn match nroffComment "\\#.*$" contains=nroffTodo endif syn keyword nroffTodo TODO XXX FIXME contained " {{{1 Hilighting " ------------------------------------------------------------ " " " Define the default highlighting. " Only when an item doesn't have highlighting yet " hi def link nroffEscChar nroffSpecialChar hi def link nroffEscCharAr nroffSpecialChar hi def link nroffSpecialChar SpecialChar hi def link nroffSpace Delimiter hi def link nroffEscRegArg2 nroffEscRegArg hi def link nroffEscRegArg nroffIdent hi def link nroffEscArg2 nroffEscArg hi def link nroffEscPar nroffEscape hi def link nroffEscRegPar nroffEscape hi def link nroffEscArg nroffEscape hi def link nroffSize nroffEscape hi def link nroffEscape Preproc hi def link nroffIgnore Comment hi def link nroffComment Comment hi def link nroffTodo Todo hi def link nroffReqLeader nroffRequest hi def link nroffReqName nroffRequest hi def link nroffRequest Statement hi def link nroffCond PreCondit hi def link nroffDefIdent nroffIdent hi def link nroffIdent Identifier hi def link nroffEquation PreProc hi def link nroffTable PreProc hi def link nroffPicture PreProc hi def link nroffRefer PreProc hi def link nroffGrap PreProc hi def link nroffGremlin PreProc hi def link nroffNumber Number hi def link nroffBadChar nroffError hi def link nroffSpaceError nroffError hi def link nroffError Error hi def link nroffPreserve String hi def link nroffString String hi def link nroffDefinition String hi def link nroffDefSpecial Special let b:current_syntax = "nroff" let &cpo = s:cpo_save unlet s:cpo_save " vim600: set fdm=marker fdl=2: PK&]pivim80/syntax/hostconf.vimnu[" Vim syntax file " Language: host.conf(5) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-06-25 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword hostconfTodo \ contained \ TODO \ FIXME \ XXX \ NOTE syn match hostconfComment \ display \ contained \ '\s*#.*' \ contains=hostconfTodo, \ @Spell syn match hostconfBegin \ display \ '^' \ nextgroup=hostconfComment,hostconfKeyword \ skipwhite syn keyword hostconfKeyword \ contained \ order \ nextgroup=hostconfLookupOrder \ skipwhite let s:orders = ['bind', 'hosts', 'nis'] function s:permute_suffixes(list) if empty(a:list) return [] elseif len(a:list) == 1 return a:list[0] else let i = 0 let n = len(a:list) let sub_permutations = [] while i < n let list_copy = copy(a:list) let removed = list_copy[i] call remove(list_copy, i) call add(sub_permutations, [removed, s:permute_suffixes(list_copy)]) let i += 1 endwhile return sub_permutations endif endfunction function s:generate_suffix_groups(list_of_order_of_orders, context, trailing_context) for order_of_orders in a:list_of_order_of_orders let order = order_of_orders[0] let trailing_context = a:trailing_context . toupper(order[0]) . order[1:] let nextgroup = 'hostconfLookupOrder' . trailing_context let nextgroup_delimiter = nextgroup . 'Delimiter' let group = 'hostconfLookupOrder' . a:context execute 'syn keyword' group 'contained' order 'nextgroup=' . nextgroup_delimiter 'skipwhite' execute 'syn match' nextgroup_delimiter 'contained display "," nextgroup=' . nextgroup 'skipwhite' if a:context != "" execute 'hi def link' group 'hostconfLookupOrder' endif execute 'hi def link' nextgroup_delimiter 'hostconfLookupOrderDelimiter' let context = trailing_context if type(order_of_orders[1]) == type([]) call s:generate_suffix_groups(order_of_orders[1], context, trailing_context) else execute 'syn keyword hostconfLookupOrder' . context 'contained' order_of_orders[-1] execute 'hi def link hostconfLookupOrder' . context 'hostconfLookupOrder' endif endfor endfunction call s:generate_suffix_groups(s:permute_suffixes(s:orders), "", "") delfunction s:generate_suffix_groups delfunction s:permute_suffixes syn keyword hostconfKeyword \ contained \ trim \ nextgroup=hostconfDomain \ skipwhite syn match hostconfDomain \ contained \ '\.[^:;,[:space:]]\+' \ nextgroup=hostconfDomainDelimiter \ skipwhite syn match hostconfDomainDelimiter \ contained \ display \ '[:;,]' \ nextgroup=hostconfDomain \ skipwhite syn keyword hostconfKeyword \ contained \ multi \ nospoof \ spoofalert \ reorder \ nextgroup=hostconfBoolean \ skipwhite syn keyword hostconfBoolean \ contained \ on \ off syn keyword hostconfKeyword \ contained \ spoof \ nextgroup=hostconfSpoofValue \ skipwhite syn keyword hostconfSpoofValue \ contained \ off \ nowarn \ warn hi def link hostconfTodo Todo hi def link hostconfComment Comment hi def link hostconfKeyword Keyword hi def link hostconfLookupOrder Identifier hi def link hostconfLookupOrderDelimiter Delimiter hi def link hostconfDomain String hi def link hostconfDomainDelimiter Delimiter hi def link hostconfBoolean Boolean hi def link hostconfSpoofValue hostconfBoolean let b:current_syntax = "hostconf" let &cpo = s:cpo_save unlet s:cpo_save PK&]v2v2vim80/syntax/plsql.vimnu[" Vim syntax file " Language: Oracle Procedureal SQL (PL/SQL) " Maintainer: Jeff Lanzarotta (jefflanzarotta at yahoo dot com) " Original Maintainer: C. Laurence Gonsalves (clgonsal@kami.com) " URL: http://lanzarotta.tripod.com/vim/syntax/plsql.vim.zip " Last Change: September 18, 2002 " History: Geoff Evans & Bill Pribyl (bill at plnet dot org) " Added 9i keywords. " Austin Ziegler (austin at halostatue dot ca) " Added 8i+ features. " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Todo. syn keyword plsqlTodo TODO FIXME XXX DEBUG NOTE syn cluster plsqlCommentGroup contains=plsqlTodo syn case ignore syn match plsqlGarbage "[^ \t()]" syn match plsqlIdentifier "[a-z][a-z0-9$_#]*" syn match plsqlHostIdentifier ":[a-z][a-z0-9$_#]*" " When wanted, highlight the trailing whitespace. if exists("c_space_errors") if !exists("c_no_trail_space_error") syn match plsqlSpaceError "\s\+$" endif if !exists("c_no_tab_space_error") syn match plsqlSpaceError " \+\t"me=e-1 endif endif " Symbols. syn match plsqlSymbol "\(;\|,\|\.\)" " Operators. syn match plsqlOperator "\(+\|-\|\*\|/\|=\|<\|>\|@\|\*\*\|!=\|\~=\)" syn match plsqlOperator "\(^=\|<=\|>=\|:=\|=>\|\.\.\|||\|<<\|>>\|\"\)" " Some of Oracle's SQL keywords. syn keyword plsqlSQLKeyword ABORT ACCESS ACCESSED ADD AFTER ALL ALTER AND ANY syn keyword plsqlSQLKeyword AS ASC ATTRIBUTE AUDIT AUTHORIZATION AVG BASE_TABLE syn keyword plsqlSQLKeyword BEFORE BETWEEN BY CASCADE CAST CHECK CLUSTER syn keyword plsqlSQLKeyword CLUSTERS COLAUTH COLUMN COMMENT COMPRESS CONNECT syn keyword plsqlSQLKeyword CONSTRAINT CRASH CREATE CURRENT DATA DATABASE syn keyword plsqlSQLKeyword DATA_BASE DBA DEFAULT DELAY DELETE DESC DISTINCT syn keyword plsqlSQLKeyword DROP DUAL ELSE EXCLUSIVE EXISTS EXTENDS EXTRACT syn keyword plsqlSQLKeyword FILE FORCE FOREIGN FROM GRANT GROUP HAVING HEAP syn keyword plsqlSQLKeyword IDENTIFIED IDENTIFIER IMMEDIATE IN INCLUDING syn keyword plsqlSQLKeyword INCREMENT INDEX INDEXES INITIAL INSERT INSTEAD syn keyword plsqlSQLKeyword INTERSECT INTO INVALIDATE IS ISOLATION KEY LIBRARY syn keyword plsqlSQLKeyword LIKE LOCK MAXEXTENTS MINUS MODE MODIFY MULTISET syn keyword plsqlSQLKeyword NESTED NOAUDIT NOCOMPRESS NOT NOWAIT OF OFF OFFLINE syn keyword plsqlSQLKeyword ON ONLINE OPERATOR OPTION OR ORDER ORGANIZATION syn keyword plsqlSQLKeyword PCTFREE PRIMARY PRIOR PRIVATE PRIVILEGES PUBLIC syn keyword plsqlSQLKeyword QUOTA RELEASE RENAME REPLACE RESOURCE REVOKE ROLLBACK syn keyword plsqlSQLKeyword ROW ROWLABEL ROWS SCHEMA SELECT SEPARATE SESSION SET syn keyword plsqlSQLKeyword SHARE SIZE SPACE START STORE SUCCESSFUL SYNONYM syn keyword plsqlSQLKeyword SYSDATE TABLE TABLES TABLESPACE TEMPORARY TO TREAT syn keyword plsqlSQLKeyword TRIGGER TRUNCATE UID UNION UNIQUE UNLIMITED UPDATE syn keyword plsqlSQLKeyword USE USER VALIDATE VALUES VIEW WHENEVER WHERE WITH " PL/SQL's own keywords. syn keyword plsqlKeyword AGENT AND ANY ARRAY ASSIGN AS AT AUTHID BEGIN BODY BY syn keyword plsqlKeyword BULK C CASE CHAR_BASE CHARSETFORM CHARSETID CLOSE syn keyword plsqlKeyword COLLECT CONSTANT CONSTRUCTOR CONTEXT CURRVAL DECLARE syn keyword plsqlKeyword DVOID EXCEPTION EXCEPTION_INIT EXECUTE EXIT FETCH syn keyword plsqlKeyword FINAL FUNCTION GOTO HASH IMMEDIATE IN INDICATOR syn keyword plsqlKeyword INSTANTIABLE IS JAVA LANGUAGE LIBRARY MAP MAXLEN syn keyword plsqlKeyword MEMBER NAME NEW NOCOPY NUMBER_BASE OBJECT OCICOLL syn keyword plsqlKeyword OCIDATE OCIDATETIME OCILOBLOCATOR OCINUMBER OCIRAW syn keyword plsqlKeyword OCISTRING OF OPAQUE OPEN OR ORDER OTHERS OUT syn keyword plsqlKeyword OVERRIDING PACKAGE PARALLEL_ENABLE PARAMETERS syn keyword plsqlKeyword PARTITION PIPELINED PRAGMA PROCEDURE RAISE RANGE REF syn keyword plsqlKeyword RESULT RETURN REVERSE ROWTYPE SB1 SELF SHORT SIZE_T syn keyword plsqlKeyword SQL SQLCODE SQLERRM STATIC STRUCT SUBTYPE TDO THEN syn keyword plsqlKeyword TABLE TIMEZONE_ABBR TIMEZONE_HOUR TIMEZONE_MINUTE syn keyword plsqlKeyword TIMEZONE_REGION TYPE UNDER UNSIGNED USING VARIANCE syn keyword plsqlKeyword VARRAY VARYING WHEN WRITE syn match plsqlKeyword "\" syn match plsqlKeyword "\.COUNT\>"hs=s+1 syn match plsqlKeyword "\.EXISTS\>"hs=s+1 syn match plsqlKeyword "\.FIRST\>"hs=s+1 syn match plsqlKeyword "\.LAST\>"hs=s+1 syn match plsqlKeyword "\.DELETE\>"hs=s+1 syn match plsqlKeyword "\.PREV\>"hs=s+1 syn match plsqlKeyword "\.NEXT\>"hs=s+1 " PL/SQL functions. syn keyword plsqlFunction ABS ACOS ADD_MONTHS ASCII ASCIISTR ASIN ATAN ATAN2 syn keyword plsqlFunction BFILENAME BITAND CEIL CHARTOROWID CHR COALESCE syn keyword plsqlFunction COMMIT COMMIT_CM COMPOSE CONCAT CONVERT COS COSH syn keyword plsqlFunction COUNT CUBE CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP syn keyword plsqlFunction DBTIMEZONE DECODE DECOMPOSE DEREF DUMP EMPTY_BLOB syn keyword plsqlFunction EMPTY_CLOB EXISTS EXP FLOOR FROM_TZ GETBND GLB syn keyword plsqlFunction GREATEST GREATEST_LB GROUPING HEXTORAW INITCAP syn keyword plsqlFunction INSTR INSTR2 INSTR4 INSTRB INSTRC ISNCHAR LAST_DAY syn keyword plsqlFunction LEAST LEAST_UB LENGTH LENGTH2 LENGTH4 LENGTHB LENGTHC syn keyword plsqlFunction LN LOCALTIME LOCALTIMESTAMP LOG LOWER LPAD syn keyword plsqlFunction LTRIM LUB MAKE_REF MAX MIN MOD MONTHS_BETWEEN syn keyword plsqlFunction NCHARTOROWID NCHR NEW_TIME NEXT_DAY NHEXTORAW syn keyword plsqlFunction NLS_CHARSET_DECL_LEN NLS_CHARSET_ID NLS_CHARSET_NAME syn keyword plsqlFunction NLS_INITCAP NLS_LOWER NLSSORT NLS_UPPER NULLFN NULLIF syn keyword plsqlFunction NUMTODSINTERVAL NUMTOYMINTERVAL NVL POWER syn keyword plsqlFunction RAISE_APPLICATION_ERROR RAWTOHEX RAWTONHEX REF syn keyword plsqlFunction REFTOHEX REPLACE ROLLBACK_NR ROLLBACK_SV ROLLUP ROUND syn keyword plsqlFunction ROWIDTOCHAR ROWIDTONCHAR ROWLABEL RPAD RTRIM syn keyword plsqlFunction SAVEPOINT SESSIONTIMEZONE SETBND SET_TRANSACTION_USE syn keyword plsqlFunction SIGN SIN SINH SOUNDEX SQLCODE SQLERRM SQRT STDDEV syn keyword plsqlFunction SUBSTR SUBSTR2 SUBSTR4 SUBSTRB SUBSTRC SUM syn keyword plsqlFunction SYS_AT_TIME_ZONE SYS_CONTEXT SYSDATE SYS_EXTRACT_UTC syn keyword plsqlFunction SYS_GUID SYS_LITERALTODATE SYS_LITERALTODSINTERVAL syn keyword plsqlFunction SYS_LITERALTOTIME SYS_LITERALTOTIMESTAMP syn keyword plsqlFunction SYS_LITERALTOTZTIME SYS_LITERALTOTZTIMESTAMP syn keyword plsqlFunction SYS_LITERALTOYMINTERVAL SYS_OVER__DD SYS_OVER__DI syn keyword plsqlFunction SYS_OVER__ID SYS_OVER_IID SYS_OVER_IIT syn keyword plsqlFunction SYS_OVER__IT SYS_OVER__TI SYS_OVER__TT syn keyword plsqlFunction SYSTIMESTAMP TAN TANH TO_ANYLOB TO_BLOB TO_CHAR syn keyword plsqlFunction TO_CLOB TO_DATE TO_DSINTERVAL TO_LABEL TO_MULTI_BYTE syn keyword plsqlFunction TO_NCHAR TO_NCLOB TO_NUMBER TO_RAW TO_SINGLE_BYTE syn keyword plsqlFunction TO_TIME TO_TIMESTAMP TO_TIMESTAMP_TZ TO_TIME_TZ syn keyword plsqlFunction TO_YMINTERVAL TRANSLATE TREAT TRIM TRUNC TZ_OFFSET UID syn keyword plsqlFunction UNISTR UPPER UROWID USER USERENV VALUE VARIANCE syn keyword plsqlFunction VSIZE WORK XOR syn match plsqlFunction "\" " PL/SQL Exceptions syn keyword plsqlException ACCESS_INTO_NULL CASE_NOT_FOUND COLLECTION_IS_NULL syn keyword plsqlException CURSOR_ALREADY_OPEN DUP_VAL_ON_INDEX INVALID_CURSOR syn keyword plsqlException INVALID_NUMBER LOGIN_DENIED NO_DATA_FOUND syn keyword plsqlException NOT_LOGGED_ON PROGRAM_ERROR ROWTYPE_MISMATCH syn keyword plsqlException SELF_IS_NULL STORAGE_ERROR SUBSCRIPT_BEYOND_COUNT syn keyword plsqlException SUBSCRIPT_OUTSIDE_LIMIT SYS_INVALID_ROWID syn keyword plsqlException TIMEOUT_ON_RESOURCE TOO_MANY_ROWS VALUE_ERROR syn keyword plsqlException ZERO_DIVIDE " Oracle Pseudo Colums. syn keyword plsqlPseudo CURRVAL LEVEL NEXTVAL ROWID ROWNUM if exists("plsql_highlight_triggers") syn keyword plsqlTrigger INSERTING UPDATING DELETING endif " Conditionals. syn keyword plsqlConditional ELSIF ELSE IF syn match plsqlConditional "\" " Loops. syn keyword plsqlRepeat FOR LOOP WHILE FORALL syn match plsqlRepeat "\" " Various types of comments. if exists("c_comment_strings") syntax match plsqlCommentSkip contained "^\s*\*\($\|\s\+\)" syntax region plsqlCommentString contained start=+L\="+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=plsqlCommentSkip syntax region plsqlComment2String contained start=+L\="+ skip=+\\\\\|\\"+ end=+"+ end="$" syntax region plsqlCommentL start="--" skip="\\$" end="$" keepend contains=@plsqlCommentGroup,plsqlComment2String,plsqlCharLiteral,plsqlBooleanLiteral,plsqlNumbersCom,plsqlSpaceError syntax region plsqlComment start="/\*" end="\*/" contains=@plsqlCommentGroup,plsqlComment2String,plsqlCharLiteral,plsqlBooleanLiteral,plsqlNumbersCom,plsqlSpaceError else syntax region plsqlCommentL start="--" skip="\\$" end="$" keepend contains=@plsqlCommentGroup,plsqlSpaceError syntax region plsqlComment start="/\*" end="\*/" contains=@plsqlCommentGroup,plsqlSpaceError endif syn sync ccomment plsqlComment syn sync ccomment plsqlCommentL " To catch unterminated string literals. syn match plsqlStringError "'.*$" " Various types of literals. syn match plsqlNumbers transparent "\<[+-]\=\d\|[+-]\=\.\d" contains=plsqlIntLiteral,plsqlFloatLiteral syn match plsqlNumbersCom contained transparent "\<[+-]\=\d\|[+-]\=\.\d" contains=plsqlIntLiteral,plsqlFloatLiteral syn match plsqlIntLiteral contained "[+-]\=\d\+" syn match plsqlFloatLiteral contained "[+-]\=\d\+\.\d*" syn match plsqlFloatLiteral contained "[+-]\=\d*\.\d*" syn match plsqlCharLiteral "'[^']'" syn match plsqlStringLiteral "'\([^']\|''\)*'" syn keyword plsqlBooleanLiteral TRUE FALSE NULL " The built-in types. syn keyword plsqlStorage ANYDATA ANYTYPE BFILE BINARY_INTEGER BLOB BOOLEAN syn keyword plsqlStorage BYTE CHAR CHARACTER CLOB CURSOR DATE DAY DEC DECIMAL syn keyword plsqlStorage DOUBLE DSINTERVAL_UNCONSTRAINED FLOAT HOUR syn keyword plsqlStorage INT INTEGER INTERVAL LOB LONG MINUTE syn keyword plsqlStorage MLSLABEL MONTH NATURAL NATURALN NCHAR NCHAR_CS NCLOB syn keyword plsqlStorage NUMBER NUMERIC NVARCHAR PLS_INT PLS_INTEGER syn keyword plsqlStorage POSITIVE POSITIVEN PRECISION RAW REAL RECORD syn keyword plsqlStorage SECOND SIGNTYPE SMALLINT STRING SYS_REFCURSOR TABLE TIME syn keyword plsqlStorage TIMESTAMP TIMESTAMP_UNCONSTRAINED syn keyword plsqlStorage TIMESTAMP_TZ_UNCONSTRAINED syn keyword plsqlStorage TIMESTAMP_LTZ_UNCONSTRAINED UROWID VARCHAR syn keyword plsqlStorage VARCHAR2 YEAR YMINTERVAL_UNCONSTRAINED ZONE " A type-attribute is really a type. syn match plsqlTypeAttribute "%\(TYPE\|ROWTYPE\)\>" " All other attributes. syn match plsqlAttribute "%\(BULK_EXCEPTIONS\|BULK_ROWCOUNT\|ISOPEN\|FOUND\|NOTFOUND\|ROWCOUNT\)\>" " This'll catch mis-matched close-parens. syn cluster plsqlParenGroup contains=plsqlParenError,@plsqlCommentGroup,plsqlCommentSkip,plsqlIntLiteral,plsqlFloatLiteral,plsqlNumbersCom if exists("c_no_bracket_error") syn region plsqlParen transparent start='(' end=')' contains=ALLBUT,@plsqlParenGroup syn match plsqlParenError ")" syn match plsqlErrInParen contained "[{}]" else syn region plsqlParen transparent start='(' end=')' contains=ALLBUT,@plsqlParenGroup,plsqlErrInBracket syn match plsqlParenError "[\])]" syn match plsqlErrInParen contained "[{}]" syn region plsqlBracket transparent start='\[' end=']' contains=ALLBUT,@plsqlParenGroup,plsqlErrInParen syn match plsqlErrInBracket contained "[);{}]" endif " Syntax Synchronizing syn sync minlines=10 maxlines=100 " Define the default highlighting. " Only when an item doesn't have highlighting yet. hi def link plsqlAttribute Macro hi def link plsqlBlockError Error hi def link plsqlBooleanLiteral Boolean hi def link plsqlCharLiteral Character hi def link plsqlComment Comment hi def link plsqlCommentL Comment hi def link plsqlConditional Conditional hi def link plsqlError Error hi def link plsqlErrInBracket Error hi def link plsqlErrInBlock Error hi def link plsqlErrInParen Error hi def link plsqlException Function hi def link plsqlFloatLiteral Float hi def link plsqlFunction Function hi def link plsqlGarbage Error hi def link plsqlHostIdentifier Label hi def link plsqlIdentifier Normal hi def link plsqlIntLiteral Number hi def link plsqlOperator Operator hi def link plsqlParen Normal hi def link plsqlParenError Error hi def link plsqlSpaceError Error hi def link plsqlPseudo PreProc hi def link plsqlKeyword Keyword hi def link plsqlRepeat Repeat hi def link plsqlStorage StorageClass hi def link plsqlSQLKeyword Function hi def link plsqlStringError Error hi def link plsqlStringLiteral String hi def link plsqlCommentString String hi def link plsqlComment2String String hi def link plsqlSymbol Normal hi def link plsqlTrigger Function hi def link plsqlTypeAttribute StorageClass hi def link plsqlTodo Todo let b:current_syntax = "plsql" " vim: ts=8 sw=2 PK&]MAI^I^vim80/syntax/aml.vimnu[" Vim syntax file " Language: AML (ARC/INFO Arc Macro Language) " Written By: Nikki Knuit " Maintainer: Todd Glover " Last Change: 2001 May 10 " FUTURE CODING: Bold application commands after &sys, &tty " Only highlight aml Functions at the beginning " of [], in order to avoid -read highlighted, " or [quote] strings highlighted " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " ARC, ARCEDIT, ARCPLOT, LIBRARIAN, GRID, SCHEMAEDIT reserved words, " defined as keywords. syn keyword amlArcCmd contained 2button abb abb[reviations] abs ac acos acosh add addc[ogoatt] addcogoatt addf[eatureclass] addh[istory] addi addim[age] addindexatt addit[em] additem addressb[uild] addressc[reate] addresse[rrors] addressedit addressm[atch] addressp[arse] addresst[est] addro[utemeasure] addroutemeasure addte[xt] addto[stack] addw[orktable] addx[y] adj[ust] adm[inlicense] adr[ggrid] ads adsa[rc] ae af ag[gregate] ai ai[request] airequest al alia[s] alig[n] alt[erarchive] am[sarc] and annoa[lignment] annoadd annocapture annocl[ip] annoco[verage] annocurve annoe[dit] annoedit annof annofeature annofit annoitem annola[yer] annole[vel] annolevel annoline annooffset annop[osition] annoplace annos[ize] annoselectfeatur annoset annosum annosymbol annot annot[ext] annotext annotype ao ap apm[ode] app[end] arc arcad[s] arcar[rows] arcc[ogo] arcdf[ad] arcdi[me] arcdl[g] arcdx[f] arced[it] arcedit arcen[dtext] arcf[ont] arcigd[s] arcige[s] arcla[bel] arcli[nes] arcma[rkers] arcmo[ss] syn keyword amlArcCmd contained arcpl[ot] arcplot arcpo[int] arcr[oute] arcs arcsc[itex] arcse[ction] arcsh[ape] arcsl[f] arcsn[ap] arcsp[ot] arcte[xt] arctig[er] arctin arcto[ols] arctools arcty[pe] area areaq[uery] arm arrow arrows[ize] arrowt[ype] as asc asciig[rid] asciih[elp] asciihelp asco[nnect] asconnect asd asda[tabase] asdi[sconnect] asdisconnect asel[ect] asex[ecute] asf asin asinh asp[ect] asr[eadlocks] ast[race] at atan atan2 atanh atusage aud[ittrail] autoi[ncrement] autol[ink] axis axish[atch] axisl[abels] axisr[uler] axist[ext] bac[klocksymbol] backcoverage backenvironment backnodeangleite backsymbolitem backtextitem base[select] basi[n] bat[ch] bc be be[lls] blackout blockmaj[ority] blockmax blockmea[n] blockmed[ian] blockmin blockmino[rity] blockr[ange] blockst[d] blocksu[m] blockv[ariety] bnai bou[ndaryclean] box br[ief] bsi bti buf[fer] bug[form] bugform build builds[ta] buildv[at] calco[mp] calcomp calcu[late] cali[brateroutes] calibrateroutes can[d] cartr[ead] cartread syn keyword amlArcCmd contained cartw[rite] cartwrite cei[l] cel[lvalue] cen[troidlabels] cgm cgme[scape] cha[nge] checkin checkinrel checkout checkoutrel chm[od] chown chownt[ransaction] chowntran chowntransaction ci ci[rcle] cir class classp[rob] classs[ig] classsample clean clear clears[elect] clip clipg[raphextent] clipm[apextent] clo[sedatabase] cntvrt co cod[efind] cog[oinverse] cogocom cogoenv cogomenu coll[ocate] color color2b[lue] color2g[reen] color2h[ue] color2r[ed] color2s[at] color2v[al] colorchart coloredit colorh[cbs] colorhcbs colu[mns] comb[ine] comm[ands] commands con connect connectu[ser] cons[ist] conto[ur] contr[olpoints] convertd[oc] convertdoc converti[mage] convertla[yer] convertli[brary] convertr[emap] convertw[orkspace] coo[rdinate] coordinate coordinates copy copyf[eatures] copyi[nfo] copyl[ayer] copyo copyo[ut] copyout copys[tack] copyw[orkspace] copyworkspace cor corr[idor] correlation cos cosh costa[llocation] costb[acklink] costd[istance] costp[ath] cou[ntvertices] syn keyword amlArcCmd contained countvertices cpw cr create create2[dindex] createa[ttributes] createca[talog] createco[go] createcogo createf[eature] createind[ex] createinf[otable] createlab[els] createlay[er] createli[brary] createn[etindex] creater[emap] creates[ystables] createta[blespace] createti[n] createw[orkspace] createworkspace cs culdesac curs[or] curv[ature] curve3pt cut[fill] cutoff cw cx[or] da dar[cyflow] dat[aset] dba[seinfo] dbmsc dbmsc[ursor] dbmscursor dbmse[xecute] dbmsi[nfo] dbmss[et] de delete deletea[rrows] deletet[ic] deletew[orkspace] deleteworkspace demg[rid] deml[attice] dend[rogram] densify densifya[rc] describe describea[rchive] describel[attice] describeti[n] describetr[ans] describetrans dev df[adarc] dg dif[f] digi[tizer] digt[est] dim[earc] dir dir[ectory] directory disa[blepanzoom] disconnect disconnectu[ser] disp disp[lay] display dissolve dissolvee[vents] dissolveevents dista[nce] distr[ibutebuild] div dl[garc] do doce[ll] docu[ment] document dogroup drag syn keyword amlArcCmd contained draw drawenvironment draworder draws[ig] drawselect drawt[raverses] drawz[oneshape] drop2[dindex] dropa[rchive] dropfeaturec[lass] dropfeatures dropfr[omstack] dropgroup droph[istory] dropind[ex] dropinf[otable] dropit[em] dropla[yer] droplib[rary] droplin[e] dropline dropn[etindex] dropt[ablespace] dropw[orktable] ds dt[edgrid] dtrans du[plicate] duplicatearcs dw dxf dxfa[rc] dxfi[nfo] dynamicpan dynpan ebe ec ed edg[esnap] edgematch editboundaryerro edit[coverage] editdistance editf editfeature editp[lot] editplot edits[ig] editsymbol ef el[iminate] em[f] en[d] envrst envsav ep[s] eq equ[alto] er[ase] es et et[akarc] euca[llocation] eucdir[ection] eucdis[tance] eval eventa[rc] evente[nds] eventh[atch] eventi[nfo] eventlinee[ndtext] eventlines eventlinet[ext] eventlis[t] eventma[rkers] eventme[nu] eventmenu eventpoint eventpointt[ext] eventse[ction] eventso[urce] eventt[ransform] eventtransform exi[t] exp exp1[0] exp2 expa[nd] expo[rt] exten[d] external externala[ll] syn keyword amlArcCmd contained fd[convert] featuregroup fg fie[lddata] file fill filt[er] fix[ownership] flip flipa[ngle] float floatg[rid] floo[r] flowa[ccumulation] flowd[irection] flowl[ength] fm[od] focalf[low] focalmaj[ority] focalmax focalmea[n] focalmed[ian] focalmin focalmino[rity] focalr[ange] focalst[d] focalsu[m] focalv[ariety] fonta[rc] fontco[py] fontcr[eate] fontd[elete] fontdump fontl[oad] fontload forc[e] form[edit] formedit forms fr[equency] ge geary general[ize] generat[e] gerbera[rc] gerberr[ead] gerberread gerberw[rite] gerberwrite get getz[factor] gi gi[rasarc] gnds grai[n] graphb[ar] graphe[xtent] graphi[cs] graphicimage graphicview graphlim[its] graphlin[e] graphp[oint] graphs[hade] gray[shade] gre[aterthan] grid grida[scii] gridcl[ip] gridclip gridco[mposite] griddesk[ew] griddesp[eckle] griddi[rection] gride[dit] gridfli[p] gridflo[at] gridim[age] gridin[sert] gridl[ine] gridma[jority] gridmi[rror] gridmo[ss] gridn[et] gridnodatasymbol gridpa[int] gridpoi[nt] gridpol[y] syn keyword amlArcCmd contained gridq[uery] gridr[otate] gridshad[es] gridshap[e] gridshi[ft] gridw[arp] group groupb[y] gt gv gv[tolerance] ha[rdcopy] he[lp] help hid[densymbol] hig[hlow] hil[lshade] his[togram] historicalview ho[ldadjust] hpgl hpgl2 hsv2b[lue] hsv2g[reen] hsv2r[ed] ht[ml] hview ia ided[it] identif[y] identit[y] idw if igdsa[rc] igdsi[nfo] ige[sarc] il[lustrator] illustrator image imageg[rid] imagep[lot] imageplot imageview imp[ort] in index indexi[tem] info infodba[se] infodbm[s] infof[ile] init90[00] init9100 init9100b init91[00] init95[00] int intersect intersectarcs intersecte[rr] isn[ull] iso[cluster] it[ems] iview j[oinitem] join keeps keepselect keyan[gle] keyar[ea] keyb[ox] keyf[orms] keyl[ine] keym keym[arker] keymap keyp[osition] keyse[paration] keysh[ade] keyspot kill killm[ap] kr[iging] la labela[ngle] labele[rrors] labelm[arkers] labels labelsc[ale] labelsp[ot] labelt[ext] lal latticecl[ip] latticeco[ntour] latticed[em] latticem[erge] latticemarkers latticeo[perate] syn keyword amlArcCmd contained latticep[oly] latticerep[lace] latticeres[ample] lattices[pot] latticet[in] latticetext layer layera[nno] layerca[lculate] layerco[lumns] layerde[lete] layerdo[ts] layerdr[aw] layere[xport] layerf[ilter] layerid[entify] layerim[port] layerio[mode] layerli[st] layerloc[k] layerlog[file] layerq[uery] layerse[arch] layersp[ot] layert[ext] lc ldbmst le leadera[rrows] leaders leadersy[mbol] leadert[olerance] len[gth] les[sthan] lf lg lh li lib librari[an] library limitadjust limitautolink line line2pt linea[djustment] linecl[osureangle] linecolor linecolorr[amp] linecopy linecopyl[ayer] linedelete linedeletel[ayer] lineden[sity] linedir[ection] linedis[t] lineedit lineg[rid] lineh[ollow] lineinf[o] lineint[erval] linel[ayer] linelist linem[iterangle] lineo[ffset] linepa[ttern] linepe[n] linepu[t] linesa[ve] linesc[ale] linese[t] linesi[ze] linest[ats] linesy[mbol] linete[mplate] syn keyword amlArcCmd contained linety[pe] link[s] linkfeatures list listarchives listatt listc[overages] listcoverages listdbmstables listg[rids] listgrids listhistory listi[mages] listimages listinfotables listlayers listlibraries listo[utput] listse[lect] listst[acks] liststacks listtablespaces listti[ns] listtins listtr[averses] listtran listtransactions listw[orkspaces] listworkspaces lit ll ll[sfit] lla lm ln load loada[djacent] loadcolormap locko[nly] locks[ymbol] log log1[0] log2 logf[ile] logg[ing] loo[kup] lot[area] lp[os] lstk lt lts lw madditem majority majorityf[ilter] makere[gion] makero[ute] makese[ction] makest[ack] mal[ign] map mapa[ngle] mape[xtent] mapextent mapi[nfo] mapj[oin] mapl[imits] mappo[sition] mappr[ojection] mapsc[ale] mapsh[ift] mapu[nits] mapw[arp] mapz[oom] marker markera[ngle] markercolor markercolorr[amp] markercopy markercopyl[ayer] markerdelete markerdeletel[aye] markeredit markerf[ont] markeri[nfo] markerl[ayer] markerlist markerm[ask] markero[ffset] syn keyword amlArcCmd contained markerpa[ttern] markerpe[n] markerpu[t] markersa[ve] markersc[ale] markerse[t] markersi[ze] markersy[mbol] mas[elect] matchc[over] matchn[ode] max mb[egin] mc[opy] md[elete] me mean measure measurer[oute] measureroute med mend menu[cover] menuedit menv[ironment] merge mergeh[istory] mergev[at] mfi[t] mfr[esh] mg[roup] miadsa[rc] miadsr[ead] miadsread min minf[o] mino[rity] mir[ror] mitems mjoin ml[classify] mma[sk] mmo[ve] mn[select] mod mor[der] moran mosa[ic] mossa[rc] mossg[rid] move movee[nd] movei[tem] mp[osition] mr mr[otate] msc[ale] mse[lect] mselect mt[olerance] mu[nselect] multcurve multinv multipleadditem multipleitems multiplejoin multipleselect multprop mw[ho] nai ne near neatline neatlineg[rid] neatlineh[atch] neatlinel[abels] neatlinet[ics] new next ni[bble] nodeangleitem nodec[olor] nodee[rrors] nodem[arkers] nodep[oint] nodes nodesi[ze] nodesn[ap] nodesp[ot] nodet[ext] nor[mal] not ns[elect] oe ogrid ogridt[ool] oldwindow oo[ps] op[endatabase] or syn keyword amlArcCmd contained osymbol over overflow overflowa[rea] overflowp[osition] overflows[eparati] overl[ayevents] overlapsymbol overlayevents overp[ost] pagee[xtent] pages[ize] pageu[nits] pal[info] pan panview par[ticletrack] patc[h] path[distance] pe[nsize] pi[ck] pli[st] plot plotcopy plotg[erber] ploti[con] plotmany plotpanel plotsc[itex] plotsi[f] pointde[nsity] pointdist pointdista[nce] pointdo[ts] pointg[rid] pointi[nterp] pointm[arkers] pointn[ode] points pointsp[ot] pointst[ats] pointt[ext] polygonb[ordertex] polygond[ots] polygone[vents] polygonevents polygonl[ines] polygons polygonsh[ades] polygonsi[zelimit] polygonsp[ot] polygont[ext] polygr[id] polyr[egion] pop[ularity] por[ouspuff] pos pos[tscript] positions postscript pow prec[ision] prep[are] princ[omp] print product producti[nfo] project projectcom[pare] projectcop[y] projectd[efine] pul[litems] pur[gehistory] put pv q q[uit] quit rand rang[e] rank rb rc re readg[raphic] reads[elect] reb[ox] recl[ass] recoverdb rect[ify] syn keyword amlArcCmd contained red[o] refreshview regionb[uffer] regioncla[ss] regioncle[an] regiondi[ssolve] regiondo[ts] regione[rrors] regiong[roup] regionj[oin] regionl[ines] regionpoly regionpolyc[ount] regionpolycount regionpolyl[ist] regionpolylist regionq[uery] regions regionse[lect] regionsh[ades] regionsp[ot] regiont[ext] regionxa[rea] regionxarea regionxt[ab] regionxtab register registerd[bms] regr[ession] reindex rej[ects] rela[te] rele[ase] rem remapgrid reme[asure] remo[vescalar] remove removeback removecover removeedit removesnap removetransfer rename renamew[orkspace] renameworkspace reno[de] rep[lace] reposition resa[mple] resel[ect] reset resh[ape] restore restorearce[dit] restorearch[ive] resu[me] rgb2h[ue] rgb2s[at] rgb2v[al] rotate rotatep[lot] routea[rc] routeends routeendt[ext] routeer[rors] routeev[entspot] routeh[atch] routel[ines] routes routesp[ot] routest[ats] routet[ext] rp rs rt rt[l] rtl rv rw sa sai sample samples[ig] sav[e] savecolormap sc scal[ar] scat[tergram] syn keyword amlArcCmd contained scenefog sceneformat scenehaze sceneoversample sceneroll scenesave scenesize scenesky scitexl[ine] scitexpoi[nt] scitexpol[y] scitexr[ead] scitexread scitexw[rite] scitexwrite sco screenr[estore] screens[ave] sd sds sdtse[xport] sdtsim[port] sdtsin[fo] sdtsl[ist] se sea[rchtolerance] sectiona[rc] sectionends sectionendt[ext] sectionh[atch] sectionl[ines] sections sectionsn[ap] sectionsp[ot] sectiont[ext] sel select selectb[ox] selectc[ircle] selectg[et] selectm[ask] selectmode selectpoi[nt] selectpol[ygon] selectpu[t] selectt[ype] selectw[ithin] semivariogram sep[arator] separator ser[verstatus] setan[gle] setar[row] setce[ll] setcoa[lesce] setcon[nectinfo] setd[bmscheckin] setdrawsymbol sete[ditmode] setincrement setm[ask] setn[ull] setools setreference setsymbol setturn setw[indow] sext sf sfmt sfo sha shade shadea[ngle] shadeb[ackcolor] shadecolor shadecolorr[amp] shadecopy shadecopyl[ayer] shadedelete shadedeletel[ayer] shadeedit shadegrid shadei[nfo] shadela[yer] syn keyword amlArcCmd contained shadeli[nepattern] shadelist shadeo[ffset] shadepa[ttern] shadepe[n] shadepu[t] shadesa[ve] shadesc[ale] shadesep[aration] shadeset shadesi[ze] shadesy[mbol] shadet[ype] shapea[rc] shapef[ile] shapeg[rid] shi[ft] show showconstants showe[ditmode] shr[ink] si sin sinfo sing[leuser] sinh sink sit[e] sl slf[arc] sli[ce] slo[pe] sm smartanno snap snapc[over] snapcover snapcoverage snapenvironment snapfeatures snapitems snapo[rder] snappi[ng] snappo[ur] so[rt] sobs sos spi[der] spiraltrans spline splinem[ethod] split spot spoto[ffset] spots[ize] sproj sqr sqrt sra sre srl ss ssc ssh ssi ssky ssz sta stackh[istogram] stackprofile stacksc[attergram] stackshade stackst[ats] stati[stics] statu[s] statuscogo std stra[ighten] streamline streamlink streamo[rder] stri[pmap] subm[it] subs[elect] sum surface surfaceabbrev surfacecontours surfacedefaults surfacedrape surfaceextent surfaceinfo surfacel[ength] surfacelimits surfacemarker surfacemenu surfaceobserver surfaceprofile syn keyword amlArcCmd contained surfaceprojectio surfacerange surfaceresolutio surfacesave surfacescene surfaceshade surfacesighting surfacetarget surfacevalue surfaceviewfield surfaceviewshed surfacevisibility surfacexsection surfacezoom surfacezscale sv svfd svs sxs symboldump symboli[tem] symbolsa[ve] symbolsc[ale] symbolse[t] symbolset sz tab[les] tal[ly] tan tanh tc te tes[t] text textal[ignment] textan[gle] textcolor textcolorr[amp] textcop[y] textde[lete] textdi[rection] textedit textfil[e] textfit textfo[nt] textin[fo] textit[em] textj[ustificatio] textlist textm[ask] texto[ffset] textpe[n] textpr[ecision] textpu[t] textq[uality] textsa[ve] textsc[ale] textse[t] textset textsi[ze] textsl[ant] textspa[cing] textspl[ine] textst[yle] textsy[mbol] tf th thie[ssen] thin ti tics tict[ext] tigera[rc] tigert[ool] tigertool til[es] timped tin tina[rc] tinc[ontour] tinerrors tinhull tinl[attice] tinlines tinmarkers tins[pot] tinshades tintext tinv[rml] tl tm tol[erance] top[ogrid] topogridtool syn keyword amlArcCmd contained transa[ction] transfe[r] transfercoverage transferfeature transferitems transfersymbol transfo[rm] travrst travsav tre[nd] ts tsy tt tur[ntable] turnimpedance tut[orial] una[ry] unde[lete] undo ungenerate ungeneratet[in] unio[n] unit[s] unr[egisterdbms] unse[lect] unsp[lit] update updatei[nfoschema] updatel[abels] upo[s] us[age] v va[riety] vcgl vcgl2 veri[fy] vers[ion] vertex viewrst viewsav vip visd[ecode] visdecode vise[ncode] visencode visi[bility] vo[lume] vpfe[xport] vpfi[mport] vpfl[ist] vpft[ile] w war[p] wat[ershed] weedd[raw] weedo[perator] weedt[olerance] weedtolerance whe[re] whi[le] who wi[ndows] wm[f] wo[rkspace] workspace writec[andidates] writeg[raphic] writes[elect] wt x[or] ze[ta] zeta zi zo zonala[rea] zonalc[entroid] zonalf[ill] zonalg[eometry] zonalmaj[ority] zonalmax zonalmea[n] zonalmed[ian] zonalmin zonalmino[rity] zonalp[erimeter] zonalr[ange] zonalsta[ts] zonalstd zonalsu[m] zonalt[hickness] zonalv[ariety] zoomview zv " FORMEDIT reserved words, defined as keywords. syn keyword amlFormedCmd contained button choice display help input slider text " TABLES reserved words, defined as keywords. syn keyword amlTabCmd contained add additem alter asciihelp aselect at calc calculate change commands commit copy define directory dropindex dropitem erase external get help indexitem items kill list move nselect purge quit redefine rename reselect rollback save select show sort statistics unload update usagecontained " INFO reserved words, defined as keywords. syn keyword amlInfoCmd contained accept add adir alter dialog alter alt directory aret arithmetic expressions aselect automatic return calculate cchr change options change comi cominput commands list como comoutput compile concatenate controlling defaults copy cursor data delete data entry data manipulate data retrieval data update date format datafile create datafile management decode define delimiter dfmt directory management directory display do doend documentation done end environment erase execute exiting expand export external fc files first format forms control get goto help import input form ipf internal item types items label lchar list logical expressions log merge modify options modify move next nselect output password prif print programming program protect purge query quit recase redefine relate relate release notes remark rename report options reporting report reselect reserved words restrictions run save security select set sleep sort special form spool stop items system variables take terminal types terminal time topics list type update upf " VTRACE reserved words, defined as keywords. syn keyword amlVtrCmd contained add al arcscan arrowlength arrowwidth as aw backtrack branch bt cj clearjunction commands cs dash endofline endofsession eol eos fan fg foreground gap generalizetolerance gtol help hole js junctionsensitivity linesymbol linevariation linewidth ls lv lw markersymbol mode ms raster regionofinterest reset restore retrace roi save searchradius skip sr sta status stc std str straightenangle straightencorner straightendistance straightenrange vt vtrace " The AML reserved words, defined as keywords. syn keyword amlFunction contained abs access acos after angrad asin atan before calc close copy cos cover coverage cvtdistance date delete dignum dir directory entryname exist[s] exp extract file filelist format formatdate full getchar getchoice getcover getdatabase getdeflayers getfile getgrid getimage getitem getlayercols getlibrary getstack getsymbol gettin getunique iacclose iacconnect iacdisconnect iacopen iacrequest index indexed info invangle invdistance iteminfo joinfile keyword length listfile listitem listunique locase log max menu min mod noecho null okangle okdistance open pathname prefix query quote quoteexists r radang random read rename response round scratchname search show sin sort sqrt subst substr suffix tan task token translate trim truncate type unquote upcase username value variable verify write syn keyword amlDir contained abbreviations above all aml amlpath append arc args atool brief by call canvas cc center cl codepage commands conv_watch_to_aml coordinates cr create current cursor cwta dalines data date_format delete delvar describe dfmt digitizer display do doend dv echo else enable encode encrypt end error expansion fail file flushpoints force form format frame fullscreen function getlastpoint getpoint goto iacreturn if ignore info inform key keypad label lc left lf lg list listchar listfiles listglobal listheader listlocal listprogram listvar ll lp lr lv map matrix menu menupath menutype mess message[s] modal mouse nopaging off on others page pause pinaction popup position pt pulldown push pushpoint r repeat return right routine run runwatch rw screen seconds select self setchar severity show sidebar single size staggered station stop stripe sys system tablet tb terminal test then thread to top translate tty ty type uc ul until ur usage w warning watch when while window workspace syn keyword amlDir2 contained delvar dv s set setvar sv syn keyword amlOutput contained inform warning error pause stop tty ty type " AML Directives: syn match amlDirSym "&" syn match amlDirective "&[a-zA-Z]*" contains=amlDir,amlDir2,amlDirSym " AML Functions syn region amlFunc start="\[ *[a-zA-Z]*" end="\]" contains=amlFunction,amlVar syn match amlFunc2 "\[.*\[.*\].*\]" contains=amlFunction,amlVar " Numbers: "syn match amlNumber "-\=\<[0-9]*\.\=[0-9_]\>" " Quoted Strings: syn region amlQuote start=+"+ skip=+\\"+ end=+"+ contains=amlVar syn region amlQuote start=+'+ skip=+\\'+ end=+'+ " ARC Application Commands only selected at the beginning of the line, " or after a one line &if &then statement syn match amlAppCmd "^ *[a-zA-Z]*" contains=amlArcCmd,amlInfoCmd,amlTabCmd,amlVtrCmd,amlFormedCmd syn region amlAppCmd start="&then" end="$" contains=amlArcCmd,amlFormedCmd,amlInfoCmd,amlTabCmd,amlVtrCmd,amlFunction,amlDirective,amlVar2,amlSkip,amlVar,amlComment " Variables syn region amlVar start="%" end="%" syn region amlVar start="%" end="%" contained syn match amlVar2 "&s [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym syn match amlVar2 "&sv [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym syn match amlVar2 "&set [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym syn match amlVar2 "&setvar [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym syn match amlVar2 "&dv [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym syn match amlVar2 "&delvar [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym " Formedit 2 word commands syn match amlFormed "^ *check box" syn match amlFormed "^ *data list" syn match amlFormed "^ *symbol list" " Tables 2 word commands syn match amlTab "^ *q stop" syn match amlTab "^ *quit stop" " Comments: syn match amlComment "/\*.*" " Regions for skipping over (not highlighting) program output strings: syn region amlSkip matchgroup=amlOutput start="&call" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&routine" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&inform" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&return &inform" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&return &warning" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&return &error" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&pause" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&stop" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&tty" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&ty" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&typ" end="$" contains=amlVar syn region amlSkip matchgroup=amlOutput start="&type" end="$" contains=amlVar " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link amlComment Comment hi def link amlNumber Number hi def link amlQuote String hi def link amlVar Identifier hi def link amlVar2 Identifier hi def link amlFunction PreProc hi def link amlDir Statement hi def link amlDir2 Statement hi def link amlDirSym Statement hi def link amlOutput Statement hi def link amlArcCmd ModeMsg hi def link amlFormedCmd amlArcCmd hi def link amlTabCmd amlArcCmd hi def link amlInfoCmd amlArcCmd hi def link amlVtrCmd amlArcCmd hi def link amlFormed amlArcCmd hi def link amlTab amlArcCmd let b:current_syntax = "aml" PK&][quG G vim80/syntax/chaiscript.vimnu[" Vim syntax file " Language: ChaiScript " Maintainer: Jason Turner " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish end syn case match " syncing method syn sync fromstart " Strings syn region chaiscriptString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=chaiscriptSpecial,chaiscriptEval,@Spell " Escape characters syn match chaiscriptSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}" " String evals syn region chaiscriptEval contained start="${" end="}" " integer number syn match chaiscriptNumber "\<\d\+\>" " floating point number, with dot, optional exponent syn match chaiscriptFloat "\<\d\+\.\d*\%(e[-+]\=\d\+\)\=\>" " floating point number, starting with a dot, optional exponent syn match chaiscriptFloat "\.\d\+\%(e[-+]\=\d\+\)\=\>" " floating point number, without dot, with exponent syn match chaiscriptFloat "\<\d\+e[-+]\=\d\+\>" " Hex strings syn match chaiscriptNumber "\<0x\x\+\>" " Binary strings syn match chaiscriptNumber "\<0b[01]\+\>" " Various language features syn keyword chaiscriptCond if else syn keyword chaiscriptRepeat while for do syn keyword chaiscriptStatement break continue return syn keyword chaiscriptExceptions try catch throw "Keyword syn keyword chaiscriptKeyword def true false attr "Built in types syn keyword chaiscriptType fun var "Built in funcs, keep it simple syn keyword chaiscriptFunc eval throw "Let's treat all backtick operator function lookups as built in too syn region chaiscriptFunc matchgroup=chaiscriptFunc start="`" end="`" " Account for the "[1..10]" syntax, treating it as an operator " Intentionally leaving out all of the normal, well known operators syn match chaiscriptOperator "\.\." " Guard seperator as an operator syn match chaiscriptOperator ":" " Comments syn match chaiscriptComment "//.*$" contains=@Spell syn region chaiscriptComment matchgroup=chaiscriptComment start="/\*" end="\*/" contains=@Spell hi def link chaiscriptExceptions Exception hi def link chaiscriptKeyword Keyword hi def link chaiscriptStatement Statement hi def link chaiscriptRepeat Repeat hi def link chaiscriptString String hi def link chaiscriptNumber Number hi def link chaiscriptFloat Float hi def link chaiscriptOperator Operator hi def link chaiscriptConstant Constant hi def link chaiscriptCond Conditional hi def link chaiscriptFunction Function hi def link chaiscriptComment Comment hi def link chaiscriptTodo Todo hi def link chaiscriptError Error hi def link chaiscriptSpecial SpecialChar hi def link chaiscriptFunc Identifier hi def link chaiscriptType Type hi def link chaiscriptEval Special let b:current_syntax = "chaiscript" " vim: nowrap sw=2 sts=2 ts=8 noet PK&]Uuvim80/syntax/verilog.vimnu[" Vim syntax file " Language: Verilog " Maintainer: Mun Johl " Last Update: Wed Jul 20 16:04:19 PDT 2011 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Set the local value of the 'iskeyword' option. " NOTE: '?' was added so that verilogNumber would be processed correctly when " '?' is the last character of the number. setlocal iskeyword=@,48-57,63,_,192-255 " A bunch of useful Verilog keywords syn keyword verilogStatement always and assign automatic buf syn keyword verilogStatement bufif0 bufif1 cell cmos syn keyword verilogStatement config deassign defparam design syn keyword verilogStatement disable edge endconfig syn keyword verilogStatement endfunction endgenerate endmodule syn keyword verilogStatement endprimitive endspecify endtable endtask syn keyword verilogStatement event force function syn keyword verilogStatement generate genvar highz0 highz1 ifnone syn keyword verilogStatement incdir include initial inout input syn keyword verilogStatement instance integer large liblist syn keyword verilogStatement library localparam macromodule medium syn keyword verilogStatement module nand negedge nmos nor syn keyword verilogStatement noshowcancelled not notif0 notif1 or syn keyword verilogStatement output parameter pmos posedge primitive syn keyword verilogStatement pull0 pull1 pulldown pullup syn keyword verilogStatement pulsestyle_onevent pulsestyle_ondetect syn keyword verilogStatement rcmos real realtime reg release syn keyword verilogStatement rnmos rpmos rtran rtranif0 rtranif1 syn keyword verilogStatement scalared showcancelled signed small syn keyword verilogStatement specify specparam strong0 strong1 syn keyword verilogStatement supply0 supply1 table task time tran syn keyword verilogStatement tranif0 tranif1 tri tri0 tri1 triand syn keyword verilogStatement trior trireg unsigned use vectored wait syn keyword verilogStatement wand weak0 weak1 wire wor xnor xor syn keyword verilogLabel begin end fork join syn keyword verilogConditional if else case casex casez default endcase syn keyword verilogRepeat forever repeat while for syn keyword verilogTodo contained TODO FIXME syn match verilogOperator "[&|~>" syn match verilogGlobal "`celldefine" syn match verilogGlobal "`default_nettype" syn match verilogGlobal "`define" syn match verilogGlobal "`else" syn match verilogGlobal "`elsif" syn match verilogGlobal "`endcelldefine" syn match verilogGlobal "`endif" syn match verilogGlobal "`ifdef" syn match verilogGlobal "`ifndef" syn match verilogGlobal "`include" syn match verilogGlobal "`line" syn match verilogGlobal "`nounconnected_drive" syn match verilogGlobal "`resetall" syn match verilogGlobal "`timescale" syn match verilogGlobal "`unconnected_drive" syn match verilogGlobal "`undef" syn match verilogGlobal "$[a-zA-Z0-9_]\+\>" syn match verilogConstant "\<[A-Z][A-Z0-9_]\+\>" syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[bB]\s*[0-1_xXzZ?]\+\>" syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[oO]\s*[0-7_xXzZ?]\+\>" syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[dD]\s*[0-9_xXzZ?]\+\>" syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[hH]\s*[0-9a-fA-F_xXzZ?]\+\>" syn match verilogNumber "\<[+-]\=[0-9_]\+\(\.[0-9_]*\|\)\(e[0-9_]*\|\)\>" syn region verilogString start=+"+ skip=+\\"+ end=+"+ contains=verilogEscape,@Spell syn match verilogEscape +\\[nt"\\]+ contained syn match verilogEscape "\\\o\o\=\o\=" contained " Directives syn match verilogDirective "//\s*synopsys\>.*$" syn region verilogDirective start="/\*\s*synopsys\>" end="\*/" syn region verilogDirective start="//\s*synopsys dc_script_begin\>" end="//\s*synopsys dc_script_end\>" syn match verilogDirective "//\s*\$s\>.*$" syn region verilogDirective start="/\*\s*\$s\>" end="\*/" syn region verilogDirective start="//\s*\$s dc_script_begin\>" end="//\s*\$s dc_script_end\>" "Modify the following as needed. The trade-off is performance versus "functionality. syn sync minlines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default highlighting. hi def link verilogCharacter Character hi def link verilogConditional Conditional hi def link verilogRepeat Repeat hi def link verilogString String hi def link verilogTodo Todo hi def link verilogComment Comment hi def link verilogConstant Constant hi def link verilogLabel Label hi def link verilogNumber Number hi def link verilogOperator Special hi def link verilogStatement Statement hi def link verilogGlobal Define hi def link verilogDirective SpecialComment hi def link verilogEscape Special let b:current_syntax = "verilog" " vim: ts=8 PK&]Yvim80/syntax/tt2.vimnu[" Language: TT2 (Perl Template Toolkit) " Maintainer: vim-perl " Author: Moriki, Atsushi <4woods+vim@gmail.com> " Homepage: http://github.com/vim-perl/vim-perl " Bugs/requests: http://github.com/vim-perl/vim-perl/issues " Last Change: 2015-04-25 " " Installation: " put tt2.vim and tt2html.vim in to your syntax directory. " " add below in your filetype.vim. " au BufNewFile,BufRead *.tt2 setf tt2 " or " au BufNewFile,BufRead *.tt2 " \ if ( getline(1) . getline(2) . getline(3) =~ '<\chtml' | " \ && getline(1) . getline(2) . getline(3) !~ '<[%?]' ) | " \ || getline(1) =~ '' " "PHP" " :let b:tt2_syn_tags = '' " "TT2 and HTML" " :let b:tt2_syn_tags = '\[% %] ' " " Changes: " 0.1.3 " Changed fileformat from 'dos' to 'unix' " Deleted 'echo' that print obstructive message " 0.1.2 " Added block comment syntax " e.g. [%# COMMENT " COMMENT TOO %] " [%# IT'S SAFE %] HERE IS OUTSIDE OF TT2 DIRECTIVE " [% # WRONG!! %] HERE STILL BE COMMENT " 0.1.1 " Release " 0.1.0 " Internal " " License: follow Vim :help uganda " if !exists("b:tt2_syn_tags") let b:tt2_syn_tags = '\[% %]' "let b:tt2_syn_tags = '\[% %] \[\* \*]' endif if !exists("b:tt2_syn_inc_perl") let b:tt2_syn_inc_perl = 1 endif if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case match syn cluster tt2_top_cluster contains=tt2_perlcode,tt2_tag_region " TT2 TAG Region if exists("b:tt2_syn_tags") let s:str = b:tt2_syn_tags . ' ' let s:str = substitute(s:str,'^ \+','','g') let s:str = substitute(s:str,' \+',' ','g') while stridx(s:str,' ') > 0 let s:st = strpart(s:str,0,stridx(s:str,' ')) let s:str = substitute(s:str,'[^ ]* ','',"") let s:ed = strpart(s:str,0,stridx(s:str,' ')) let s:str = substitute(s:str,'[^ ]* ','',"") exec 'syn region tt2_tag_region '. \ 'matchgroup=tt2_tag '. \ 'start=+\(' . s:st .'\)[-]\=+ '. \ 'end=+[-]\=\(' . s:ed . '\)+ '. \ 'contains=@tt2_statement_cluster keepend extend' exec 'syn region tt2_commentblock_region '. \ 'matchgroup=tt2_tag '. \ 'start=+\(' . s:st .'\)[-]\=\(#\)\@=+ '. \ 'end=+[-]\=\(' . s:ed . '\)+ '. \ 'keepend extend' "Include Perl syntax when 'PERL' 'RAWPERL' block if b:tt2_syn_inc_perl syn include @Perl $VIMRUNTIME/syntax/perl.vim exec 'syn region tt2_perlcode '. \ 'start=+\(\(RAW\)\=PERL\s*[-]\=' . s:ed . '\(\n\)\=\)\@<=+ ' . \ 'end=+' . s:st . '[-]\=\s*END+me=s-1 contains=@Perl keepend' endif "echo 'TAGS ' . s:st . ' ' . s:ed unlet s:st unlet s:ed endwhile else syn region tt2_tag_region \ matchgroup=tt2_tag \ start=+\(\[%\)[-]\=+ \ end=+[-]\=%\]+ \ contains=@tt2_statement_cluster keepend extend syn region tt2_commentblock_region \ matchgroup=tt2_tag \ start=+\(\[%\)[-]\=#+ \ end=+[-]\=%\]+ \ keepend extend "Include Perl syntax when 'PERL' 'RAWPERL' block if b:tt2_syn_inc_perl syn include @Perl $VIMRUNTIME/syntax/perl.vim syn region tt2_perlcode \ start=+\(\(RAW\)\=PERL\s*[-]\=%]\(\n\)\=\)\@<=+ \ end=+\[%[-]\=\s*END+me=s-1 \ contains=@Perl keepend endif endif " Directive syn keyword tt2_directive contained \ GET CALL SET DEFAULT DEBUG \ LAST NEXT BREAK STOP BLOCK \ IF IN UNLESS ELSIF FOR FOREACH WHILE SWITCH CASE \ USE PLUGIN MACRO META \ TRY FINAL RETURN LAST \ CLEAR TO STEP AND OR NOT MOD DIV \ ELSE PERL RAWPERL END syn match tt2_directive +|+ contained syn keyword tt2_directive contained nextgroup=tt2_string_q,tt2_string_qq,tt2_blockname skipwhite skipempty \ INSERT INCLUDE PROCESS WRAPPER FILTER \ THROW CATCH syn keyword tt2_directive contained nextgroup=tt2_def_tag skipwhite skipempty \ TAGS syn match tt2_def_tag "\S\+\s\+\S\+\|\<\w\+\>" contained syn match tt2_variable +\I\w*+ contained syn match tt2_operator "[+*/%:?-]" contained syn match tt2_operator "\<\(mod\|div\|or\|and\|not\)\>" contained syn match tt2_operator "[!=<>]=\=\|&&\|||" contained syn match tt2_operator "\(\s\)\@<=_\(\s\)\@=" contained syn match tt2_operator "=>\|," contained syn match tt2_deref "\([[:alnum:]_)\]}]\s*\)\@<=\." contained syn match tt2_comment +#.*$+ contained extend syn match tt2_func +\<\I\w*\(\s*(\)\@=+ contained nextgroup=tt2_bracket_r skipempty skipwhite " syn region tt2_bracket_r start=+(+ end=+)+ contained contains=@tt2_statement_cluster keepend extend syn region tt2_bracket_b start=+\[+ end=+]+ contained contains=@tt2_statement_cluster keepend extend syn region tt2_bracket_b start=+{+ end=+}+ contained contains=@tt2_statement_cluster keepend extend syn region tt2_string_qq start=+"+ end=+"+ skip=+\\"+ contained contains=tt2_ivariable keepend extend syn region tt2_string_q start=+'+ end=+'+ skip=+\\'+ contained keepend extend syn match tt2_ivariable +\$\I\w*\>\(\.\I\w*\>\)*+ contained syn match tt2_ivariable +\${\I\w*\>\(\.\I\w*\>\)*}+ contained syn match tt2_number "\d\+" contained syn match tt2_number "\d\+\.\d\+" contained syn match tt2_number "0x\x\+" contained syn match tt2_number "0\o\+" contained syn match tt2_blockname "\f\+" contained nextgroup=tt2_blockname_joint skipwhite skipempty syn match tt2_blockname "$\w\+" contained contains=tt2_ivariable nextgroup=tt2_blockname_joint skipwhite skipempty syn region tt2_blockname start=+"+ end=+"+ skip=+\\"+ contained contains=tt2_ivariable nextgroup=tt2_blockname_joint keepend skipwhite skipempty syn region tt2_blockname start=+'+ end=+'+ skip=+\\'+ contained nextgroup=tt2_blockname_joint keepend skipwhite skipempty syn match tt2_blockname_joint "+" contained nextgroup=tt2_blockname skipwhite skipempty syn cluster tt2_statement_cluster contains=tt2_directive,tt2_variable,tt2_operator,tt2_string_q,tt2_string_qq,tt2_deref,tt2_comment,tt2_func,tt2_bracket_b,tt2_bracket_r,tt2_number " Synchronizing syn sync minlines=50 hi def link tt2_tag Type hi def link tt2_tag_region Type hi def link tt2_commentblock_region Comment hi def link tt2_directive Statement hi def link tt2_variable Identifier hi def link tt2_ivariable Identifier hi def link tt2_operator Statement hi def link tt2_string_qq String hi def link tt2_string_q String hi def link tt2_blockname String hi def link tt2_comment Comment hi def link tt2_func Function hi def link tt2_number Number if exists("b:tt2_syn_tags") unlet b:tt2_syn_tags endif let b:current_syntax = "tt2" let &cpo = s:cpo_save unlet s:cpo_save " vim:ts=4:sw=4 PK&]y""vim80/syntax/dircolors.vimnu[" Vim syntax file " Language: dircolors(1) input file " Maintainer: Jan Larres " Previous Maintainer: Nikolai Weibull " Latest Revision: 2018-02-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syntax keyword dircolorsTodo FIXME TODO XXX NOTE contained syntax region dircolorsComment start='#' end='$' contains=dircolorsTodo,@Spell syntax keyword dircolorsKeyword TERM LEFT LEFTCODE RIGHT RIGHTCODE END ENDCODE syntax keyword dircolorsKeyword NORMAL NORM FILE RESET DIR LNK LINK SYMLINK \ MULTIHARDLINK FIFO SOCK DOOR BLK CHR ORPHAN \ MISSING PIPE BLOCK CHR EXEC SETUID SETGID \ CAPABILITY STICKY_OTHER_WRITABLE \ OTHER_WRITABLE STICKY " Slackware only, ignored by GNU dircolors. syntax keyword dircolorsKeyword COLOR OPTIONS EIGHTBIT syntax match dircolorsExtension '^\s*\zs[.*]\S\+' syntax match dircolorsEscape '\\[abefnrtv?_\\^#]' syntax match dircolorsEscape '\\[0-9]\{3}' syntax match dircolorsEscape '\\x[0-9a-f]\{3}' if !has('gui_running') && &t_Co == '' syntax match dircolorsNumber '\<\d\+\>' highlight default link dircolorsNumber Number endif highlight default link dircolorsTodo Todo highlight default link dircolorsComment Comment highlight default link dircolorsKeyword Keyword highlight default link dircolorsExtension Identifier highlight default link dircolorsEscape Special function! s:set_guicolors() abort let s:termguicolors = {} let s:termguicolors[0] = "Black" let s:termguicolors[1] = "DarkRed" let s:termguicolors[2] = "DarkGreen" let s:termguicolors[3] = "DarkYellow" let s:termguicolors[4] = "DarkBlue" let s:termguicolors[5] = "DarkMagenta" let s:termguicolors[6] = "DarkCyan" let s:termguicolors[7] = "Gray" let s:termguicolors[8] = "DarkGray" let s:termguicolors[9] = "Red" let s:termguicolors[10] = "Green" let s:termguicolors[11] = "Yellow" let s:termguicolors[12] = "Blue" let s:termguicolors[13] = "Magenta" let s:termguicolors[14] = "Cyan" let s:termguicolors[15] = "White" let xterm_palette = ["00", "5f", "87", "af", "d7", "ff"] let cur_col = 16 for r in xterm_palette for g in xterm_palette for b in xterm_palette let s:termguicolors[cur_col] = '#' . r . g . b let cur_col += 1 endfor endfor endfor for i in range(24) let g = i * 0xa + 8 let s:termguicolors[i + 232] = '#' . g . g . g endfor endfunction function! s:get_hi_str(color, place) abort if a:color >= 0 && a:color <= 255 if has('gui_running') return ' gui' . a:place . '=' . s:termguicolors[a:color] elseif a:color <= 7 || &t_Co == 256 || &t_Co == 88 return ' cterm' . a:place . '=' . a:color endif endif return '' endfunction function! s:get_256color(colors) abort if len(a:colors) >= 2 " May be fewer while editing let [_five, color] = remove(a:colors, 0, 1) if _five != '5' || color == '' return -1 else return str2nr(color) endif else return -1 endif endfunction function! s:preview_color(linenr) abort let line = getline(a:linenr) let defline = matchlist(line, '^\v([A-Z_]+|[*.]\S+)\s+([0-9;]+)') if empty(defline) return endif let colordef = defline[2] let colors = split(colordef, ';') let hi_str = '' let hi_attrs = [] while len(colors) > 0 let item = str2nr(remove(colors, 0)) if item == 1 call add(hi_attrs, 'bold') elseif item == 3 call add(hi_attrs, 'italic') elseif item == 4 call add(hi_attrs, 'underline') elseif item == 7 call add(hi_attrs, 'inverse') elseif item >= 30 && item <= 37 " ANSI SGR foreground color let hi_str .= s:get_hi_str(item - 30, 'fg') elseif item >= 40 && item <= 47 " ANSI SGR background color let hi_str .= s:get_hi_str(item - 40, 'bg') elseif item >= 90 && item <= 97 " ANSI SGR+8 foreground color (xterm 16-color support) let hi_str .= s:get_hi_str(item - 82, 'fg') elseif item >= 100 && item <= 107 " ANSI SGR+8 background color (xterm 16-color support) let hi_str .= s:get_hi_str(item - 92, 'bg') elseif item == 38 " Foreground for terminals with 88/256 color support let color = s:get_256color(colors) if color == -1 break endif let hi_str .= s:get_hi_str(color, 'fg') elseif item == 48 " Background for terminals with 88/256 color support let color = s:get_256color(colors) if color == -1 break endif let hi_str .= s:get_hi_str(color, 'bg') endif endwhile if hi_str == '' && empty(hi_attrs) return endif " Check whether we have already defined this color redir => s:currentmatch silent! execute 'syntax list' redir END if s:currentmatch !~# '\/\\_s\\zs' . colordef . '\\ze\\_s\/' " Append the buffer number to avoid problems with other dircolors " buffers interfering let bufnr = bufnr('%') execute 'syntax match dircolorsColor' . b:dc_next_index . '_' . bufnr . \ ' "\_s\zs' . colordef . '\ze\_s"' let hi_attrs_str = '' if !empty(hi_attrs) if has('gui_running') let hi_attrs_str = ' gui=' . join(hi_attrs, ',') else let hi_attrs_str = ' cterm=' . join(hi_attrs, ',') endif endif execute 'highlight default dircolorsColor' . b:dc_next_index . '_' . \ bufnr . hi_str . hi_attrs_str let b:dc_next_index += 1 endif endfunction " Avoid accumulating too many definitions while editing function! s:reset_colors() abort if b:dc_next_index > 0 let bufnr = bufnr('%') for i in range(b:dc_next_index) execute 'syntax clear dircolorsColor' . i . '_' . bufnr execute 'highlight clear dircolorsColor' . i . '_' . bufnr endfor let b:dc_next_index = 0 endif for linenr in range(1, line('$')) call s:preview_color(linenr) endfor endfunction let b:dc_next_index = 0 if has('gui_running') call s:set_guicolors() endif if has('gui_running') || &t_Co != '' call s:reset_colors() autocmd CursorMoved,CursorMovedI call s:preview_color('.') autocmd CursorHold,CursorHoldI call s:reset_colors() endif let b:current_syntax = "dircolors" let &cpo = s:cpo_save unlet s:cpo_save PK&]+88vim80/syntax/euphoria4.vimnu[" Vim syntax file " Language: Euphoria 4.0.5 (http://www.openeuphoria.org/) " Maintainer: Shian Lee " Last Change: 2014 Feb 26 (for Vim 7.4) " Remark: Euphoria has two syntax files, euphoria3.vim and euphoria4.vim; " For details see :help ft-euphoria-syntax " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Reset compatible-options to Vim default value, just in case: let s:save_cpo = &cpo set cpo&vim " Should suffice for very long strings and expressions: syn sync lines=40 " Euphoria is a case-sensitive language (with only 4 builtin types): syntax case match " Some keywords/Builtins for Debug - from $EUDIR/include/euphoria/keywords.e: syn keyword euphoria4Debug with without trace profile batch check indirect syn keyword euphoria4Debug includes inline warning define " Keywords for conditional compilation - from $EUDIR/include/euphoria/keywords.e: syn keyword euphoria4PreProc elsedef elsifdef ifdef " Keywords (Statments) - from $EUDIR/include/euphoria/keywords.e: syn keyword euphoria4Keyword and as break by case constant continue do else syn keyword euphoria4Keyword elsif end entry enum exit export syn keyword euphoria4Keyword fallthru for function global goto if include syn keyword euphoria4Keyword label loop namespace not or override procedure syn keyword euphoria4Keyword public retry return routine switch then to type syn keyword euphoria4Keyword until while xor " Builtins (Identifiers) - from $EUDIR/include/euphoria/keywords.e: syn keyword euphoria4Builtin abort and_bits append arctan atom c_func c_proc syn keyword euphoria4Builtin call call_func call_proc clear_screen close syn keyword euphoria4Builtin command_line compare cos date delete delete_routine syn keyword euphoria4Builtin equal find floor get_key getc getenv gets hash syn keyword euphoria4Builtin head include_paths insert integer length log syn keyword euphoria4Builtin machine_func machine_proc match mem_copy mem_set syn keyword euphoria4Builtin not_bits object open option_switches or_bits peek syn keyword euphoria4Builtin peek2s peek2u peek4s peek4u peek_string peeks pixel syn keyword euphoria4Builtin platform poke poke2 poke4 position power prepend syn keyword euphoria4Builtin print printf puts rand remainder remove repeat syn keyword euphoria4Builtin replace routine_id sequence sin splice sprintf syn keyword euphoria4Builtin sqrt system system_exec tail tan task_clock_start syn keyword euphoria4Builtin task_clock_stop task_create task_list task_schedule syn keyword euphoria4Builtin task_self task_status task_suspend task_yield time syn keyword euphoria4Builtin xor_bits " Builtins (Identifiers) shortcuts for length() and print(): syn match euphoria4Builtin "\$" syn match euphoria4Builtin "?" " Library Identifiers (Function) - grep from $EUDIR/include/*: syn keyword euphoria4Library DEP_on SyntaxColor abbreviate_path abs absolute_path syn keyword euphoria4Library accept add add_item all_copyrights all_matches syn keyword euphoria4Library allocate allocate_code allocate_data allocate_low syn keyword euphoria4Library allocate_pointer_array allocate_protect syn keyword euphoria4Library allocate_string allocate_string_pointer_array syn keyword euphoria4Library allocate_wstring allocations allow_break any_key syn keyword euphoria4Library append_lines apply approx arccos arccosh arcsin syn keyword euphoria4Library arcsinh arctanh assert at atan2 atom_to_float32 syn keyword euphoria4Library atom_to_float64 attr_to_colors avedev average syn keyword euphoria4Library begins binary_search bind binop_ok bits_to_int syn keyword euphoria4Library bk_color breakup build_commandline build_list syn keyword euphoria4Library bytes_to_int calc_hash calc_primes call_back syn keyword euphoria4Library canon2win canonical canonical_path ceil syn keyword euphoria4Library central_moment chance char_test chdir syn keyword euphoria4Library check_all_blocks check_break check_free_list syn keyword euphoria4Library checksum clear clear_directory cmd_parse syn keyword euphoria4Library colors_to_attr columnize combine connect syn keyword euphoria4Library console_colors copy copy_file cosh count crash syn keyword euphoria4Library crash_file crash_message crash_routine create syn keyword euphoria4Library create_directory create_file curdir current_dir syn keyword euphoria4Library cursor custom_sort datetime days_in_month syn keyword euphoria4Library days_in_year db_cache_clear db_clear_table db_close syn keyword euphoria4Library db_compress db_connect db_create db_create_table syn keyword euphoria4Library db_current db_current_table db_delete_record syn keyword euphoria4Library db_delete_table db_dump db_fetch_record db_find_key syn keyword euphoria4Library db_get_errors db_get_recid db_insert db_open syn keyword euphoria4Library db_record_data db_record_key db_record_recid syn keyword euphoria4Library db_rename_table db_replace_data db_replace_recid syn keyword euphoria4Library db_select db_select_table db_set_caching syn keyword euphoria4Library db_table_list db_table_size deallocate decanonical syn keyword euphoria4Library decode defaulted_value defaultext define_c_func syn keyword euphoria4Library define_c_proc define_c_var deg2rad delete_file syn keyword euphoria4Library dep_works dequote deserialize diff dir dir_size syn keyword euphoria4Library dirname disk_metrics disk_size display syn keyword euphoria4Library display_text_image dnsquery driveid dump dup emovavg syn keyword euphoria4Library encode ends ensure_in_list ensure_in_range syn keyword euphoria4Library error_code error_message error_no error_string syn keyword euphoria4Library error_to_string escape euphoria_copyright exec syn keyword euphoria4Library exp extract fetch fib file_exists file_length syn keyword euphoria4Library file_timestamp file_type filebase fileext filename syn keyword euphoria4Library filter find_all find_all_but find_any find_each syn keyword euphoria4Library find_nested find_replace find_replace_callback syn keyword euphoria4Library find_replace_limit flags_to_string flatten syn keyword euphoria4Library float32_to_atom float64_to_atom flush for_each syn keyword euphoria4Library format frac free free_code free_console free_low syn keyword euphoria4Library free_pointer_array from_date from_unix gcd geomean syn keyword euphoria4Library get get_bytes get_charsets get_def_lang syn keyword euphoria4Library get_display_page get_dstring get_encoding_properties syn keyword euphoria4Library get_integer16 get_integer32 get_lang_path get_lcid syn keyword euphoria4Library get_mouse get_option get_ovector_size get_pid syn keyword euphoria4Library get_position get_rand get_screen_char get_text syn keyword euphoria4Library get_vector getaddrinfo getmxrr getnsrr graphics_mode syn keyword euphoria4Library harmean has has_console has_match hex_text syn keyword euphoria4Library host_by_addr host_by_name http_get http_post iff syn keyword euphoria4Library iif info init_class init_curdir insertion_sort syn keyword euphoria4Library instance int_to_bits int_to_bytes intdiv syn keyword euphoria4Library is_DEP_supported is_empty is_even is_even_obj syn keyword euphoria4Library is_in_list is_in_range is_inetaddr is_leap_year syn keyword euphoria4Library is_match is_using_DEP is_win_nt join join_path syn keyword euphoria4Library keep_comments keep_newlines key_codes keys keyvalues syn keyword euphoria4Library kill kurtosis lang_load larger_of largest last syn keyword euphoria4Library listen load load_map locate_file lock_file syn keyword euphoria4Library lock_memory log10 lookup lower malloc mapping syn keyword euphoria4Library match_all match_any match_replace matches max syn keyword euphoria4Library maybe_any_key median memory_used merge message_box syn keyword euphoria4Library mid min minsize mod mode money mouse_events syn keyword euphoria4Library mouse_pointer movavg move_file nested_get syn keyword euphoria4Library nested_put new new_extra new_from_kvpairs syn keyword euphoria4Library new_from_string new_time next_prime now now_gmt syn keyword euphoria4Library number open_dll optimize option_spec_to_string syn keyword euphoria4Library or_all pad_head pad_tail pairs parse syn keyword euphoria4Library parse_commandline parse_ip_address parse_querystring syn keyword euphoria4Library parse_url patch pathinfo pathname pcre_copyright syn keyword euphoria4Library peek_end peek_top peek_wstring pivot platform_name syn keyword euphoria4Library poke_string poke_wstring pop powof2 prepare_block syn keyword euphoria4Library pretty_print pretty_sprint prime_list process_lines syn keyword euphoria4Library product project prompt_number prompt_string proper syn keyword euphoria4Library push put put_integer16 put_integer32 put_screen_char syn keyword euphoria4Library quote rad2deg rand_range range raw_frequency read syn keyword euphoria4Library read_bitmap read_file read_lines receive receive_from syn keyword euphoria4Library register_block rehash remove_all remove_directory syn keyword euphoria4Library remove_dups remove_item remove_subseq rename_file syn keyword euphoria4Library repeat_pattern reset retain_all reverse rfind rmatch syn keyword euphoria4Library rnd rnd_1 roll rotate rotate_bits round safe_address syn keyword euphoria4Library sample save_bitmap save_map save_text_image scroll syn keyword euphoria4Library seek select send send_to serialize series syn keyword euphoria4Library service_by_name service_by_port set syn keyword euphoria4Library set_accumulate_summary set_charsets set_colors syn keyword euphoria4Library set_decimal_mark set_def_lang set_default_charsets syn keyword euphoria4Library set_encoding_properties set_keycodes set_lang_path syn keyword euphoria4Library set_option set_rand set_test_abort set_test_verbosity syn keyword euphoria4Library set_vector set_wait_on_summary setenv shift_bits syn keyword euphoria4Library show_block show_help show_tokens shuffle shutdown syn keyword euphoria4Library sign sim_index sinh size skewness sleep slice small syn keyword euphoria4Library smaller_of smallest sort sort_columns sound split syn keyword euphoria4Library split_any split_limit split_path sprint start_time syn keyword euphoria4Library statistics stdev store string_numbers subtract sum syn keyword euphoria4Library sum_central_moments swap tanh task_delay temp_file syn keyword euphoria4Library test_equal test_exec test_fail test_false syn keyword euphoria4Library test_not_equal test_pass test_read test_report syn keyword euphoria4Library test_true test_write text_color text_rows threshold syn keyword euphoria4Library tick_rate to_integer to_number to_string to_unix syn keyword euphoria4Library tokenize_file tokenize_string top transform translate syn keyword euphoria4Library transmute trim trim_head trim_tail trsprintf trunc syn keyword euphoria4Library type_of uname unlock_file unregister_block unsetenv syn keyword euphoria4Library upper use_vesa valid valid_index value values version syn keyword euphoria4Library version_date version_major version_minor version_node syn keyword euphoria4Library version_patch version_revision version_string syn keyword euphoria4Library version_string_long version_string_short version_type syn keyword euphoria4Library video_config vlookup vslice wait_key walk_dir syn keyword euphoria4Library warning_file weeks_day where which_bit wildcard_file syn keyword euphoria4Library wildcard_match wrap write write_file write_lines syn keyword euphoria4Library writef writefln years_day " Library Identifiers (Type) - grep from $EUDIR/include/*: syn keyword euphoria4Type ascii_string boolean bordered_address byte_range syn keyword euphoria4Type case_flagset_type color cstring syn keyword euphoria4Type file_number file_position graphics_point syn keyword euphoria4Type integer_array lcid lock_type machine_addr map syn keyword euphoria4Type mixture number_array option_spec syn keyword euphoria4Type page_aligned_address positive_int process regex syn keyword euphoria4Type sequence_array socket stack std_library_address syn keyword euphoria4Type string t_alnum t_alpha t_ascii t_boolean syn keyword euphoria4Type t_bytearray t_cntrl t_consonant t_digit t_display syn keyword euphoria4Type t_graph t_identifier t_lower t_print t_punct syn keyword euphoria4Type t_space t_specword t_text t_upper t_vowel t_xdigit syn keyword euphoria4Type valid_memory_protection_constant valid_wordsize " Linux shell comment (#!...): syn match euphoria4Comment "\%^#!.*$" " Single and multilines comments: syn region euphoria4Comment start=/--/ end=/$/ syn region euphoria4Comment start="/\*" end="\*/" " Delimiters and brackets: syn match euphoria4Delimit "[([\])]" syn match euphoria4Delimit "\.\." syn match euphoria4Delimit ":" syn match euphoria4Operator "[{}]" " Character constant: syn region euphoria4Char start=/'/ skip=/\\'\|\\\\/ end=/'/ oneline " String constant (""" must be *after* "): syn region euphoria4String start=/"/ skip=/\\"\|\\\\/ end=/"/ oneline syn region euphoria4String start=/b"\|x"/ end=/"/ syn region euphoria4String start=/`/ end=/`/ syn region euphoria4String start=/"""/ end=/"""/ " Binary/Octal/Decimal/Hexadecimal integer: syn match euphoria4Number "\<0b[01_]\+\>" syn match euphoria4Number "\<0t[0-7_]\+\>" syn match euphoria4Number "\<0d[0-9_]\+\>" syn match euphoria4Number "\<0x[0-9A-Fa-f_]\+\>" syn match euphoria4Number "#[0-9A-Fa-f_]\+\>" " Integer/Floating point without a dot: syn match euphoria4Number "\<\d\+\>" " Floating point with dot: syn match euphoria4Number "\<\d\+\.\d*\>" " Floating point starting with a dot: syn match euphoria4Number "\.\d\+\>" " Boolean constants: syn keyword euphoria4Boolean true TRUE false FALSE " Define the default highlighting. " Only used when an item doesn't have highlighting yet: hi def link euphoria4Comment Comment hi def link euphoria4String String hi def link euphoria4Char Character hi def link euphoria4Number Number hi def link euphoria4Boolean Boolean hi def link euphoria4Builtin Identifier hi def link euphoria4Library Function hi def link euphoria4Type Type hi def link euphoria4Keyword Statement hi def link euphoria4Operator Statement hi def link euphoria4Debug Debug hi def link euphoria4Delimit Delimiter hi def link euphoria4PreProc PreProc let b:current_syntax = "euphoria4" " Restore current compatible-options: let &cpo = s:save_cpo unlet s:save_cpo PK&]%V%Vvim80/syntax/sudoers.vimnu[" Vim syntax file " Language: sudoers(5) configuration files " Previous Maintainer: Nikolai Weibull " Latest Revision: 2011-02-24 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " TODO: instead of 'skipnl', we would like to match a specific group that would " match \\$ and then continue with the nextgroup, actually, the skipnl doesn't " work... " TODO: treat 'ALL' like a special (yay, a bundle of new rules!!!) syn match sudoersUserSpec '^' nextgroup=@sudoersUserInSpec skipwhite syn match sudoersSpecEquals contained '=' nextgroup=@sudoersCmndSpecList skipwhite syn cluster sudoersCmndSpecList contains=sudoersUserRunasBegin,sudoersPASSWD,@sudoersCmndInSpec syn keyword sudoersTodo contained TODO FIXME XXX NOTE syn region sudoersComment display oneline start='#' end='$' contains=sudoersTodo syn keyword sudoersAlias User_Alias Runas_Alias nextgroup=sudoersUserAlias skipwhite skipnl syn keyword sudoersAlias Host_Alias nextgroup=sudoersHostAlias skipwhite skipnl syn keyword sudoersAlias Cmnd_Alias nextgroup=sudoersCmndAlias skipwhite skipnl syn match sudoersUserAlias contained '\<\u[A-Z0-9_]*\>' nextgroup=sudoersUserAliasEquals skipwhite skipnl syn match sudoersUserNameInList contained '\<\l\+\>' nextgroup=@sudoersUserList skipwhite skipnl syn match sudoersUIDInList contained '#\d\+\>' nextgroup=@sudoersUserList skipwhite skipnl syn match sudoersGroupInList contained '%\l\+\>' nextgroup=@sudoersUserList skipwhite skipnl syn match sudoersUserNetgroupInList contained '+\l\+\>' nextgroup=@sudoersUserList skipwhite skipnl syn match sudoersUserAliasInList contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersUserList skipwhite skipnl syn match sudoersUserName contained '\<\l\+\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersUID contained '#\d\+\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersGroup contained '%\l\+\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersUserNetgroup contained '+\l\+\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersUserAliasRef contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersUserNameInSpec contained '\<\l\+\>' nextgroup=@sudoersUserSpec skipwhite skipnl syn match sudoersUIDInSpec contained '#\d\+\>' nextgroup=@sudoersUserSpec skipwhite skipnl syn match sudoersGroupInSpec contained '%\l\+\>' nextgroup=@sudoersUserSpec skipwhite skipnl syn match sudoersUserNetgroupInSpec contained '+\l\+\>' nextgroup=@sudoersUserSpec skipwhite skipnl syn match sudoersUserAliasInSpec contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersUserSpec skipwhite skipnl syn match sudoersUserNameInRunas contained '\<\l\+\>' nextgroup=@sudoersUserRunas skipwhite skipnl syn match sudoersUIDInRunas contained '#\d\+\>' nextgroup=@sudoersUserRunas skipwhite skipnl syn match sudoersGroupInRunas contained '%\l\+\>' nextgroup=@sudoersUserRunas skipwhite skipnl syn match sudoersUserNetgroupInRunas contained '+\l\+\>' nextgroup=@sudoersUserRunas skipwhite skipnl syn match sudoersUserAliasInRunas contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersUserRunas skipwhite skipnl syn match sudoersHostAlias contained '\<\u[A-Z0-9_]*\>' nextgroup=sudoersHostAliasEquals skipwhite skipnl syn match sudoersHostNameInList contained '\<\l\+\>' nextgroup=@sudoersHostList skipwhite skipnl syn match sudoersIPAddrInList contained '\%(\d\{1,3}\.\)\{3}\d\{1,3}' nextgroup=@sudoersHostList skipwhite skipnl syn match sudoersNetworkInList contained '\%(\d\{1,3}\.\)\{3}\d\{1,3}\%(/\%(\%(\d\{1,3}\.\)\{3}\d\{1,3}\|\d\+\)\)\=' nextgroup=@sudoersHostList skipwhite skipnl syn match sudoersHostNetgroupInList contained '+\l\+\>' nextgroup=@sudoersHostList skipwhite skipnl syn match sudoersHostAliasInList contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersHostList skipwhite skipnl syn match sudoersHostName contained '\<\l\+\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersIPAddr contained '\%(\d\{1,3}\.\)\{3}\d\{1,3}' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersNetwork contained '\%(\d\{1,3}\.\)\{3}\d\{1,3}\%(/\%(\%(\d\{1,3}\.\)\{3}\d\{1,3}\|\d\+\)\)\=' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersHostNetgroup contained '+\l\+\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersHostAliasRef contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersParameter skipwhite skipnl syn match sudoersHostNameInSpec contained '\<\l\+\>' nextgroup=@sudoersHostSpec skipwhite skipnl syn match sudoersIPAddrInSpec contained '\%(\d\{1,3}\.\)\{3}\d\{1,3}' nextgroup=@sudoersHostSpec skipwhite skipnl syn match sudoersNetworkInSpec contained '\%(\d\{1,3}\.\)\{3}\d\{1,3}\%(/\%(\%(\d\{1,3}\.\)\{3}\d\{1,3}\|\d\+\)\)\=' nextgroup=@sudoersHostSpec skipwhite skipnl syn match sudoersHostNetgroupInSpec contained '+\l\+\>' nextgroup=@sudoersHostSpec skipwhite skipnl syn match sudoersHostAliasInSpec contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersHostSpec skipwhite skipnl syn match sudoersCmndAlias contained '\<\u[A-Z0-9_]*\>' nextgroup=sudoersCmndAliasEquals skipwhite skipnl syn match sudoersCmndNameInList contained '[^[:space:],:=\\]\+\%(\\[[:space:],:=\\][^[:space:],:=\\]*\)*' nextgroup=@sudoersCmndList,sudoersCommandEmpty,sudoersCommandArgs skipwhite syn match sudoersCmndAliasInList contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersCmndList skipwhite skipnl syn match sudoersCmndNameInSpec contained '[^[:space:],:=\\]\+\%(\\[[:space:],:=\\][^[:space:],:=\\]*\)*' nextgroup=@sudoersCmndSpec,sudoersCommandEmptyInSpec,sudoersCommandArgsInSpec skipwhite syn match sudoersCmndAliasInSpec contained '\<\u[A-Z0-9_]*\>' nextgroup=@sudoersCmndSpec skipwhite skipnl syn match sudoersUserAliasEquals contained '=' nextgroup=@sudoersUserInList skipwhite skipnl syn match sudoersUserListComma contained ',' nextgroup=@sudoersUserInList skipwhite skipnl syn match sudoersUserListColon contained ':' nextgroup=sudoersUserAlias skipwhite skipnl syn cluster sudoersUserList contains=sudoersUserListComma,sudoersUserListColon syn match sudoersUserSpecComma contained ',' nextgroup=@sudoersUserInSpec skipwhite skipnl syn cluster sudoersUserSpec contains=sudoersUserSpecComma,@sudoersHostInSpec syn match sudoersUserRunasBegin contained '(' nextgroup=@sudoersUserInRunas skipwhite skipnl syn match sudoersUserRunasComma contained ',' nextgroup=@sudoersUserInRunas skipwhite skipnl syn match sudoersUserRunasEnd contained ')' nextgroup=sudoersPASSWD,@sudoersCmndInSpec skipwhite skipnl syn cluster sudoersUserRunas contains=sudoersUserRunasComma,@sudoersUserInRunas,sudoersUserRunasEnd syn match sudoersHostAliasEquals contained '=' nextgroup=@sudoersHostInList skipwhite skipnl syn match sudoersHostListComma contained ',' nextgroup=@sudoersHostInList skipwhite skipnl syn match sudoersHostListColon contained ':' nextgroup=sudoersHostAlias skipwhite skipnl syn cluster sudoersHostList contains=sudoersHostListComma,sudoersHostListColon syn match sudoersHostSpecComma contained ',' nextgroup=@sudoersHostInSpec skipwhite skipnl syn cluster sudoersHostSpec contains=sudoersHostSpecComma,sudoersSpecEquals syn match sudoersCmndAliasEquals contained '=' nextgroup=@sudoersCmndInList skipwhite skipnl syn match sudoersCmndListComma contained ',' nextgroup=@sudoersCmndInList skipwhite skipnl syn match sudoersCmndListColon contained ':' nextgroup=sudoersCmndAlias skipwhite skipnl syn cluster sudoersCmndList contains=sudoersCmndListComma,sudoersCmndListColon syn match sudoersCmndSpecComma contained ',' nextgroup=@sudoersCmndSpecList skipwhite skipnl syn match sudoersCmndSpecColon contained ':' nextgroup=@sudoersUserInSpec skipwhite skipnl syn cluster sudoersCmndSpec contains=sudoersCmndSpecComma,sudoersCmndSpecColon syn cluster sudoersUserInList contains=sudoersUserNegationInList,sudoersUserNameInList,sudoersUIDInList,sudoersGroupInList,sudoersUserNetgroupInList,sudoersUserAliasInList syn cluster sudoersHostInList contains=sudoersHostNegationInList,sudoersHostNameInList,sudoersIPAddrInList,sudoersNetworkInList,sudoersHostNetgroupInList,sudoersHostAliasInList syn cluster sudoersCmndInList contains=sudoersCmndNegationInList,sudoersCmndNameInList,sudoersCmndAliasInList syn cluster sudoersUser contains=sudoersUserNegation,sudoersUserName,sudoersUID,sudoersGroup,sudoersUserNetgroup,sudoersUserAliasRef syn cluster sudoersHost contains=sudoersHostNegation,sudoersHostName,sudoersIPAddr,sudoersNetwork,sudoersHostNetgroup,sudoersHostAliasRef syn cluster sudoersUserInSpec contains=sudoersUserNegationInSpec,sudoersUserNameInSpec,sudoersUIDInSpec,sudoersGroupInSpec,sudoersUserNetgroupInSpec,sudoersUserAliasInSpec syn cluster sudoersHostInSpec contains=sudoersHostNegationInSpec,sudoersHostNameInSpec,sudoersIPAddrInSpec,sudoersNetworkInSpec,sudoersHostNetgroupInSpec,sudoersHostAliasInSpec syn cluster sudoersUserInRunas contains=sudoersUserNegationInRunas,sudoersUserNameInRunas,sudoersUIDInRunas,sudoersGroupInRunas,sudoersUserNetgroupInRunas,sudoersUserAliasInRunas syn cluster sudoersCmndInSpec contains=sudoersCmndNegationInSpec,sudoersCmndNameInSpec,sudoersCmndAliasInSpec syn match sudoersUserNegationInList contained '!\+' nextgroup=@sudoersUserInList skipwhite skipnl syn match sudoersHostNegationInList contained '!\+' nextgroup=@sudoersHostInList skipwhite skipnl syn match sudoersCmndNegationInList contained '!\+' nextgroup=@sudoersCmndInList skipwhite skipnl syn match sudoersUserNegation contained '!\+' nextgroup=@sudoersUser skipwhite skipnl syn match sudoersHostNegation contained '!\+' nextgroup=@sudoersHost skipwhite skipnl syn match sudoersUserNegationInSpec contained '!\+' nextgroup=@sudoersUserInSpec skipwhite skipnl syn match sudoersHostNegationInSpec contained '!\+' nextgroup=@sudoersHostInSpec skipwhite skipnl syn match sudoersUserNegationInRunas contained '!\+' nextgroup=@sudoersUserInRunas skipwhite skipnl syn match sudoersCmndNegationInSpec contained '!\+' nextgroup=@sudoersCmndInSpec skipwhite skipnl syn match sudoersCommandArgs contained '[^[:space:],:=\\]\+\%(\\[[:space:],:=\\][^[:space:],:=\\]*\)*' nextgroup=sudoersCommandArgs,@sudoersCmndList skipwhite syn match sudoersCommandEmpty contained '""' nextgroup=@sudoersCmndList skipwhite skipnl syn match sudoersCommandArgsInSpec contained '[^[:space:],:=\\]\+\%(\\[[:space:],:=\\][^[:space:],:=\\]*\)*' nextgroup=sudoersCommandArgsInSpec,@sudoersCmndSpec skipwhite syn match sudoersCommandEmptyInSpec contained '""' nextgroup=@sudoersCmndSpec skipwhite skipnl syn keyword sudoersDefaultEntry Defaults nextgroup=sudoersDefaultTypeAt,sudoersDefaultTypeColon,sudoersDefaultTypeGreaterThan,@sudoersParameter skipwhite skipnl syn match sudoersDefaultTypeAt contained '@' nextgroup=@sudoersHost skipwhite skipnl syn match sudoersDefaultTypeColon contained ':' nextgroup=@sudoersUser skipwhite skipnl syn match sudoersDefaultTypeGreaterThan contained '>' nextgroup=@sudoersUser skipwhite skipnl " TODO: could also deal with special characters here syn match sudoersBooleanParameter contained '!' nextgroup=sudoersBooleanParameter skipwhite skipnl syn keyword sudoersBooleanParameter contained skipwhite skipnl \ always_set_home \ authenticate \ closefrom_override \ env_editor \ env_reset \ fqdn \ ignore_dot \ ignore_local_sudoers \ insults \ log_host \ log_year \ long_otp_prompt \ mail_always \ mail_badpass \ mail_no_host \ mail_no_perms \ mail_no_user \ noexec \ path_info \ passprompt_override \ preserve_groups \ requiretty \ root_sudo \ rootpw \ runaspw \ set_home \ set_logname \ setenv \ shell_noargs \ stay_setuid \ targetpw \ tty_tickets \ visiblepw syn keyword sudoersIntegerParameter contained \ nextgroup=sudoersIntegerParameterEquals \ skipwhite skipnl \ closefrom \ passwd_tries \ loglinelen \ passwd_timeout \ timestamp_timeout \ umask syn keyword sudoersStringParameter contained \ nextgroup=sudoersStringParameterEquals \ skipwhite skipnl \ badpass_message \ editor \ mailsub \ noexec_file \ passprompt \ runas_default \ syslog_badpri \ syslog_goodpri \ sudoers_locale \ timestampdir \ timestampowner \ askpass \ env_file \ exempt_group \ lecture \ lecture_file \ listpw \ logfile \ mailerflags \ mailerpath \ mailfrom \ mailto \ secure_path \ syslog \ verifypw syn keyword sudoersListParameter contained \ nextgroup=sudoersListParameterEquals \ skipwhite skipnl \ env_check \ env_delete \ env_keep syn match sudoersParameterListComma contained ',' nextgroup=@sudoersParameter skipwhite skipnl syn cluster sudoersParameter contains=sudoersBooleanParameter,sudoersIntegerParameter,sudoersStringParameter,sudoersListParameter syn match sudoersIntegerParameterEquals contained '[+-]\==' nextgroup=sudoersIntegerValue skipwhite skipnl syn match sudoersStringParameterEquals contained '[+-]\==' nextgroup=sudoersStringValue skipwhite skipnl syn match sudoersListParameterEquals contained '[+-]\==' nextgroup=sudoersListValue skipwhite skipnl syn match sudoersIntegerValue contained '\d\+' nextgroup=sudoersParameterListComma skipwhite skipnl syn match sudoersStringValue contained '[^[:space:],:=\\]*\%(\\[[:space:],:=\\][^[:space:],:=\\]*\)*' nextgroup=sudoersParameterListComma skipwhite skipnl syn region sudoersStringValue contained start=+"+ skip=+\\"+ end=+"+ nextgroup=sudoersParameterListComma skipwhite skipnl syn match sudoersListValue contained '[^[:space:],:=\\]*\%(\\[[:space:],:=\\][^[:space:],:=\\]*\)*' nextgroup=sudoersParameterListComma skipwhite skipnl syn region sudoersListValue contained start=+"+ skip=+\\"+ end=+"+ nextgroup=sudoersParameterListComma skipwhite skipnl syn match sudoersPASSWD contained '\%(NO\)\=PASSWD:' nextgroup=@sudoersCmndInSpec skipwhite hi def link sudoersSpecEquals Operator hi def link sudoersTodo Todo hi def link sudoersComment Comment hi def link sudoersAlias Keyword hi def link sudoersUserAlias Identifier hi def link sudoersUserNameInList String hi def link sudoersUIDInList Number hi def link sudoersGroupInList PreProc hi def link sudoersUserNetgroupInList PreProc hi def link sudoersUserAliasInList PreProc hi def link sudoersUserName String hi def link sudoersUID Number hi def link sudoersGroup PreProc hi def link sudoersUserNetgroup PreProc hi def link sudoersUserAliasRef PreProc hi def link sudoersUserNameInSpec String hi def link sudoersUIDInSpec Number hi def link sudoersGroupInSpec PreProc hi def link sudoersUserNetgroupInSpec PreProc hi def link sudoersUserAliasInSpec PreProc hi def link sudoersUserNameInRunas String hi def link sudoersUIDInRunas Number hi def link sudoersGroupInRunas PreProc hi def link sudoersUserNetgroupInRunas PreProc hi def link sudoersUserAliasInRunas PreProc hi def link sudoersHostAlias Identifier hi def link sudoersHostNameInList String hi def link sudoersIPAddrInList Number hi def link sudoersNetworkInList Number hi def link sudoersHostNetgroupInList PreProc hi def link sudoersHostAliasInList PreProc hi def link sudoersHostName String hi def link sudoersIPAddr Number hi def link sudoersNetwork Number hi def link sudoersHostNetgroup PreProc hi def link sudoersHostAliasRef PreProc hi def link sudoersHostNameInSpec String hi def link sudoersIPAddrInSpec Number hi def link sudoersNetworkInSpec Number hi def link sudoersHostNetgroupInSpec PreProc hi def link sudoersHostAliasInSpec PreProc hi def link sudoersCmndAlias Identifier hi def link sudoersCmndNameInList String hi def link sudoersCmndAliasInList PreProc hi def link sudoersCmndNameInSpec String hi def link sudoersCmndAliasInSpec PreProc hi def link sudoersUserAliasEquals Operator hi def link sudoersUserListComma Delimiter hi def link sudoersUserListColon Delimiter hi def link sudoersUserSpecComma Delimiter hi def link sudoersUserRunasBegin Delimiter hi def link sudoersUserRunasComma Delimiter hi def link sudoersUserRunasEnd Delimiter hi def link sudoersHostAliasEquals Operator hi def link sudoersHostListComma Delimiter hi def link sudoersHostListColon Delimiter hi def link sudoersHostSpecComma Delimiter hi def link sudoersCmndAliasEquals Operator hi def link sudoersCmndListComma Delimiter hi def link sudoersCmndListColon Delimiter hi def link sudoersCmndSpecComma Delimiter hi def link sudoersCmndSpecColon Delimiter hi def link sudoersUserNegationInList Operator hi def link sudoersHostNegationInList Operator hi def link sudoersCmndNegationInList Operator hi def link sudoersUserNegation Operator hi def link sudoersHostNegation Operator hi def link sudoersUserNegationInSpec Operator hi def link sudoersHostNegationInSpec Operator hi def link sudoersUserNegationInRunas Operator hi def link sudoersCmndNegationInSpec Operator hi def link sudoersCommandArgs String hi def link sudoersCommandEmpty Special hi def link sudoersDefaultEntry Keyword hi def link sudoersDefaultTypeAt Special hi def link sudoersDefaultTypeColon Special hi def link sudoersDefaultTypeGreaterThan Special hi def link sudoersBooleanParameter Identifier hi def link sudoersIntegerParameter Identifier hi def link sudoersStringParameter Identifier hi def link sudoersListParameter Identifier hi def link sudoersParameterListComma Delimiter hi def link sudoersIntegerParameterEquals Operator hi def link sudoersStringParameterEquals Operator hi def link sudoersListParameterEquals Operator hi def link sudoersIntegerValue Number hi def link sudoersStringValue String hi def link sudoersListValue String hi def link sudoersPASSWD Special let b:current_syntax = "sudoers" let &cpo = s:cpo_save unlet s:cpo_save PK&]Kjjvim80/syntax/ora.vimnu[" Vim syntax file " Language: Oracle config files (.ora) (Oracle 8i, ver. 8.1.5) " Maintainer: Sandor Kopanyi " Url: <-> " Last Change: 2003 May 11 " * the keywords are listed by file (sqlnet.ora, listener.ora, etc.) " * the parathesis-checking is made at the beginning for all keywords " * possible values are listed also " * there are some overlappings (e.g. METHOD is mentioned both for " sqlnet-ora and tnsnames.ora; since will not cause(?) problems " is easier to follow separately each file's keywords) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'ora' endif syn case ignore "comments syn match oraComment "\#.*" " catch errors caused by wrong parenthesis syn region oraParen transparent start="(" end=")" contains=@oraAll,oraParen syn match oraParenError ")" " strings syn region oraString start=+"+ end=+"+ "common .ora staff "common protocol parameters syn keyword oraKeywordGroup ADDRESS ADDRESS_LIST syn keyword oraKeywordGroup DESCRIPTION_LIST DESCRIPTION "all protocols syn keyword oraKeyword PROTOCOL syn keyword oraValue ipc tcp nmp "Bequeath syn keyword oraKeyword PROGRAM ARGV0 ARGS "IPC syn keyword oraKeyword KEY "Named Pipes syn keyword oraKeyword SERVER PIPE "LU6.2 syn keyword oraKeyword LU_NAME LLU LOCAL_LU LLU_NAME LOCAL_LU_NAME syn keyword oraKeyword MODE MDN syn keyword oraKeyword PLU PARTNER_LU_NAME PLU_LA PARTNER_LU_LOCAL_ALIAS syn keyword oraKeyword TP_NAME TPN "SPX syn keyword oraKeyword SERVICE "TCP/IP and TCP/IP with SSL syn keyword oraKeyword HOST PORT "misc. keywords I've met but didn't find in manual (maybe they are deprecated?) syn keyword oraKeywordGroup COMMUNITY_LIST syn keyword oraKeyword COMMUNITY NAME DEFAULT_ZONE syn keyword oraValue tcpcom "common values syn keyword oraValue yes no on off true false null all none ok "word 'world' is used a lot... syn keyword oraModifier world "misc. common keywords syn keyword oraKeyword TRACE_DIRECTORY TRACE_LEVEL TRACE_FILE "sqlnet.ora syn keyword oraKeywordPref NAMES NAMESCTL syn keyword oraKeywordPref OSS SOURCE SQLNET TNSPING syn keyword oraKeyword AUTOMATIC_IPC BEQUEATH_DETACH DAEMON TRACE_MASK syn keyword oraKeyword DISABLE_OOB syn keyword oraKeyword LOG_DIRECTORY_CLIENT LOG_DIRECTORY_SERVER syn keyword oraKeyword LOG_FILE_CLIENT LOG_FILE_SERVER syn keyword oraKeyword DCE PREFIX DEFAULT_DOMAIN DIRECTORY_PATH syn keyword oraKeyword INITIAL_RETRY_TIMEOUT MAX_OPEN_CONNECTIONS syn keyword oraKeyword MESSAGE_POOL_START_SIZE NIS META_MAP syn keyword oraKeyword PASSWORD PREFERRED_SERVERS REQUEST_RETRIES syn keyword oraKeyword INTERNAL_ENCRYPT_PASSWORD INTERNAL_USE syn keyword oraKeyword NO_INITIAL_SERVER NOCONFIRM syn keyword oraKeyword SERVER_PASSWORD TRACE_UNIQUE MY_WALLET syn keyword oraKeyword LOCATION DIRECTORY METHOD METHOD_DATA syn keyword oraKeyword SQLNET_ADDRESS syn keyword oraKeyword AUTHENTICATION_SERVICES syn keyword oraKeyword AUTHENTICATION_KERBEROS5_SERVICE syn keyword oraKeyword AUTHENTICATION_GSSAPI_SERVICE syn keyword oraKeyword CLIENT_REGISTRATION syn keyword oraKeyword CRYPTO_CHECKSUM_CLIENT CRYPTO_CHECKSUM_SERVER syn keyword oraKeyword CRYPTO_CHECKSUM_TYPES_CLIENT CRYPTO_CHECKSUM_TYPES_SERVER syn keyword oraKeyword CRYPTO_SEED syn keyword oraKeyword ENCRYPTION_CLIENT ENCRYPTION_SERVER syn keyword oraKeyword ENCRYPTION_TYPES_CLIENT ENCRYPTION_TYPES_SERVER syn keyword oraKeyword EXPIRE_TIME syn keyword oraKeyword IDENTIX_FINGERPRINT_DATABASE IDENTIX_FINGERPRINT_DATABASE_USER syn keyword oraKeyword IDENTIX_FINGERPRINT_DATABASE_PASSWORD IDENTIX_FINGERPRINT_METHOD syn keyword oraKeyword KERBEROS5_CC_NAME KERBEROS5_CLOCKSKEW KERBEROS5_CONF syn keyword oraKeyword KERBEROS5_KEYTAB KERBEROS5_REALMS syn keyword oraKeyword RADIUS_ALTERNATE RADIUS_ALTERNATE_PORT RADIUS_ALTERNATE_RETRIES syn keyword oraKeyword RADIUS_AUTHENTICATION_TIMEOUT RADIUS_AUTHENTICATION syn keyword oraKeyword RADIUS_AUTHENTICATION_INTERFACE RADIUS_AUTHENTICATION_PORT syn keyword oraKeyword RADIUS_AUTHENTICATION_RETRIES RADIUS_AUTHENTICATION_TIMEOUT syn keyword oraKeyword RADIUS_CHALLENGE_RESPONSE RADIUS_SECRET RADIUS_SEND_ACCOUNTING syn keyword oraKeyword SSL_CLIENT_AUTHENTICATION SSL_CIPHER_SUITES SSL_VERSION syn keyword oraKeyword TRACE_DIRECTORY_CLIENT TRACE_DIRECTORY_SERVER syn keyword oraKeyword TRACE_FILE_CLIENT TRACE_FILE_SERVER syn keyword oraKeyword TRACE_LEVEL_CLIENT TRACE_LEVEL_SERVER syn keyword oraKeyword TRACE_UNIQUE_CLIENT syn keyword oraKeyword USE_CMAN USE_DEDICATED_SERVER syn keyword oraValue user admin support syn keyword oraValue accept accepted reject rejected requested required syn keyword oraValue md5 rc4_40 rc4_56 rc4_128 des des_40 syn keyword oraValue tnsnames onames hostname dce nis novell syn keyword oraValue file oracle syn keyword oraValue oss syn keyword oraValue beq nds nts kerberos5 securid cybersafe identix dcegssapi radius syn keyword oraValue undetermined "tnsnames.ora syn keyword oraKeywordGroup CONNECT_DATA FAILOVER_MODE syn keyword oraKeyword FAILOVER LOAD_BALANCE SOURCE_ROUTE TYPE_OF_SERVICE syn keyword oraKeyword BACKUP TYPE METHOD GLOBAL_NAME HS syn keyword oraKeyword INSTANCE_NAME RDB_DATABASE SDU SERVER syn keyword oraKeyword SERVICE_NAME SERVICE_NAMES SID syn keyword oraKeyword HANDLER_NAME EXTPROC_CONNECTION_DATA syn keyword oraValue session select basic preconnect dedicated shared "listener.ora syn keyword oraKeywordGroup SID_LIST SID_DESC PRESPAWN_LIST PRESPAWN_DESC syn match oraKeywordGroup "SID_LIST_\w*" syn keyword oraKeyword PROTOCOL_STACK PRESENTATION SESSION syn keyword oraKeyword GLOBAL_DBNAME ORACLE_HOME PROGRAM SID_NAME syn keyword oraKeyword PRESPAWN_MAX POOL_SIZE TIMEOUT syn match oraKeyword "CONNECT_TIMEOUT_\w*" syn match oraKeyword "LOG_DIRECTORY_\w*" syn match oraKeyword "LOG_FILE_\w*" syn match oraKeyword "PASSWORDS_\w*" syn match oraKeyword "STARTUP_WAIT_TIME_\w*" syn match oraKeyword "STARTUP_WAITTIME_\w*" syn match oraKeyword "TRACE_DIRECTORY_\w*" syn match oraKeyword "TRACE_FILE_\w*" syn match oraKeyword "TRACE_LEVEL_\w*" syn match oraKeyword "USE_PLUG_AND_PLAY_\w*" syn keyword oraValue ttc giop ns raw "names.ora syn keyword oraKeywordGroup ADDRESSES ADMIN_REGION syn keyword oraKeywordGroup DEFAULT_FORWARDERS FORWARDER_LIST FORWARDER syn keyword oraKeywordGroup DOMAIN_HINTS HINT_DESC HINT_LIST syn keyword oraKeywordGroup DOMAINS DOMAIN_LIST DOMAIN syn keyword oraKeywordPref NAMES syn keyword oraKeyword EXPIRE REFRESH REGION RETRY USERID VERSION syn keyword oraKeyword AUTHORITY_REQUIRED CONNECT_TIMEOUT syn keyword oraKeyword AUTO_REFRESH_EXPIRE AUTO_REFRESH_RETRY syn keyword oraKeyword CACHE_CHECKPOINT_FILE CACHE_CHECKPOINT_INTERVAL syn keyword oraKeyword CONFIG_CHECKPOINT_FILE DEFAULT_FORWARDERS_ONLY syn keyword oraKeyword HINT FORWARDING_AVAILABLE FORWARDING_DESIRED syn keyword oraKeyword KEEP_DB_OPEN syn keyword oraKeyword LOG_DIRECTORY LOG_FILE LOG_STATS_INTERVAL LOG_UNIQUE syn keyword oraKeyword MAX_OPEN_CONNECTIONS MAX_REFORWARDS syn keyword oraKeyword MESSAGE_POOL_START_SIZE syn keyword oraKeyword NO_MODIFY_REQUESTS NO_REGION_DATABASE syn keyword oraKeyword PASSWORD REGION_CHECKPOINT_FILE syn keyword oraKeyword RESET_STATS_INTERVAL SAVE_CONFIG_ON_STOP syn keyword oraKeyword SERVER_NAME TRACE_FUNC TRACE_UNIQUE "cman.ora syn keyword oraKeywordGroup CMAN CMAN_ADMIN CMAN_PROFILE PARAMETER_LIST syn keyword oraKeywordGroup CMAN_RULES RULES_LIST RULE syn keyword oraKeyword ANSWER_TIMEOUT AUTHENTICATION_LEVEL LOG_LEVEL syn keyword oraKeyword MAX_FREELIST_BUFFERS MAXIMUM_CONNECT_DATA MAXIMUM_RELAYS syn keyword oraKeyword RELAY_STATISTICS SHOW_TNS_INFO TRACING syn keyword oraKeyword USE_ASYNC_CALL SRC DST SRV ACT "protocol.ora syn match oraKeyword "\w*\.EXCLUDED_NODES" syn match oraKeyword "\w*\.INVITED_NODES" syn match oraKeyword "\w*\.VALIDNODE_CHECKING" syn keyword oraKeyword TCP NODELAY "--------------------------------------- "init.ora "common values syn keyword oraValue nested_loops merge hash unlimited "init params syn keyword oraKeyword O7_DICTIONARY_ACCESSIBILITY ALWAYS_ANTI_JOIN ALWAYS_SEMI_JOIN syn keyword oraKeyword AQ_TM_PROCESSES ARCH_IO_SLAVES AUDIT_FILE_DEST AUDIT_TRAIL syn keyword oraKeyword BACKGROUND_CORE_DUMP BACKGROUND_DUMP_DEST syn keyword oraKeyword BACKUP_TAPE_IO_SLAVES BITMAP_MERGE_AREA_SIZE syn keyword oraKeyword BLANK_TRIMMING BUFFER_POOL_KEEP BUFFER_POOL_RECYCLE syn keyword oraKeyword COMMIT_POINT_STRENGTH COMPATIBLE CONTROL_FILE_RECORD_KEEP_TIME syn keyword oraKeyword CONTROL_FILES CORE_DUMP_DEST CPU_COUNT syn keyword oraKeyword CREATE_BITMAP_AREA_SIZE CURSOR_SPACE_FOR_TIME syn keyword oraKeyword DB_BLOCK_BUFFERS DB_BLOCK_CHECKING DB_BLOCK_CHECKSUM syn keyword oraKeyword DB_BLOCK_LRU_LATCHES DB_BLOCK_MAX_DIRTY_TARGET syn keyword oraKeyword DB_BLOCK_SIZE DB_DOMAIN syn keyword oraKeyword DB_FILE_DIRECT_IO_COUNT DB_FILE_MULTIBLOCK_READ_COUNT syn keyword oraKeyword DB_FILE_NAME_CONVERT DB_FILE_SIMULTANEOUS_WRITES syn keyword oraKeyword DB_FILES DB_NAME DB_WRITER_PROCESSES syn keyword oraKeyword DBLINK_ENCRYPT_LOGIN DBWR_IO_SLAVES syn keyword oraKeyword DELAYED_LOGGING_BLOCK_CLEANOUTS DISCRETE_TRANSACTIONS_ENABLED syn keyword oraKeyword DISK_ASYNCH_IO DISTRIBUTED_TRANSACTIONS syn keyword oraKeyword DML_LOCKS ENQUEUE_RESOURCES ENT_DOMAIN_NAME EVENT syn keyword oraKeyword FAST_START_IO_TARGET FAST_START_PARALLEL_ROLLBACK syn keyword oraKeyword FIXED_DATE FREEZE_DB_FOR_FAST_INSTANCE_RECOVERY syn keyword oraKeyword GC_DEFER_TIME GC_FILES_TO_LOCKS GC_RELEASABLE_LOCKS GC_ROLLBACK_LOCKS syn keyword oraKeyword GLOBAL_NAMES HASH_AREA_SIZE syn keyword oraKeyword HASH_JOIN_ENABLED HASH_MULTIBLOCK_IO_COUNT syn keyword oraKeyword HI_SHARED_MEMORY_ADDRESS HS_AUTOREGISTER syn keyword oraKeyword IFILE syn keyword oraKeyword INSTANCE_GROUPS INSTANCE_NAME INSTANCE_NUMBER syn keyword oraKeyword JAVA_POOL_SIZE JOB_QUEUE_INTERVAL JOB_QUEUE_PROCESSES LARGE_POOL_SIZE syn keyword oraKeyword LICENSE_MAX_SESSIONS LICENSE_MAX_USERS LICENSE_SESSIONS_WARNING syn keyword oraKeyword LM_LOCKS LM_PROCS LM_RESS syn keyword oraKeyword LOCAL_LISTENER LOCK_NAME_SPACE LOCK_SGA LOCK_SGA_AREAS syn keyword oraKeyword LOG_ARCHIVE_BUFFER_SIZE LOG_ARCHIVE_BUFFERS LOG_ARCHIVE_DEST syn match oraKeyword "LOG_ARCHIVE_DEST_\(1\|2\|3\|4\|5\)" syn match oraKeyword "LOG_ARCHIVE_DEST_STATE_\(1\|2\|3\|4\|5\)" syn keyword oraKeyword LOG_ARCHIVE_DUPLEX_DEST LOG_ARCHIVE_FORMAT LOG_ARCHIVE_MAX_PROCESSES syn keyword oraKeyword LOG_ARCHIVE_MIN_SUCCEED_DEST LOG_ARCHIVE_START syn keyword oraKeyword LOG_BUFFER LOG_CHECKPOINT_INTERVAL LOG_CHECKPOINT_TIMEOUT syn keyword oraKeyword LOG_CHECKPOINTS_TO_ALERT LOG_FILE_NAME_CONVERT syn keyword oraKeyword MAX_COMMIT_PROPAGATION_DELAY MAX_DUMP_FILE_SIZE syn keyword oraKeyword MAX_ENABLED_ROLES MAX_ROLLBACK_SEGMENTS syn keyword oraKeyword MTS_DISPATCHERS MTS_MAX_DISPATCHERS MTS_MAX_SERVERS MTS_SERVERS syn keyword oraKeyword NLS_CALENDAR NLS_COMP NLS_CURRENCY NLS_DATE_FORMAT syn keyword oraKeyword NLS_DATE_LANGUAGE NLS_DUAL_CURRENCY NLS_ISO_CURRENCY NLS_LANGUAGE syn keyword oraKeyword NLS_NUMERIC_CHARACTERS NLS_SORT NLS_TERRITORY syn keyword oraKeyword OBJECT_CACHE_MAX_SIZE_PERCENT OBJECT_CACHE_OPTIMAL_SIZE syn keyword oraKeyword OPEN_CURSORS OPEN_LINKS OPEN_LINKS_PER_INSTANCE syn keyword oraKeyword OPS_ADMINISTRATION_GROUP syn keyword oraKeyword OPTIMIZER_FEATURES_ENABLE OPTIMIZER_INDEX_CACHING syn keyword oraKeyword OPTIMIZER_INDEX_COST_ADJ OPTIMIZER_MAX_PERMUTATIONS syn keyword oraKeyword OPTIMIZER_MODE OPTIMIZER_PERCENT_PARALLEL syn keyword oraKeyword OPTIMIZER_SEARCH_LIMIT syn keyword oraKeyword ORACLE_TRACE_COLLECTION_NAME ORACLE_TRACE_COLLECTION_PATH syn keyword oraKeyword ORACLE_TRACE_COLLECTION_SIZE ORACLE_TRACE_ENABLE syn keyword oraKeyword ORACLE_TRACE_FACILITY_NAME ORACLE_TRACE_FACILITY_PATH syn keyword oraKeyword OS_AUTHENT_PREFIX OS_ROLES syn keyword oraKeyword PARALLEL_ADAPTIVE_MULTI_USER PARALLEL_AUTOMATIC_TUNING syn keyword oraKeyword PARALLEL_BROADCAST_ENABLED PARALLEL_EXECUTION_MESSAGE_SIZE syn keyword oraKeyword PARALLEL_INSTANCE_GROUP PARALLEL_MAX_SERVERS syn keyword oraKeyword PARALLEL_MIN_PERCENT PARALLEL_MIN_SERVERS syn keyword oraKeyword PARALLEL_SERVER PARALLEL_SERVER_INSTANCES PARALLEL_THREADS_PER_CPU syn keyword oraKeyword PARTITION_VIEW_ENABLED PLSQL_V2_COMPATIBILITY syn keyword oraKeyword PRE_PAGE_SGA PROCESSES syn keyword oraKeyword QUERY_REWRITE_ENABLED QUERY_REWRITE_INTEGRITY syn keyword oraKeyword RDBMS_SERVER_DN READ_ONLY_OPEN_DELAYED RECOVERY_PARALLELISM syn keyword oraKeyword REMOTE_DEPENDENCIES_MODE REMOTE_LOGIN_PASSWORDFILE syn keyword oraKeyword REMOTE_OS_AUTHENT REMOTE_OS_ROLES syn keyword oraKeyword REPLICATION_DEPENDENCY_TRACKING syn keyword oraKeyword RESOURCE_LIMIT RESOURCE_MANAGER_PLAN syn keyword oraKeyword ROLLBACK_SEGMENTS ROW_LOCKING SERIAL _REUSE SERVICE_NAMES syn keyword oraKeyword SESSION_CACHED_CURSORS SESSION_MAX_OPEN_FILES SESSIONS syn keyword oraKeyword SHADOW_CORE_DUMP syn keyword oraKeyword SHARED_MEMORY_ADDRESS SHARED_POOL_RESERVED_SIZE SHARED_POOL_SIZE syn keyword oraKeyword SORT_AREA_RETAINED_SIZE SORT_AREA_SIZE SORT_MULTIBLOCK_READ_COUNT syn keyword oraKeyword SQL92_SECURITY SQL_TRACE STANDBY_ARCHIVE_DEST syn keyword oraKeyword STAR_TRANSFORMATION_ENABLED TAPE_ASYNCH_IO THREAD syn keyword oraKeyword TIMED_OS_STATISTICS TIMED_STATISTICS syn keyword oraKeyword TRANSACTION_AUDITING TRANSACTIONS TRANSACTIONS_PER_ROLLBACK_SEGMENT syn keyword oraKeyword USE_INDIRECT_DATA_BUFFERS USER_DUMP_DEST syn keyword oraKeyword UTL_FILE_DIR syn keyword oraKeywordObs ALLOW_PARTIAL_SN_RESULTS B_TREE_BITMAP_PLANS syn keyword oraKeywordObs BACKUP_DISK_IO_SLAVES CACHE_SIZE_THRESHOLD syn keyword oraKeywordObs CCF_IO_SIZE CLEANUP_ROLLBACK_ENTRIES syn keyword oraKeywordObs CLOSE_CACHED_OPEN_CURSORS COMPATIBLE_NO_RECOVERY syn keyword oraKeywordObs COMPLEX_VIEW_MERGING syn keyword oraKeywordObs DB_BLOCK_CHECKPOINT_BATCH DB_BLOCK_LRU_EXTENDED_STATISTICS syn keyword oraKeywordObs DB_BLOCK_LRU_STATISTICS syn keyword oraKeywordObs DISTRIBUTED_LOCK_TIMEOUT DISTRIBUTED_RECOVERY_CONNECTION_HOLD_TIME syn keyword oraKeywordObs FAST_FULL_SCAN_ENABLED GC_LATCHES GC_LCK_PROCS syn keyword oraKeywordObs LARGE_POOL_MIN_ALLOC LGWR_IO_SLAVES syn keyword oraKeywordObs LOG_BLOCK_CHECKSUM LOG_FILES syn keyword oraKeywordObs LOG_SIMULTANEOUS_COPIES LOG_SMALL_ENTRY_MAX_SIZE syn keyword oraKeywordObs MAX_TRANSACTION_BRANCHES syn keyword oraKeywordObs MTS_LISTENER_ADDRESS MTS_MULTIPLE_LISTENERS syn keyword oraKeywordObs MTS_RATE_LOG_SIZE MTS_RATE_SCALE MTS_SERVICE syn keyword oraKeywordObs OGMS_HOME OPS_ADMIN_GROUP syn keyword oraKeywordObs PARALLEL_DEFAULT_MAX_INSTANCES PARALLEL_MIN_MESSAGE_POOL syn keyword oraKeywordObs PARALLEL_SERVER_IDLE_TIME PARALLEL_TRANSACTION_RESOURCE_TIMEOUT syn keyword oraKeywordObs PUSH_JOIN_PREDICATE REDUCE_ALARM ROW_CACHE_CURSORS syn keyword oraKeywordObs SEQUENCE_CACHE_ENTRIES SEQUENCE_CACHE_HASH_BUCKETS syn keyword oraKeywordObs SHARED_POOL_RESERVED_MIN_ALLOC syn keyword oraKeywordObs SORT_DIRECT_WRITES SORT_READ_FAC SORT_SPACEMAP_SIZE syn keyword oraKeywordObs SORT_WRITE_BUFFER_SIZE SORT_WRITE_BUFFERS syn keyword oraKeywordObs SPIN_COUNT TEMPORARY_TABLE_LOCKS USE_ISM syn keyword oraValue db os full partial mandatory optional reopen enable defer syn keyword oraValue always default intent disable dml plsql temp_disable syn match oravalue "Arabic Hijrah" syn match oravalue "English Hijrah" syn match oravalue "Gregorian" syn match oravalue "Japanese Imperial" syn match oravalue "Persian" syn match oravalue "ROC Official" syn match oravalue "Thai Buddha" syn match oravalue "8.0.0" syn match oravalue "8.0.3" syn match oravalue "8.0.4" syn match oravalue "8.1.3" syn match oraModifier "archived log" syn match oraModifier "backup corruption" syn match oraModifier "backup datafile" syn match oraModifier "backup piece " syn match oraModifier "backup redo log" syn match oraModifier "backup set" syn match oraModifier "copy corruption" syn match oraModifier "datafile copy" syn match oraModifier "deleted object" syn match oraModifier "loghistory" syn match oraModifier "offline range" "undocumented init params "up to 7.2 (inclusive) syn keyword oraKeywordUndObs _latch_spin_count _trace_instance_termination syn keyword oraKeywordUndObs _wakeup_timeout _lgwr_async_write "7.3 syn keyword oraKeywordUndObs _standby_lock_space_name _enable_dba_locking "8.0.5 syn keyword oraKeywordUnd _NUMA_instance_mapping _NUMA_pool_size syn keyword oraKeywordUnd _advanced_dss_features _affinity_on _all_shared_dblinks syn keyword oraKeywordUnd _allocate_creation_order _allow_resetlogs_corruption syn keyword oraKeywordUnd _always_star_transformation _bump_highwater_mark_count syn keyword oraKeywordUnd _column_elimination_off _controlfile_enqueue_timeout syn keyword oraKeywordUnd _corrupt_blocks_on_stuck_recovery _corrupted_rollback_segments syn keyword oraKeywordUnd _cr_deadtime _cursor_db_buffers_pinned syn keyword oraKeywordUnd _db_block_cache_clone _db_block_cache_map _db_block_cache_protect syn keyword oraKeywordUnd _db_block_hash_buckets _db_block_hi_priority_batch_size syn keyword oraKeywordUnd _db_block_max_cr_dba _db_block_max_scan_cnt syn keyword oraKeywordUnd _db_block_med_priority_batch_size _db_block_no_idle_writes syn keyword oraKeywordUnd _db_block_write_batch _db_handles _db_handles_cached syn keyword oraKeywordUnd _db_large_dirty_queue _db_no_mount_lock syn keyword oraKeywordUnd _db_writer_histogram_statistics _db_writer_scan_depth syn keyword oraKeywordUnd _db_writer_scan_depth_decrement _db_writer_scan_depth_increment syn keyword oraKeywordUnd _disable_incremental_checkpoints syn keyword oraKeywordUnd _disable_latch_free_SCN_writes_via_32cas syn keyword oraKeywordUnd _disable_latch_free_SCN_writes_via_64cas syn keyword oraKeywordUnd _disable_logging _disable_ntlog_events syn keyword oraKeywordUnd _dss_cache_flush _dynamic_stats_threshold syn keyword oraKeywordUnd _enable_cscn_caching _enable_default_affinity syn keyword oraKeywordUnd _enqueue_debug_multi_instance _enqueue_hash syn keyword oraKeywordUnd _enqueue_hash_chain_latches _enqueue_locks syn keyword oraKeywordUnd _fifth_spare_parameter _first_spare_parameter _fourth_spare_parameter syn keyword oraKeywordUnd _gc_class_locks _groupby_nopushdown_cut_ratio syn keyword oraKeywordUnd _idl_conventional_index_maintenance _ignore_failed_escalates syn keyword oraKeywordUnd _init_sql_file syn keyword oraKeywordUnd _io_slaves_disabled _ioslave_batch_count _ioslave_issue_count syn keyword oraKeywordUnd _kgl_bucket_count _kgl_latch_count _kgl_multi_instance_invalidation syn keyword oraKeywordUnd _kgl_multi_instance_lock _kgl_multi_instance_pin syn keyword oraKeywordUnd _latch_miss_stat_sid _latch_recovery_alignment _latch_wait_posting syn keyword oraKeywordUnd _lm_ast_option _lm_direct_sends _lm_dlmd_procs _lm_domains _lm_groups syn keyword oraKeywordUnd _lm_non_fault_tolerant _lm_send_buffers _lm_statistics _lm_xids syn keyword oraKeywordUnd _log_blocks_during_backup _log_buffers_debug _log_checkpoint_recovery_check syn keyword oraKeywordUnd _log_debug_multi_instance _log_entry_prebuild_threshold _log_io_size syn keyword oraKeywordUnd _log_space_errors syn keyword oraKeywordUnd _max_exponential_sleep _max_sleep_holding_latch syn keyword oraKeywordUnd _messages _minimum_giga_scn _mts_load_constants _nested_loop_fudge syn keyword oraKeywordUnd _no_objects _no_or_expansion syn keyword oraKeywordUnd _number_cached_attributes _offline_rollback_segments _open_files_limit syn keyword oraKeywordUnd _optimizer_undo_changes syn keyword oraKeywordUnd _oracle_trace_events _oracle_trace_facility_version syn keyword oraKeywordUnd _ordered_nested_loop _parallel_server_sleep_time syn keyword oraKeywordUnd _passwordfile_enqueue_timeout _pdml_slaves_diff_part syn keyword oraKeywordUnd _plsql_dump_buffer_events _predicate_elimination_enabled syn keyword oraKeywordUnd _project_view_columns syn keyword oraKeywordUnd _px_broadcast_fudge_factor _px_broadcast_trace _px_dop_limit_degree syn keyword oraKeywordUnd _px_dop_limit_threshold _px_kxfr_granule_allocation _px_kxib_tracing syn keyword oraKeywordUnd _release_insert_threshold _reuse_index_loop syn keyword oraKeywordUnd _rollback_segment_count _rollback_segment_initial syn keyword oraKeywordUnd _row_cache_buffer_size _row_cache_instance_locks syn keyword oraKeywordUnd _save_escalates _scn_scheme syn keyword oraKeywordUnd _second_spare_parameter _session_idle_bit_latches syn keyword oraKeywordUnd _shared_session_sort_fetch_buffer _single_process syn keyword oraKeywordUnd _small_table_threshold _sql_connect_capability_override syn keyword oraKeywordUnd _sql_connect_capability_table syn keyword oraKeywordUnd _test_param_1 _test_param_2 _test_param_3 syn keyword oraKeywordUnd _third_spare_parameter _tq_dump_period syn keyword oraKeywordUnd _trace_archive_dest _trace_archive_start _trace_block_size syn keyword oraKeywordUnd _trace_buffers_per_process _trace_enabled _trace_events syn keyword oraKeywordUnd _trace_file_size _trace_files_public _trace_flushing _trace_write_batch_size syn keyword oraKeywordUnd _upconvert_from_ast _use_vector_post _wait_for_sync _walk_insert_threshold "dunno which version; may be 8.1.x, may be obsoleted syn keyword oraKeywordUndObs _arch_io_slaves _average_dirties_half_life _b_tree_bitmap_plans syn keyword oraKeywordUndObs _backup_disk_io_slaves _backup_io_pool_size syn keyword oraKeywordUndObs _cleanup_rollback_entries _close_cached_open_cursors syn keyword oraKeywordUndObs _compatible_no_recovery _complex_view_merging syn keyword oraKeywordUndObs _cpu_to_io _cr_server syn keyword oraKeywordUndObs _db_aging_cool_count _db_aging_freeze_cr _db_aging_hot_criteria syn keyword oraKeywordUndObs _db_aging_stay_count _db_aging_touch_time syn keyword oraKeywordUndObs _db_percent_hot_default _db_percent_hot_keep _db_percent_hot_recycle syn keyword oraKeywordUndObs _db_writer_chunk_writes _db_writer_max_writes syn keyword oraKeywordUndObs _dbwr_async_io _dbwr_tracing syn keyword oraKeywordUndObs _defer_multiple_waiters _discrete_transaction_enabled syn keyword oraKeywordUndObs _distributed_lock_timeout _distributed_recovery _distribited_recovery_ syn keyword oraKeywordUndObs _domain_index_batch_size _domain_index_dml_batch_size syn keyword oraKeywordUndObs _enable_NUMA_optimization _enable_block_level_transaction_recovery syn keyword oraKeywordUndObs _enable_list_io _enable_multiple_sampling syn keyword oraKeywordUndObs _fairness_treshold _fast_full_scan_enabled _foreground_locks syn keyword oraKeywordUndObs _full_pwise_join_enabled _gc_latches _gc_lck_procs syn keyword oraKeywordUndObs _high_server_treshold _index_prefetch_factor _kcl_debug syn keyword oraKeywordUndObs _kkfi_trace _large_pool_min_alloc _lazy_freelist_close _left_nested_loops_random syn keyword oraKeywordUndObs _lgwr_async_io _lgwr_io_slaves _lock_sga_areas syn keyword oraKeywordUndObs _log_archive_buffer_size _log_archive_buffers _log_simultaneous_copies syn keyword oraKeywordUndObs _low_server_treshold _max_transaction_branches syn keyword oraKeywordUndObs _mts_rate_log_size _mts_rate_scale syn keyword oraKeywordUndObs _mview_cost_rewrite _mview_rewrite_2 syn keyword oraKeywordUndObs _ncmb_readahead_enabled _ncmb_readahead_tracing syn keyword oraKeywordUndObs _ogms_home syn keyword oraKeywordUndObs _parallel_adaptive_max_users _parallel_default_max_instances syn keyword oraKeywordUndObs _parallel_execution_message_align _parallel_fake_class_pct syn keyword oraKeywordUndObs _parallel_load_bal_unit _parallel_load_balancing syn keyword oraKeywordUndObs _parallel_min_message_pool _parallel_recovery_stopat syn keyword oraKeywordUndObs _parallel_server_idle_time _parallelism_cost_fudge_factor syn keyword oraKeywordUndObs _partial_pwise_join_enabled _pdml_separate_gim _push_join_predicate syn keyword oraKeywordUndObs _px_granule_size _px_index_sampling _px_load_publish_interval syn keyword oraKeywordUndObs _px_max_granules_per_slave _px_min_granules_per_slave _px_no_stealing syn keyword oraKeywordUndObs _row_cache_cursors _serial_direct_read _shared_pool_reserved_min_alloc syn keyword oraKeywordUndObs _sort_space_for_write_buffers _spin_count _system_trig_enabled syn keyword oraKeywordUndObs _trace_buffer_flushes _trace_cr_buffer_creates _trace_multi_block_reads syn keyword oraKeywordUndObs _transaction_recovery_servers _use_ism _yield_check_interval syn cluster oraAll add=oraKeyword,oraKeywordGroup,oraKeywordPref,oraKeywordObs,oraKeywordUnd,oraKeywordUndObs syn cluster oraAll add=oraValue,oraModifier,oraString,oraSpecial,oraComment "============================================================================== " highlighting " Only when an item doesn't have highlighting yet hi def link oraKeyword Statement "usual keywords hi def link oraKeywordGroup Type "keywords which group other keywords hi def link oraKeywordPref oraKeywordGroup "keywords which act as prefixes hi def link oraKeywordObs Todo "obsolete keywords hi def link oraKeywordUnd PreProc "undocumented keywords hi def link oraKeywordUndObs oraKeywordObs "undocumented obsolete keywords hi def link oraValue Identifier "values, like true or false hi def link oraModifier oraValue "modifies values hi def link oraString String "strings hi def link oraSpecial Special "special characters hi def link oraError Error "errors hi def link oraParenError oraError "errors caused by mismatching parantheses hi def link oraComment Comment "comments let b:current_syntax = "ora" if main_syntax == 'ora' unlet main_syntax endif " vim: ts=8 PK&]}WWvim80/syntax/redif.vimnu[" Vim syntax file " Language: ReDIF " Maintainer: Axel Castellane " Last Change: 2013 April 17 " Original Author: Axel Castellane " Source: http://openlib.org/acmes/root/docu/redif_1.html " File Extension: rdf " Note: The ReDIF format is used by RePEc. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " ReDIF is case-insensitive syntax case ignore " Structure: Some fields determine what fields can come next. For example: " Template-Type " *-Name " File-URL " *-Institution " Those fields span a syntax region over several lines so that these regions " can only contain their respective items. " Any line which is not a correct template or part of an argument is an error. " This comes at the very beginning, so it has the lowest priority and will " only match if nothing else did. syntax match redifWrongLine /^.\+/ display highlight def link redifWrongLine redifError " Comments must start with # and it must be the first character of the line, " otherwise I believe that they are considered as part of an argument. syntax match redifComment /^#.*/ containedin=ALL display " Defines the 9 possible multi-lines regions of Template-Type and the fields " they can contain. syntax region redifRegionTemplatePaper start=/^Template-Type:\_s*ReDIF-Paper \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsPaper,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile fold syntax region redifRegionTemplateArticle start=/^Template-Type:\_s*ReDIF-Article \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsArticle,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile fold syntax region redifRegionTemplateChapter start=/^Template-Type:\_s*ReDIF-Chapter \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsChapter,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile,redifRegionClusterProvider,redifRegionClusterPublisher,redifRegionClusterEditor fold syntax region redifRegionTemplateBook start=/^Template-Type:\_s*ReDIF-Book \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsBook,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile,redifRegionClusterProvider,redifRegionClusterPublisher,redifRegionClusterEditor fold syntax region redifRegionTemplateSoftware start=/^Template-Type:\_s*ReDIF-Software \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsSoftware,redifWrongLine,redifRegionClusterAuthor,redifRegionClusterFile fold syntax region redifRegionTemplateArchive start=/^Template-Type:\_s*ReDIF-Archive \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsArchive,redifWrongLine fold syntax region redifRegionTemplateSeries start=/^Template-Type:\_s*ReDIF-Series \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsSeries,redifWrongLine,redifRegionClusterProvider,redifRegionClusterPublisher,redifRegionClusterEditor fold syntax region redifRegionTemplateInstitution start=/^Template-Type:\_s*ReDIF-Institution \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsInstitution,redifWrongLine,redifRegionClusterPrimary,redifRegionClusterSecondary,redifRegionClusterTertiary,redifRegionClusterQuaternary fold syntax region redifRegionTemplatePerson start=/^Template-Type:\_s*ReDIF-Person \d\+\.\d\+/ end=/^Template-Type:/me=s-1 contains=redifContainerFieldsPerson,redifWrongLine,redifRegionClusterWorkplace fold " All fields are foldable (These come before clusters, so they have lower " priority). So they are contained in a foldable syntax region. syntax region redifContainerFieldsPaper start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTitle,redifFieldHandleOfWork,redifFieldLanguage,redifFieldContactEmail,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldNumber,redifFieldCreationDate,redifFieldRevisionDate,redifFieldPublicationStatus,redifFieldNote,redifFieldLength,redifFieldSeries,redifFieldAvailability,redifFieldOrderURL,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldRestriction,redifFieldPrice,redifFieldNotification,redifFieldPublicationType,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsArticle start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTitle,redifFieldHandleOfWork,redifFieldLanguage,redifFieldContactEmail,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldNumber,redifFieldCreationDate,redifFieldPublicationStatus,redifFieldOrderURL,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldRestriction,redifFieldPrice,redifFieldNotification,redifFieldPublicationType,redifFieldJournal,redifFieldVolume,redifFieldYear,redifFieldIssue,redifFieldMonth,redifFieldPages,redifFieldNumber,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsChapter start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfWork,redifFieldTitle,redifFieldContactEmail,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldBookTitle,redifFieldYear,redifFieldMonth,redifFieldPages,redifFieldChapter,redifFieldVolume,redifFieldEdition,redifFieldSeries,redifFieldISBN,redifFieldPublicationStatus,redifFieldNote,redifFieldInBook,redifFieldOrderURL,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsBook start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTitle,redifFieldHandleOfWork,redifFieldContactEmail,redifFieldYear,redifFieldMonth,redifFieldVolume,redifFieldEdition,redifFieldSeries,redifFieldISBN,redifFieldPublicationStatus,redifFieldNote,redifFieldAbstract,redifFieldClassificationJEL,redifFieldKeywords,redifFieldHasChapter,redifFieldPrice,redifFieldOrderURL,redifFieldNumber,redifFieldCreationDate,redifFieldPublicationDate,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsSoftware start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfWork,redifFieldTitle,redifFieldProgrammingLanguage,redifFieldAbstract,redifFieldNumber,redifFieldVersion,redifFieldClassificationJEL,redifFieldKeywords,redifFieldSize,redifFieldSeries,redifFieldCreationDate,redifFieldRevisionDate,redifFieldNote,redifFieldRequires,redifFieldArticleHandle,redifFieldBookHandle,redifFieldChapterHandle,redifFieldPaperHandle,redifFieldSoftwareHandle,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsArchive start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfArchive,redifFieldURL,redifFieldMaintainerEmail,redifFieldName,redifFieldMaintainerName,redifFieldMaintainerPhone,redifFieldMaintainerFax,redifFieldClassificationJEL,redifFieldHomepage,redifFieldDescription,redifFieldNotification,redifFieldRestriction,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsSeries start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldName,redifFieldHandleOfSeries,redifFieldMaintainerEmail,redifFieldType,redifFieldOrderEmail,redifFieldOrderHomepage,redifFieldOrderPostal,redifFieldPrice,redifFieldRestriction,redifFieldMaintainerPhone,redifFieldMaintainerFax,redifFieldMaintainerName,redifFieldDescription,redifFieldClassificationJEL,redifFieldKeywords,redifFieldNotification,redifFieldISSN,redifFieldFollowup,redifFieldPredecessor,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsInstitution start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfInstitution,redifFieldPrimaryDefunct,redifFieldSecondaryDefunct,redifFieldTertiaryDefunct,redifFieldTemplateType,redifWrongLine contained transparent fold syntax region redifContainerFieldsPerson start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldHandleOfPerson,redifFieldNameFull,redifFieldNameFirst,redifFieldNameLast,redifFieldNamePrefix,redifFieldNameMiddle,redifFieldNameSuffix,redifFieldNameASCII,redifFieldEmail,redifFieldHomepage,redifFieldFax,redifFieldPostal,redifFieldPhone,redifFieldWorkplaceOrganization,redifFieldAuthorPaper,redifFieldAuthorArticle,redifFieldAuthorSoftware,redifFieldAuthorBook,redifFieldAuthorChapter,redifFieldEditorBook,redifFieldEditorSeries,redifFieldClassificationJEL,redifFieldShortId,redifFieldLastLoginDate,redifFieldRegisteredDate,redifWrongLine contained transparent fold " Defines the 10 possible clusters and what they can contain " A field not in the cluster ends the cluster. syntax region redifRegionClusterWorkplace start=/^Workplace-Name:/ skip=/^Workplace-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsWorkplace fold syntax region redifRegionClusterPrimary start=/^Primary-Name:/ skip=/^Primary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsPrimary fold syntax region redifRegionClusterSecondary start=/^Secondary-Name:/ skip=/^Secondary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsSecondary fold syntax region redifRegionClusterTertiary start=/^Tertiary-Name:/ skip=/^Tertiary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsTertiary fold syntax region redifRegionClusterQuaternary start=/^Quaternary-Name:/ skip=/^Quaternary-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsQuaternary fold syntax region redifRegionClusterProvider start=/^Provider-Name:/ skip=/^Provider-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsProvider fold syntax region redifRegionClusterPublisher start=/^Publisher-Name:/ skip=/^Publisher-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsPublisher fold syntax region redifRegionClusterAuthor start=/^Author-Name:/ skip=/^Author-\%(Name\%(-First\|-Last\)\|Homepage\|Email\|Fax\|Postal\|Phone\|Person\|Workplace-Name\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifRegionClusterAuthorWorkplace,redifContainerFieldsAuthor fold syntax region redifRegionClusterEditor start=/^Editor-Name:/ skip=/^Editor-\%(Name\%(-First\|-Last\)\|Homepage\|Email\|Fax\|Postal\|Phone\|Person\|Workplace-Name\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifRegionClusterEditorWorkplace,redifContainerFieldsEditor fold syntax region redifRegionClusterFile start=/^File-URL:/ skip=/^File-\%(Format\|Function\|Size\|Restriction\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsFile fold " The foldable containers of the clusters. syntax region redifContainerFieldsWorkplace start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldWorkplaceName,redifFieldWorkplaceHomepage,redifFieldWorkplaceNameEnglish,redifFieldWorkplacePostal,redifFieldWorkplaceLocation,redifFieldWorkplaceEmail,redifFieldWorkplacePhone,redifFieldWorkplaceFax,redifFieldWorkplaceInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsPrimary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldPrimaryName,redifFieldPrimaryHomepage,redifFieldPrimaryNameEnglish,redifFieldPrimaryPostal,redifFieldPrimaryLocation,redifFieldPrimaryEmail,redifFieldPrimaryPhone,redifFieldPrimaryFax,redifFieldPrimaryInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsSecondary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldSecondaryName,redifFieldSecondaryHomepage,redifFieldSecondaryNameEnglish,redifFieldSecondaryPostal,redifFieldSecondaryLocation,redifFieldSecondaryEmail,redifFieldSecondaryPhone,redifFieldSecondaryFax,redifFieldSecondaryInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsTertiary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldTertiaryName,redifFieldTertiaryHomepage,redifFieldTertiaryNameEnglish,redifFieldTertiaryPostal,redifFieldTertiaryLocation,redifFieldTertiaryEmail,redifFieldTertiaryPhone,redifFieldTertiaryFax,redifFieldTertiaryInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsQuaternary start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldQuaternaryName,redifFieldQuaternaryHomepage,redifFieldQuaternaryNameEnglish,redifFieldQuaternaryPostal,redifFieldQuaternaryLocation,redifFieldQuaternaryEmail,redifFieldQuaternaryPhone,redifFieldQuaternaryFax,redifFieldQuaternaryInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsProvider start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldProviderName,redifFieldProviderHomepage,redifFieldProviderNameEnglish,redifFieldProviderPostal,redifFieldProviderLocation,redifFieldProviderEmail,redifFieldProviderPhone,redifFieldProviderFax,redifFieldProviderInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsPublisher start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldPublisherName,redifFieldPublisherHomepage,redifFieldPublisherNameEnglish,redifFieldPublisherPostal,redifFieldPublisherLocation,redifFieldPublisherEmail,redifFieldPublisherPhone,redifFieldPublisherFax,redifFieldPublisherInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsAuthor start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldAuthorName,redifFieldAuthorNameFirst,redifFieldAuthorNameLast,redifFieldAuthorHomepage,redifFieldAuthorEmail,redifFieldAuthorFax,redifFieldAuthorPostal,redifFieldAuthorPhone,redifFieldAuthorPerson,redifWrongLine contained transparent fold syntax region redifContainerFieldsEditor start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldEditorName,redifFieldEditorNameFirst,redifFieldEditorNameLast,redifFieldEditorHomepage,redifFieldEditorEmail,redifFieldEditorFax,redifFieldEditorPostal,redifFieldEditorPhone,redifFieldEditorPerson,redifWrongLine contained transparent fold syntax region redifContainerFieldsFile start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldFileURL,redifFieldFileFormat,redifFieldFileFunction,redifFieldFileSize,redifFieldFileRestriction,redifWrongLine contained transparent fold " The two clusters in cluster (must be presented after to have priority over " fields containers) syntax region redifRegionClusterAuthorWorkplace start=/^Author-Workplace-Name:/ skip=/^Author-Workplace-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsAuthorWorkplace fold syntax region redifRegionClusterEditorWorkplace start=/^Editor-Workplace-Name:/ skip=/^Editor-Workplace-\%(Name-English\|Homepage\|Postal\|Location\|Email\|Phone\|Fax\|Institution\):/ end=/^\S\{-}:/me=s-1 contained contains=redifWrongLine,redifContainerFieldsEditorWorkplace fold " Their foldable fields containers syntax region redifContainerFieldsAuthorWorkplace start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldAuthorWorkplaceName,redifFieldAuthorWorkplaceHomepage,redifFieldAuthorWorkplaceNameEnglish,redifFieldAuthorWorkplacePostal,redifFieldAuthorWorkplaceLocation,redifFieldAuthorWorkplaceEmail,redifFieldAuthorWorkplacePhone,redifFieldAuthorWorkplaceFax,redifFieldAuthorWorkplaceInstitution,redifWrongLine contained transparent fold syntax region redifContainerFieldsEditorWorkplace start=/^\S\{-}:/ end=/^\S\{-}:/me=s-1 contains=redifFieldEditorWorkplaceName,redifFieldEditorWorkplaceHomepage,redifFieldEditorWorkplaceNameEnglish,redifFieldEditorWorkplacePostal,redifFieldEditorWorkplaceLocation,redifFieldEditorWorkplaceEmail,redifFieldEditorWorkplacePhone,redifFieldEditorWorkplaceFax,redifFieldEditorWorkplaceInstitution,redifWrongLine contained transparent fold " All the possible fields " Note: The "Handle" field is handled a little bit differently, because it " does not have the same meaning depending on the Template-Type. See: " /redifFieldHandleOf.... syntax match redifFieldAbstract /^Abstract:/ skipwhite skipempty nextgroup=redifArgumentAbstract contained syntax match redifFieldArticleHandle /^Article-Handle:/ skipwhite skipempty nextgroup=redifArgumentArticleHandle contained syntax match redifFieldAuthorArticle /^Author-Article:/ skipwhite skipempty nextgroup=redifArgumentAuthorArticle contained syntax match redifFieldAuthorBook /^Author-Book:/ skipwhite skipempty nextgroup=redifArgumentAuthorBook contained syntax match redifFieldAuthorChapter /^Author-Chapter:/ skipwhite skipempty nextgroup=redifArgumentAuthorChapter contained syntax match redifFieldAuthorEmail /^Author-Email:/ skipwhite skipempty nextgroup=redifArgumentAuthorEmail contained syntax match redifFieldAuthorFax /^Author-Fax:/ skipwhite skipempty nextgroup=redifArgumentAuthorFax contained syntax match redifFieldAuthorHomepage /^Author-Homepage:/ skipwhite skipempty nextgroup=redifArgumentAuthorHomepage contained syntax match redifFieldAuthorName /^Author-Name:/ skipwhite skipempty nextgroup=redifArgumentAuthorName contained syntax match redifFieldAuthorNameFirst /^Author-Name-First:/ skipwhite skipempty nextgroup=redifArgumentAuthorNameFirst contained syntax match redifFieldAuthorNameLast /^Author-Name-Last:/ skipwhite skipempty nextgroup=redifArgumentAuthorNameLast contained syntax match redifFieldAuthorPaper /^Author-Paper:/ skipwhite skipempty nextgroup=redifArgumentAuthorPaper contained syntax match redifFieldAuthorPerson /^Author-Person:/ skipwhite skipempty nextgroup=redifArgumentAuthorPerson contained syntax match redifFieldAuthorPhone /^Author-Phone:/ skipwhite skipempty nextgroup=redifArgumentAuthorPhone contained syntax match redifFieldAuthorPostal /^Author-Postal:/ skipwhite skipempty nextgroup=redifArgumentAuthorPostal contained syntax match redifFieldAuthorSoftware /^Author-Software:/ skipwhite skipempty nextgroup=redifArgumentAuthorSoftware contained syntax match redifFieldAuthorWorkplaceEmail /^Author-Workplace-Email:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceEmail contained syntax match redifFieldAuthorWorkplaceFax /^Author-Workplace-Fax:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceFax contained syntax match redifFieldAuthorWorkplaceHomepage /^Author-Workplace-Homepage:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceHomepage contained syntax match redifFieldAuthorWorkplaceInstitution /^Author-Workplace-Institution:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceInstitution contained syntax match redifFieldAuthorWorkplaceLocation /^Author-Workplace-Location:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceLocation contained syntax match redifFieldAuthorWorkplaceName /^Author-Workplace-Name:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceName contained syntax match redifFieldAuthorWorkplaceNameEnglish /^Author-Workplace-Name-English:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplaceNameEnglish contained syntax match redifFieldAuthorWorkplacePhone /^Author-Workplace-Phone:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplacePhone contained syntax match redifFieldAuthorWorkplacePostal /^Author-Workplace-Postal:/ skipwhite skipempty nextgroup=redifArgumentAuthorWorkplacePostal contained syntax match redifFieldAvailability /^Availability:/ skipwhite skipempty nextgroup=redifArgumentAvailability contained syntax match redifFieldBookHandle /^Book-Handle:/ skipwhite skipempty nextgroup=redifArgumentBookHandle contained syntax match redifFieldBookTitle /^Book-Title:/ skipwhite skipempty nextgroup=redifArgumentBookTitle contained syntax match redifFieldChapterHandle /^Chapter-Handle:/ skipwhite skipempty nextgroup=redifArgumentChapterHandle contained syntax match redifFieldChapter /^Chapter:/ skipwhite skipempty nextgroup=redifArgumentChapter contained syntax match redifFieldClassificationJEL /^Classification-JEL:/ skipwhite skipempty nextgroup=redifArgumentClassificationJEL contained syntax match redifFieldContactEmail /^Contact-Email:/ skipwhite skipempty nextgroup=redifArgumentContactEmail contained syntax match redifFieldCreationDate /^Creation-Date:/ skipwhite skipempty nextgroup=redifArgumentCreationDate contained syntax match redifFieldDescription /^Description:/ skipwhite skipempty nextgroup=redifArgumentDescription contained syntax match redifFieldEdition /^Edition:/ skipwhite skipempty nextgroup=redifArgumentEdition contained syntax match redifFieldEditorBook /^Editor-Book:/ skipwhite skipempty nextgroup=redifArgumentEditorBook contained syntax match redifFieldEditorEmail /^Editor-Email:/ skipwhite skipempty nextgroup=redifArgumentEditorEmail contained syntax match redifFieldEditorFax /^Editor-Fax:/ skipwhite skipempty nextgroup=redifArgumentEditorFax contained syntax match redifFieldEditorHomepage /^Editor-Homepage:/ skipwhite skipempty nextgroup=redifArgumentEditorHomepage contained syntax match redifFieldEditorName /^Editor-Name:/ skipwhite skipempty nextgroup=redifArgumentEditorName contained syntax match redifFieldEditorNameFirst /^Editor-Name-First:/ skipwhite skipempty nextgroup=redifArgumentEditorNameFirst contained syntax match redifFieldEditorNameLast /^Editor-Name-Last:/ skipwhite skipempty nextgroup=redifArgumentEditorNameLast contained syntax match redifFieldEditorPerson /^Editor-Person:/ skipwhite skipempty nextgroup=redifArgumentEditorPerson contained syntax match redifFieldEditorPhone /^Editor-Phone:/ skipwhite skipempty nextgroup=redifArgumentEditorPhone contained syntax match redifFieldEditorPostal /^Editor-Postal:/ skipwhite skipempty nextgroup=redifArgumentEditorPostal contained syntax match redifFieldEditorSeries /^Editor-Series:/ skipwhite skipempty nextgroup=redifArgumentEditorSeries contained syntax match redifFieldEditorWorkplaceEmail /^Editor-Workplace-Email:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceEmail contained syntax match redifFieldEditorWorkplaceFax /^Editor-Workplace-Fax:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceFax contained syntax match redifFieldEditorWorkplaceHomepage /^Editor-Workplace-Homepage:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceHomepage contained syntax match redifFieldEditorWorkplaceInstitution /^Editor-Workplace-Institution:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceInstitution contained syntax match redifFieldEditorWorkplaceLocation /^Editor-Workplace-Location:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceLocation contained syntax match redifFieldEditorWorkplaceName /^Editor-Workplace-Name:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceName contained syntax match redifFieldEditorWorkplaceNameEnglish /^Editor-Workplace-Name-English:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplaceNameEnglish contained syntax match redifFieldEditorWorkplacePhone /^Editor-Workplace-Phone:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplacePhone contained syntax match redifFieldEditorWorkplacePostal /^Editor-Workplace-Postal:/ skipwhite skipempty nextgroup=redifArgumentEditorWorkplacePostal contained syntax match redifFieldEmail /^Email:/ skipwhite skipempty nextgroup=redifArgumentEmail contained syntax match redifFieldFax /^Fax:/ skipwhite skipempty nextgroup=redifArgumentFax contained syntax match redifFieldFileFormat /^File-Format:/ skipwhite skipempty nextgroup=redifArgumentFileFormat contained syntax match redifFieldFileFunction /^File-Function:/ skipwhite skipempty nextgroup=redifArgumentFileFunction contained syntax match redifFieldFileRestriction /^File-Restriction:/ skipwhite skipempty nextgroup=redifArgumentFileRestriction contained syntax match redifFieldFileSize /^File-Size:/ skipwhite skipempty nextgroup=redifArgumentFileSize contained syntax match redifFieldFileURL /^File-URL:/ skipwhite skipempty nextgroup=redifArgumentFileURL contained syntax match redifFieldFollowup /^Followup:/ skipwhite skipempty nextgroup=redifArgumentFollowup contained syntax match redifFieldHandleOfArchive /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfArchive contained syntax match redifFieldHandleOfInstitution /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfInstitution contained syntax match redifFieldHandleOfPerson /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfPerson contained syntax match redifFieldHandleOfSeries /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfSeries contained syntax match redifFieldHandleOfWork /^Handle:/ skipwhite skipempty nextgroup=redifArgumentHandleOfWork contained syntax match redifFieldHasChapter /^HasChapter:/ skipwhite skipempty nextgroup=redifArgumentHasChapter contained syntax match redifFieldHomepage /^Homepage:/ skipwhite skipempty nextgroup=redifArgumentHomepage contained syntax match redifFieldInBook /^In-Book:/ skipwhite skipempty nextgroup=redifArgumentInBook contained syntax match redifFieldISBN /^ISBN:/ skipwhite skipempty nextgroup=redifArgumentISBN contained syntax match redifFieldISSN /^ISSN:/ skipwhite skipempty nextgroup=redifArgumentISSN contained syntax match redifFieldIssue /^Issue:/ skipwhite skipempty nextgroup=redifArgumentIssue contained syntax match redifFieldJournal /^Journal:/ skipwhite skipempty nextgroup=redifArgumentJournal contained syntax match redifFieldKeywords /^Keywords:/ skipwhite skipempty nextgroup=redifArgumentKeywords contained syntax match redifFieldKeywords /^Keywords:/ skipwhite skipempty nextgroup=redifArgumentKeywords contained syntax match redifFieldLanguage /^Language:/ skipwhite skipempty nextgroup=redifArgumentLanguage contained syntax match redifFieldLastLoginDate /^Last-Login-Date:/ skipwhite skipempty nextgroup=redifArgumentLastLoginDate contained syntax match redifFieldLength /^Length:/ skipwhite skipempty nextgroup=redifArgumentLength contained syntax match redifFieldMaintainerEmail /^Maintainer-Email:/ skipwhite skipempty nextgroup=redifArgumentMaintainerEmail contained syntax match redifFieldMaintainerFax /^Maintainer-Fax:/ skipwhite skipempty nextgroup=redifArgumentMaintainerFax contained syntax match redifFieldMaintainerName /^Maintainer-Name:/ skipwhite skipempty nextgroup=redifArgumentMaintainerName contained syntax match redifFieldMaintainerPhone /^Maintainer-Phone:/ skipwhite skipempty nextgroup=redifArgumentMaintainerPhone contained syntax match redifFieldMonth /^Month:/ skipwhite skipempty nextgroup=redifArgumentMonth contained syntax match redifFieldNameASCII /^Name-ASCII:/ skipwhite skipempty nextgroup=redifArgumentNameASCII contained syntax match redifFieldNameFirst /^Name-First:/ skipwhite skipempty nextgroup=redifArgumentNameFirst contained syntax match redifFieldNameFull /^Name-Full:/ skipwhite skipempty nextgroup=redifArgumentNameFull contained syntax match redifFieldNameLast /^Name-Last:/ skipwhite skipempty nextgroup=redifArgumentNameLast contained syntax match redifFieldNameMiddle /^Name-Middle:/ skipwhite skipempty nextgroup=redifArgumentNameMiddle contained syntax match redifFieldNamePrefix /^Name-Prefix:/ skipwhite skipempty nextgroup=redifArgumentNamePrefix contained syntax match redifFieldNameSuffix /^Name-Suffix:/ skipwhite skipempty nextgroup=redifArgumentNameSuffix contained syntax match redifFieldName /^Name:/ skipwhite skipempty nextgroup=redifArgumentName contained syntax match redifFieldNote /^Note:/ skipwhite skipempty nextgroup=redifArgumentNote contained syntax match redifFieldNotification /^Notification:/ skipwhite skipempty nextgroup=redifArgumentNotification contained syntax match redifFieldNumber /^Number:/ skipwhite skipempty nextgroup=redifArgumentNumber contained syntax match redifFieldOrderEmail /^Order-Email:/ skipwhite skipempty nextgroup=redifArgumentOrderEmail contained syntax match redifFieldOrderHomepage /^Order-Homepage:/ skipwhite skipempty nextgroup=redifArgumentOrderHomepage contained syntax match redifFieldOrderPostal /^Order-Postal:/ skipwhite skipempty nextgroup=redifArgumentOrderPostal contained syntax match redifFieldOrderURL /^Order-URL:/ skipwhite skipempty nextgroup=redifArgumentOrderURL contained syntax match redifFieldPages /^Pages:/ skipwhite skipempty nextgroup=redifArgumentPages contained syntax match redifFieldPaperHandle /^Paper-Handle:/ skipwhite skipempty nextgroup=redifArgumentPaperHandle contained syntax match redifFieldPhone /^Phone:/ skipwhite skipempty nextgroup=redifArgumentPhone contained syntax match redifFieldPostal /^Postal:/ skipwhite skipempty nextgroup=redifArgumentPostal contained syntax match redifFieldPredecessor /^Predecessor:/ skipwhite skipempty nextgroup=redifArgumentPredecessor contained syntax match redifFieldPrice /^Price:/ skipwhite skipempty nextgroup=redifArgumentPrice contained syntax match redifFieldPrimaryDefunct /^Primary-Defunct:/ skipwhite skipempty nextgroup=redifArgumentPrimaryDefunct contained syntax match redifFieldPrimaryEmail /^Primary-Email:/ skipwhite skipempty nextgroup=redifArgumentPrimaryEmail contained syntax match redifFieldPrimaryFax /^Primary-Fax:/ skipwhite skipempty nextgroup=redifArgumentPrimaryFax contained syntax match redifFieldPrimaryHomepage /^Primary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentPrimaryHomepage contained syntax match redifFieldPrimaryInstitution /^Primary-Institution:/ skipwhite skipempty nextgroup=redifArgumentPrimaryInstitution contained syntax match redifFieldPrimaryLocation /^Primary-Location:/ skipwhite skipempty nextgroup=redifArgumentPrimaryLocation contained syntax match redifFieldPrimaryName /^Primary-Name:/ skipwhite skipempty nextgroup=redifArgumentPrimaryName contained syntax match redifFieldPrimaryNameEnglish /^Primary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentPrimaryNameEnglish contained syntax match redifFieldPrimaryPhone /^Primary-Phone:/ skipwhite skipempty nextgroup=redifArgumentPrimaryPhone contained syntax match redifFieldPrimaryPostal /^Primary-Postal:/ skipwhite skipempty nextgroup=redifArgumentPrimaryPostal contained syntax match redifFieldProgrammingLanguage /^Programming-Language:/ skipwhite skipempty nextgroup=redifArgumentProgrammingLanguage contained syntax match redifFieldProviderEmail /^Provider-Email:/ skipwhite skipempty nextgroup=redifArgumentProviderEmail contained syntax match redifFieldProviderFax /^Provider-Fax:/ skipwhite skipempty nextgroup=redifArgumentProviderFax contained syntax match redifFieldProviderHomepage /^Provider-Homepage:/ skipwhite skipempty nextgroup=redifArgumentProviderHomepage contained syntax match redifFieldProviderInstitution /^Provider-Institution:/ skipwhite skipempty nextgroup=redifArgumentProviderInstitution contained syntax match redifFieldProviderLocation /^Provider-Location:/ skipwhite skipempty nextgroup=redifArgumentProviderLocation contained syntax match redifFieldProviderName /^Provider-Name:/ skipwhite skipempty nextgroup=redifArgumentProviderName contained syntax match redifFieldProviderNameEnglish /^Provider-Name-English:/ skipwhite skipempty nextgroup=redifArgumentProviderNameEnglish contained syntax match redifFieldProviderPhone /^Provider-Phone:/ skipwhite skipempty nextgroup=redifArgumentProviderPhone contained syntax match redifFieldProviderPostal /^Provider-Postal:/ skipwhite skipempty nextgroup=redifArgumentProviderPostal contained syntax match redifFieldPublicationDate /^Publication-Date:/ skipwhite skipempty nextgroup=redifArgumentPublicationDate contained syntax match redifFieldPublicationStatus /^Publication-Status:/ skipwhite skipempty nextgroup=redifArgumentPublicationStatus contained syntax match redifFieldPublicationType /^Publication-Type:/ skipwhite skipempty nextgroup=redifArgumentPublicationType contained syntax match redifFieldQuaternaryEmail /^Quaternary-Email:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryEmail contained syntax match redifFieldQuaternaryFax /^Quaternary-Fax:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryFax contained syntax match redifFieldQuaternaryHomepage /^Quaternary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryHomepage contained syntax match redifFieldQuaternaryInstitution /^Quaternary-Institution:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryInstitution contained syntax match redifFieldQuaternaryLocation /^Quaternary-Location:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryLocation contained syntax match redifFieldQuaternaryName /^Quaternary-Name:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryName contained syntax match redifFieldQuaternaryNameEnglish /^Quaternary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryNameEnglish contained syntax match redifFieldQuaternaryPhone /^Quaternary-Phone:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryPhone contained syntax match redifFieldQuaternaryPostal /^Quaternary-Postal:/ skipwhite skipempty nextgroup=redifArgumentQuaternaryPostal contained syntax match redifFieldRegisteredDate /^Registered-Date:/ skipwhite skipempty nextgroup=redifArgumentRegisteredDate contained syntax match redifFieldRequires /^Requires:/ skipwhite skipempty nextgroup=redifArgumentRequires contained syntax match redifFieldRestriction /^Restriction:/ skipwhite skipempty nextgroup=redifArgumentRestriction contained syntax match redifFieldRevisionDate /^Revision-Date:/ skipwhite skipempty nextgroup=redifArgumentRevisionDate contained syntax match redifFieldSecondaryDefunct /^Secondary-Defunct:/ skipwhite skipempty nextgroup=redifArgumentSecondaryDefunct contained syntax match redifFieldSecondaryEmail /^Secondary-Email:/ skipwhite skipempty nextgroup=redifArgumentSecondaryEmail contained syntax match redifFieldSecondaryFax /^Secondary-Fax:/ skipwhite skipempty nextgroup=redifArgumentSecondaryFax contained syntax match redifFieldSecondaryHomepage /^Secondary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentSecondaryHomepage contained syntax match redifFieldSecondaryInstitution /^Secondary-Institution:/ skipwhite skipempty nextgroup=redifArgumentSecondaryInstitution contained syntax match redifFieldSecondaryLocation /^Secondary-Location:/ skipwhite skipempty nextgroup=redifArgumentSecondaryLocation contained syntax match redifFieldSecondaryName /^Secondary-Name:/ skipwhite skipempty nextgroup=redifArgumentSecondaryName contained syntax match redifFieldSecondaryNameEnglish /^Secondary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentSecondaryNameEnglish contained syntax match redifFieldSecondaryPhone /^Secondary-Phone:/ skipwhite skipempty nextgroup=redifArgumentSecondaryPhone contained syntax match redifFieldSecondaryPostal /^Secondary-Postal:/ skipwhite skipempty nextgroup=redifArgumentSecondaryPostal contained syntax match redifFieldSeries /^Series:/ skipwhite skipempty nextgroup=redifArgumentSeries contained syntax match redifFieldShortId /^Short-Id:/ skipwhite skipempty nextgroup=redifArgumentShortId contained syntax match redifFieldSize /^Size:/ skipwhite skipempty nextgroup=redifArgumentSize contained syntax match redifFieldSoftwareHandle /^Software-Handle:/ skipwhite skipempty nextgroup=redifArgumentSoftwareHandle contained syntax match redifFieldTemplateType /^Template-Type:/ skipwhite skipempty nextgroup=redifArgumentTemplateType contained syntax match redifFieldTertiaryDefunct /^Tertiary-Defunct:/ skipwhite skipempty nextgroup=redifArgumentTertiaryDefunct contained syntax match redifFieldTertiaryEmail /^Tertiary-Email:/ skipwhite skipempty nextgroup=redifArgumentTertiaryEmail contained syntax match redifFieldTertiaryFax /^Tertiary-Fax:/ skipwhite skipempty nextgroup=redifArgumentTertiaryFax contained syntax match redifFieldTertiaryHomepage /^Tertiary-Homepage:/ skipwhite skipempty nextgroup=redifArgumentTertiaryHomepage contained syntax match redifFieldTertiaryInstitution /^Tertiary-Institution:/ skipwhite skipempty nextgroup=redifArgumentTertiaryInstitution contained syntax match redifFieldTertiaryLocation /^Tertiary-Location:/ skipwhite skipempty nextgroup=redifArgumentTertiaryLocation contained syntax match redifFieldTertiaryName /^Tertiary-Name:/ skipwhite skipempty nextgroup=redifArgumentTertiaryName contained syntax match redifFieldTertiaryNameEnglish /^Tertiary-Name-English:/ skipwhite skipempty nextgroup=redifArgumentTertiaryNameEnglish contained syntax match redifFieldTertiaryPhone /^Tertiary-Phone:/ skipwhite skipempty nextgroup=redifArgumentTertiaryPhone contained syntax match redifFieldTertiaryPostal /^Tertiary-Postal:/ skipwhite skipempty nextgroup=redifArgumentTertiaryPostal contained syntax match redifFieldTitle /^Title:/ skipwhite skipempty nextgroup=redifArgumentTitle contained syntax match redifFieldType /^Type:/ skipwhite skipempty nextgroup=redifArgumentType contained syntax match redifFieldURL /^URL:/ skipwhite skipempty nextgroup=redifArgumentURL contained syntax match redifFieldVersion /^Version:/ skipwhite skipempty nextgroup=redifArgumentVersion contained syntax match redifFieldVolume /^Volume:/ skipwhite skipempty nextgroup=redifArgumentVolume contained syntax match redifFieldWorkplaceEmail /^Workplace-Email:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceEmail contained syntax match redifFieldWorkplaceFax /^Workplace-Fax:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceFax contained syntax match redifFieldWorkplaceHomepage /^Workplace-Homepage:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceHomepage contained syntax match redifFieldWorkplaceInstitution /^Workplace-Institution:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceInstitution contained syntax match redifFieldWorkplaceLocation /^Workplace-Location:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceLocation contained syntax match redifFieldWorkplaceName /^Workplace-Name:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceName contained syntax match redifFieldWorkplaceNameEnglish /^Workplace-Name-English:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceNameEnglish contained syntax match redifFieldWorkplaceOrganization /^Workplace-Organization:/ skipwhite skipempty nextgroup=redifArgumentWorkplaceOrganization contained syntax match redifFieldWorkplacePhone /^Workplace-Phone:/ skipwhite skipempty nextgroup=redifArgumentWorkplacePhone contained syntax match redifFieldWorkplacePostal /^Workplace-Postal:/ skipwhite skipempty nextgroup=redifArgumentWorkplacePostal contained syntax match redifFieldYear /^Year:/ skipwhite skipempty nextgroup=redifArgumentYear contained highlight def link redifFieldAbstract redifField highlight def link redifFieldArticleHandle redifField highlight def link redifFieldAuthorArticle redifField highlight def link redifFieldAuthorBook redifField highlight def link redifFieldAuthorChapter redifField highlight def link redifFieldAuthorEmail redifField highlight def link redifFieldAuthorFax redifField highlight def link redifFieldAuthorHomepage redifField highlight def link redifFieldAuthorName redifField highlight def link redifFieldAuthorNameFirst redifField highlight def link redifFieldAuthorNameLast redifField highlight def link redifFieldAuthorPaper redifField highlight def link redifFieldAuthorPerson redifField highlight def link redifFieldAuthorPhone redifField highlight def link redifFieldAuthorPostal redifField highlight def link redifFieldAuthorSoftware redifField highlight def link redifFieldAuthorWorkplaceEmail redifField highlight def link redifFieldAuthorWorkplaceFax redifField highlight def link redifFieldAuthorWorkplaceHomepage redifField highlight def link redifFieldAuthorWorkplaceInstitution redifField highlight def link redifFieldAuthorWorkplaceLocation redifField highlight def link redifFieldAuthorWorkplaceName redifField highlight def link redifFieldAuthorWorkplaceNameEnglish redifField highlight def link redifFieldAuthorWorkplacePhone redifField highlight def link redifFieldAuthorWorkplacePostal redifField highlight def link redifFieldAvailability redifField highlight def link redifFieldBookHandle redifField highlight def link redifFieldBookTitle redifField highlight def link redifFieldChapterHandle redifField highlight def link redifFieldChapter redifField highlight def link redifFieldClassificationJEL redifField highlight def link redifFieldContactEmail redifField highlight def link redifFieldCreationDate redifField highlight def link redifFieldDescription redifField highlight def link redifFieldEdition redifField highlight def link redifFieldEditorBook redifField highlight def link redifFieldEditorEmail redifField highlight def link redifFieldEditorFax redifField highlight def link redifFieldEditorHomepage redifField highlight def link redifFieldEditorName redifField highlight def link redifFieldEditorNameFirst redifField highlight def link redifFieldEditorNameLast redifField highlight def link redifFieldEditorPerson redifField highlight def link redifFieldEditorPhone redifField highlight def link redifFieldEditorPostal redifField highlight def link redifFieldEditorSeries redifField highlight def link redifFieldEditorWorkplaceEmail redifField highlight def link redifFieldEditorWorkplaceFax redifField highlight def link redifFieldEditorWorkplaceHomepage redifField highlight def link redifFieldEditorWorkplaceInstitution redifField highlight def link redifFieldEditorWorkplaceLocation redifField highlight def link redifFieldEditorWorkplaceName redifField highlight def link redifFieldEditorWorkplaceNameEnglish redifField highlight def link redifFieldEditorWorkplacePhone redifField highlight def link redifFieldEditorWorkplacePostal redifField highlight def link redifFieldEmail redifField highlight def link redifFieldFax redifField highlight def link redifFieldFileFormat redifField highlight def link redifFieldFileFunction redifField highlight def link redifFieldFileRestriction redifField highlight def link redifFieldFileSize redifField highlight def link redifFieldFileURL redifField highlight def link redifFieldFollowup redifField highlight def link redifFieldHandleOfArchive redifField highlight def link redifFieldHandleOfInstitution redifField highlight def link redifFieldHandleOfPerson redifField highlight def link redifFieldHandleOfSeries redifField highlight def link redifFieldHandleOfWork redifField highlight def link redifFieldHasChapter redifField highlight def link redifFieldHomepage redifField highlight def link redifFieldInBook redifField highlight def link redifFieldISBN redifField highlight def link redifFieldISSN redifField highlight def link redifFieldIssue redifField highlight def link redifFieldJournal redifField highlight def link redifFieldKeywords redifField highlight def link redifFieldKeywords redifField highlight def link redifFieldLanguage redifField highlight def link redifFieldLastLoginDate redifField highlight def link redifFieldLength redifField highlight def link redifFieldMaintainerEmail redifField highlight def link redifFieldMaintainerFax redifField highlight def link redifFieldMaintainerName redifField highlight def link redifFieldMaintainerPhone redifField highlight def link redifFieldMonth redifField highlight def link redifFieldNameASCII redifField highlight def link redifFieldNameFirst redifField highlight def link redifFieldNameFull redifField highlight def link redifFieldNameLast redifField highlight def link redifFieldNameMiddle redifField highlight def link redifFieldNamePrefix redifField highlight def link redifFieldNameSuffix redifField highlight def link redifFieldName redifField highlight def link redifFieldNote redifField highlight def link redifFieldNotification redifField highlight def link redifFieldNumber redifField highlight def link redifFieldOrderEmail redifField highlight def link redifFieldOrderHomepage redifField highlight def link redifFieldOrderPostal redifField highlight def link redifFieldOrderURL redifField highlight def link redifFieldPages redifField highlight def link redifFieldPaperHandle redifField highlight def link redifFieldPhone redifField highlight def link redifFieldPostal redifField highlight def link redifFieldPredecessor redifField highlight def link redifFieldPrice redifField highlight def link redifFieldPrimaryDefunct redifField highlight def link redifFieldPrimaryEmail redifField highlight def link redifFieldPrimaryFax redifField highlight def link redifFieldPrimaryHomepage redifField highlight def link redifFieldPrimaryInstitution redifField highlight def link redifFieldPrimaryLocation redifField highlight def link redifFieldPrimaryName redifField highlight def link redifFieldPrimaryNameEnglish redifField highlight def link redifFieldPrimaryPhone redifField highlight def link redifFieldPrimaryPostal redifField highlight def link redifFieldProgrammingLanguage redifField highlight def link redifFieldProviderEmail redifField highlight def link redifFieldProviderFax redifField highlight def link redifFieldProviderHomepage redifField highlight def link redifFieldProviderInstitution redifField highlight def link redifFieldProviderLocation redifField highlight def link redifFieldProviderName redifField highlight def link redifFieldProviderNameEnglish redifField highlight def link redifFieldProviderPhone redifField highlight def link redifFieldProviderPostal redifField highlight def link redifFieldPublicationDate redifField highlight def link redifFieldPublicationStatus redifField highlight def link redifFieldPublicationType redifField highlight def link redifFieldQuaternaryEmail redifField highlight def link redifFieldQuaternaryFax redifField highlight def link redifFieldQuaternaryHomepage redifField highlight def link redifFieldQuaternaryInstitution redifField highlight def link redifFieldQuaternaryLocation redifField highlight def link redifFieldQuaternaryName redifField highlight def link redifFieldQuaternaryNameEnglish redifField highlight def link redifFieldQuaternaryPhone redifField highlight def link redifFieldQuaternaryPostal redifField highlight def link redifFieldRegisteredDate redifField highlight def link redifFieldRequires redifField highlight def link redifFieldRestriction redifField highlight def link redifFieldRevisionDate redifField highlight def link redifFieldSecondaryDefunct redifField highlight def link redifFieldSecondaryEmail redifField highlight def link redifFieldSecondaryFax redifField highlight def link redifFieldSecondaryHomepage redifField highlight def link redifFieldSecondaryInstitution redifField highlight def link redifFieldSecondaryLocation redifField highlight def link redifFieldSecondaryName redifField highlight def link redifFieldSecondaryNameEnglish redifField highlight def link redifFieldSecondaryPhone redifField highlight def link redifFieldSecondaryPostal redifField highlight def link redifFieldSeries redifField highlight def link redifFieldShortId redifField highlight def link redifFieldSize redifField highlight def link redifFieldSoftwareHandle redifField highlight def link redifFieldTemplateType redifField highlight def link redifFieldTertiaryDefunct redifField highlight def link redifFieldTertiaryEmail redifField highlight def link redifFieldTertiaryFax redifField highlight def link redifFieldTertiaryHomepage redifField highlight def link redifFieldTertiaryInstitution redifField highlight def link redifFieldTertiaryLocation redifField highlight def link redifFieldTertiaryName redifField highlight def link redifFieldTertiaryNameEnglish redifField highlight def link redifFieldTertiaryPhone redifField highlight def link redifFieldTertiaryPostal redifField highlight def link redifFieldTitle redifField highlight def link redifFieldTitle redifField highlight def link redifFieldType redifField highlight def link redifFieldURL redifField highlight def link redifFieldVersion redifField highlight def link redifFieldVolume redifField highlight def link redifFieldWorkplaceEmail redifField highlight def link redifFieldWorkplaceFax redifField highlight def link redifFieldWorkplaceHomepage redifField highlight def link redifFieldWorkplaceInstitution redifField highlight def link redifFieldWorkplaceLocation redifField highlight def link redifFieldWorkplaceName redifField highlight def link redifFieldWorkplaceNameEnglish redifField highlight def link redifFieldWorkplaceOrganization redifField highlight def link redifFieldWorkplacePhone redifField highlight def link redifFieldWorkplacePostal redifField highlight def link redifFieldYear redifField " Deprecated " same as Provider-* " nextgroup=redifArgumentProvider* syntax match redifFieldPublisherEmail /^Publisher-Email:/ skipwhite skipempty nextgroup=redifArgumentProviderEmail contained syntax match redifFieldPublisherFax /^Publisher-Fax:/ skipwhite skipempty nextgroup=redifArgumentProviderFax contained syntax match redifFieldPublisherHomepage /^Publisher-Homepage:/ skipwhite skipempty nextgroup=redifArgumentProviderHomepage contained syntax match redifFieldPublisherInstitution /^Publisher-Institution:/ skipwhite skipempty nextgroup=redifArgumentProviderInstitution contained syntax match redifFieldPublisherLocation /^Publisher-Location:/ skipwhite skipempty nextgroup=redifArgumentProviderLocation contained syntax match redifFieldPublisherName /^Publisher-Name:/ skipwhite skipempty nextgroup=redifArgumentProviderName contained syntax match redifFieldPublisherNameEnglish /^Publisher-Name-English:/ skipwhite skipempty nextgroup=redifArgumentProviderNameEnglish contained syntax match redifFieldPublisherPhone /^Publisher-Phone:/ skipwhite skipempty nextgroup=redifArgumentProviderPhone contained syntax match redifFieldPublisherPostal /^Publisher-Postal:/ skipwhite skipempty nextgroup=redifArgumentProviderPostal contained highlight def link redifFieldPublisherEmail redifFieldDeprecated highlight def link redifFieldPublisherFax redifFieldDeprecated highlight def link redifFieldPublisherHomepage redifFieldDeprecated highlight def link redifFieldPublisherInstitution redifFieldDeprecated highlight def link redifFieldPublisherLocation redifFieldDeprecated highlight def link redifFieldPublisherName redifFieldDeprecated highlight def link redifFieldPublisherNameEnglish redifFieldDeprecated highlight def link redifFieldPublisherPhone redifFieldDeprecated highlight def link redifFieldPublisherPostal redifFieldDeprecated " Standard arguments " By default, they contain all the argument until another field is started: " start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 " For arguments that must not span more than one line, use a match: " /\%(^\S\{-}:\)\@!\S.*/ " AND ADD "display" " This is faster. " " Those arguments are not highlighted so far. They are here for future " extensions. " TODO Find more RegEx for these arguments " TODO Fax, Phone " TODO URL, Homepage " TODO Keywords " TODO Classification-JEL " TODO Short-Id, Author-Person, Editor-Person " " Arguments that may span several lines: syntax region redifArgumentAuthorWorkplaceLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorWorkplacePostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplacePostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentFileFunction start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentIssue start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentJournal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentOrderPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrice start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentRequires start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSize start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentVersion start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplaceLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplacePhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplacePostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained " Arguments that may not span several lines: " If you are sure that these arguments cannot span several lines, change " them to a match: " /\%(^\S\{-}:\)\@!\S.*/ " AND ADD "display" after "contained" " You can use this command on each line that you want to change: " :s+\Vregion \(\w\+\) start=/\\%(^\\S\\{-}:\\)\\@!\\S/ end=/^\\S\\{-}:/me=s-1 contained+match \1 /\\%(^\\S\\{-}:\\)\\@!\\S.*/ contained display syntax region redifArgumentAuthorFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorNameFirst start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorNameLast start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorPerson start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorPostal start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorWorkplaceFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorWorkplaceHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorWorkplaceName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorWorkplaceNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentAuthorWorkplacePhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorNameFirst start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorNameLast start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorPerson start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplaceFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplaceHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplaceLocation start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplaceName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplaceNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentEditorWorkplacePhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentFileURL start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentMaintainerFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentMaintainerName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentMaintainerPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNameFirst start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNameFull start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNameLast start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNameMiddle start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNamePrefix start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNameSuffix start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentNumber start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentOrderHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentOrderURL start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentPrimaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentProviderPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentQuaternaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSecondaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentSeries start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentShortId start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentTertiaryPhone start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentURL start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplaceFax start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplaceHomepage start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplaceName start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplaceNameEnglish start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained syntax region redifArgumentWorkplaceOrganization start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contained " Special arguments " Those arguments require special values " TODO Improve some RegEx " TODO Improve Emails " TODO Improve ISBN " TODO Improve ISSN " TODO Improve spell check (add words from economics. " expl=macroeconometrics, Schumpeterian, IS-LM, etc.) " " Template-Type syntax match redifArgumentTemplateType /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectTemplateType contained display syntax match redifCorrectTemplateType /ReDIF-\%(Paper\|Article\|Chapter\|Book\|Software\|Archive\|Series\|Institution\|Person\)/ nextgroup=redifTemplateVersionNumberContainer contained display syntax match redifTemplateVersionNumberContainer /.\+/ contains=redifTemplateVersionNumber contained display syntax match redifTemplateVersionNumber / \d\+\.\d\+/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentTemplateType redifError highlight def link redifCorrectTemplateType Constant highlight def link redifTemplateVersionNumber Number highlight def link redifTemplateVersionNumberContainer redifError " Handles: " " Handles of Works: syntax match redifArgumentHandleOfWork /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentAuthorArticle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentAuthorBook /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentAuthorChapter /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentAuthorPaper /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentAuthorSoftware /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentEditorBook /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentEditorSeries /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentInBook /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentHasChapter /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentArticleHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentBookHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentChapterHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentPaperHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifArgumentSoftwareHandle /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfWork contained display syntax match redifCorrectHandleOfWork /RePEc:\a\a\a:\%(_\@!\w\)\{6}:\S\+/ contains=redifForbiddenCharactersInHandle,redifBestPracticeInHandle nextgroup=redifWrongLineEnding contained display " TODO Are those characters really forbidden??? syntax match redifForbiddenCharactersInHandle /[\/*?"<>|]/ contained display syntax match redifBestPracticeInHandle /\<\%([vi]:[1-9]\d*\|y:[1-9]\d\{3}\|p:[1-9]\d*-[1-9]\d*\|i:\%(jan\|feb\|mar\|apr\|may\|jun\|jul\|aug\|sep\|oct\|nov\|dec\|spr\|sum\|aut\|win\|spe\|Q[1-4]\|\d\d-\d\d\)\|Q:[1-4]\)\>/ contained display highlight def link redifArgumentHandleOfWork redifError highlight def link redifArgumentAuthorArticle redifError highlight def link redifArgumentAuthorBook redifError highlight def link redifArgumentAuthorChapter redifError highlight def link redifArgumentAuthorPaper redifError highlight def link redifArgumentAuthorSoftware redifError highlight def link redifArgumentEditorBook redifError highlight def link redifArgumentEditorSeries redifError highlight def link redifArgumentInBook redifError highlight def link redifArgumentHasChapter redifError highlight def link redifArgumentArticleHandle redifError highlight def link redifArgumentBookHandle redifError highlight def link redifArgumentChapterHandle redifError highlight def link redifArgumentPaperHandle redifError highlight def link redifArgumentSoftwareHandle redifError highlight def link redifForbiddenCharactersInHandle redifError highlight def link redifBestPracticeInHandle redifSpecial " Handles of Series: syntax match redifArgumentHandleOfSeries /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfSeries contained display syntax match redifArgumentFollowup /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfSeries contained display syntax match redifArgumentPredecessor /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfSeries contained display syntax match redifCorrectHandleOfSeries /RePEc:\a\a\a:\%(_\@!\w\)\{6}/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentHandleOfSeries redifError highlight def link redifArgumentFollowup redifError highlight def link redifArgumentPredecessor redifError " Handles of Archives: syntax match redifArgumentHandleOfArchive /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfArchive contained display syntax match redifCorrectHandleOfArchive /RePEc:\a\a\a/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentHandleOfArchive redifError " Handles of Person: syntax match redifArgumentHandleOfPerson /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfPerson contained display syntax match redifCorrectHandleOfPerson /\%(\%(:\@!\S\)\{-}:\)\{2}[1-9]\d\{3}\%(-02\%(-[12]\d\|-0[1-9]\)\|-\%(0[469]\|11\)\%(-30\|-[12]\d\|-0[1-9]\)\|-\%(0[13578]\|1[02]\)\%(-3[01]\|-[12]\d\|-0[1-9]\)\):\S\+/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentHandleOfPerson redifError " Handles of Institution: syntax match redifArgumentAuthorWorkplaceInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentEditorWorkplaceInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentPrimaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentProviderInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentPublisherInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentQuaternaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentSecondaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentTertiaryInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentWorkplaceInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentHandleOfInstitution /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentPrimaryDefunct /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentSecondaryDefunct /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display syntax match redifArgumentTertiaryDefunct /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectHandleOfInstitution contained display " TODO Are digits authorized? Apparently not. " Country codes: " http://www.iso.org/iso/country_codes/iso_3166_code_lists/country_names_and_code_elements.htm syntax match redifCorrectHandleOfInstitution /RePEc:\a\a\a:\a\{5}\(ea\|af\|ax\|al\|dz\|as\|ad\|ao\|ai\|aq\|ag\|ar\|am\|aw\|au\|at\|az\|bs\|bh\|bd\|bb\|by\|be\|bz\|bj\|bm\|bt\|bo\|bq\|ba\|bw\|bv\|br\|io\|bn\|bg\|bf\|bi\|kh\|cm\|ca\|cv\|ky\|cf\|td\|cl\|cn\|cx\|cc\|co\|km\|cg\|cd\|ck\|cr\|ci\|hr\|cu\|cw\|cy\|cz\|dk\|dj\|dm\|do\|ec\|eg\|sv\|gq\|er\|ee\|et\|fk\|fo\|fj\|fi\|fr\|gf\|pf\|tf\|ga\|gm\|ge\|de\|gh\|gi\|gr\|gl\|gd\|gp\|gu\|gt\|gg\|gn\|gw\|gy\|ht\|hm\|va\|hn\|hk\|hu\|is\|in\|id\|ir\|iq\|ie\|im\|il\|it\|jm\|jp\|je\|jo\|kz\|ke\|ki\|kp\|kr\|kw\|kg\|la\|lv\|lb\|ls\|lr\|ly\|li\|lt\|lu\|mo\|mk\|mg\|mw\|my\|mv\|ml\|mt\|mh\|mq\|mr\|mu\|yt\|mx\|fm\|md\|mc\|mn\|me\|ms\|ma\|mz\|mm\|na\|nr\|np\|nl\|nc\|nz\|ni\|ne\|ng\|nu\|nf\|mp\|no\|om\|pk\|pw\|ps\|pa\|pg\|py\|pe\|ph\|pn\|pl\|pt\|pr\|qa\|re\|ro\|ru\|rw\|bl\|sh\|kn\|lc\|mf\|pm\|vc\|ws\|sm\|st\|sa\|sn\|rs\|sc\|sl\|sg\|sx\|sk\|si\|sb\|so\|za\|gs\|ss\|es\|lk\|sd\|sr\|sj\|sz\|se\|ch\|sy\|tw\|tj\|tz\|th\|tl\|tg\|tk\|to\|tt\|tn\|tr\|tm\|tc\|tv\|ug\|ua\|ae\|gb\|us\|um\|uy\|uz\|vu\|ve\|vn\|vg\|vi\|wf\|eh\|ye\|zm\|zw\)/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentHandleOfInstitution redifError highlight def link redifArgumentPrimaryDefunct redifError highlight def link redifArgumentSecondaryDefunct redifError highlight def link redifArgumentTertiaryDefunct redifError " Emails: syntax match redifArgumentAuthorEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentAuthorWorkplaceEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentContactEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentEditorEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentEditorWorkplaceEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentMaintainerEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentOrderEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentPrimaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentProviderEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentPublisherEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentQuaternaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentSecondaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentTertiaryEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifArgumentWorkplaceEmail /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectEmail contained display syntax match redifCorrectEmail /\%(@\@!\S\)\+@\%(@\@!\S\)\+/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentAuthorEmail redifError highlight def link redifArgumentAuthorWorkplaceEmail redifError highlight def link redifArgumentContactEmail redifError highlight def link redifArgumentEditorEmail redifError highlight def link redifArgumentEditorWorkplaceEmail redifError highlight def link redifArgumentEmail redifError highlight def link redifArgumentMaintainerEmail redifError highlight def link redifArgumentOrderEmail redifError highlight def link redifArgumentPrimaryEmail redifError highlight def link redifArgumentProviderEmail redifError highlight def link redifArgumentPublisherEmail redifError highlight def link redifArgumentQuaternaryEmail redifError highlight def link redifArgumentSecondaryEmail redifError highlight def link redifArgumentTertiaryEmail redifError highlight def link redifArgumentWorkplaceEmail redifError " Language " Source: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes syntax match redifArgumentLanguage /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectLanguage contained display syntax match redifCorrectLanguage /\<\(aa\|ab\|af\|ak\|als\|am\|an\|ang\|ar\|arc\|as\|ast\|av\|ay\|az\|ba\|bar\|bat-smg\|bcl\|be\|be-x-old\|bg\|bh\|bi\|bm\|bn\|bo\|bpy\|br\|bs\|bug\|bxr\|ca\|ce\|ceb\|ch\|cho\|chr\|chy\|co\|cr\|cs\|csb\|cu\|cv\|cy\|da\|de\|diq\|dsb\|dv\|dz\|ee\|el\|en\|eo\|es\|et\|eu\|ext\|fa\|ff\|fi\|fiu-vro\|fj\|fo\|fr\|frp\|fur\|fy\|ga\|gd\|gil\|gl\|gn\|got\|gu\|gv\|ha\|haw\|he\|hi\|ho\|hr\|ht\|hu\|hy\|hz\|ia\|id\|ie\|ig\|ii\|ik\|ilo\|io\|is\|it\|iu\|ja\|jbo\|jv\|ka\|kg\|ki\|kj\|kk\|kl\|km\|kn\|khw\|ko\|kr\|ks\|ksh\|ku\|kv\|kw\|ky\|la\|lad\|lan\|lb\|lg\|li\|lij\|lmo\|ln\|lo\|lt\|lv\|map-bms\|mg\|mh\|mi\|mk\|ml\|mn\|mo\|mr\|ms\|mt\|mus\|my\|na\|nah\|nap\|nd\|nds\|nds-nl\|ne\|new\|ng\|nl\|nn\|no\|nr\|nso\|nrm\|nv\|ny\|oc\|oj\|om\|or\|os\|pa\|pag\|pam\|pap\|pdc\|pi\|pih\|pl\|pms\|ps\|pt\|qu\|rm\|rmy\|rn\|ro\|roa-rup\|ru\|rw\|sa\|sc\|scn\|sco\|sd\|se\|sg\|sh\|si\|simple\|sk\|sl\|sm\|sn\|so\|sq\|sr\|ss\|st\|su\|sv\|sw\|ta\|te\|tet\|tg\|th\|ti\|tk\|tl\|tlh\|tn\|to\|tpi\|tr\|ts\|tt\|tum\|tw\|ty\|udm\|ug\|uk\|ur\|uz\|ve\|vi\|vec\|vls\|vo\|wa\|war\|wo\|xal\|xh\|yi\|yo\|za\|zh\|zh-min-nan\|zh-yue\|zu\)\>/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentLanguage redifError highlight def link redifCorrectLanguage redifSpecial " Length " Based on the example in the documentation. But apparently any field is " possible syntax region redifArgumentLength start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=redifGoodLength contained syntax match redifGoodLength /1 page\|[1-9]\d*\%( pages\)\=/ contained display highlight def link redifGoodLength redifSpecial " Publication-Type syntax match redifArgumentPublicationType /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectPublicationType contained display syntax match redifCorrectPublicationType /\<\(journal article\|book\|book chapter\|working paper\|conference paper\|report\|other\)\>/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentPublicationType redifError highlight def link redifCorrectPublicationType redifSpecial " Publication-Status syntax region redifArgumentPublicationStatus start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=redifSpecialPublicationStatus contained syntax match redifSpecialPublicationStatus /published\|forthcoming/ nextgroup=redifCorrectPublicationStatus contained display syntax region redifCorrectPublicationStatus start=/./ end=/^\S\{-}:/me=s-1 contained highlight def link redifArgumentPublicationStatus redifError highlight def link redifSpecialPublicationStatus redifSpecial " Month " TODO Are numbers also allowed? syntax match redifArgumentMonth /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodMonth contained display syntax match redifGoodMonth /\<\(Jan\%(uary\)\=\|Feb\%(ruary\)\=\|Mar\%(ch\)\=\|Apr\%(il\)\=\|May\|June\=\|July\=\|Aug\%(ust\)\=\|Sep\%(tember\)\=\|Oct\%(ober\)\=\|Nov\%(ember\)\=\|Dec\%(ember\)\=\)\>/ contained display highlight def link redifGoodMonth redifSpecial " Integers: Volume, Chapter syntax match redifArgumentVolume /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectInteger contained display syntax match redifArgumentChapter /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectInteger contained display syntax match redifCorrectInteger /[1-9]\d*/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentVolume redifError highlight def link redifArgumentChapter redifError " Year syntax match redifArgumentYear /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectYear contained display syntax match redifCorrectYear /[1-9]\d\{3}/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentYear redifError " Edition " Based on the example in the documentation. syntax match redifArgumentEdition /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodEdition contained display syntax match redifGoodEdition /1st\|2nd\|3rd\|[4-9]th\|[1-9]\d*\%(1st\|2nd\|3rd\|[4-9]th\)\|[1-9]\d*/ contained display highlight def link redifGoodEdition redifSpecial " ISBN syntax match redifArgumentISBN /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodISBN contained display syntax match redifGoodISBN /\d[0-9-]\{8,15}\d/ contained display highlight def link redifGoodISBN redifSpecial " ISSN syntax match redifArgumentISSN /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodISSN contained display syntax match redifGoodISSN /\d\{4}-\d\{3}[0-9X]/ contained display highlight def link redifGoodISSN redifSpecial " File-Size " Based on the example in the documentation. syntax region redifArgumentFileSize start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=redifGoodSize contained syntax match redifGoodSize /kb\|bytes/ contained display highlight def link redifGoodSize redifSpecial " Type syntax match redifArgumentType /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectType contained display syntax match redifCorrectType /ReDIF-Paper\|ReDIF-Software\|ReDIF-Article\|ReDIF-Chapter\|ReDIF-Book/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentType redifError highlight def link redifCorrectType redifSpecial " Dates: Publication-Date, Creation-Date, Revision-Date, " Last-Login-Date, Registration-Date syntax match redifArgumentCreationDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display syntax match redifArgumentLastLoginDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display syntax match redifArgumentPublicationDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display syntax match redifArgumentRegisteredDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display syntax match redifArgumentRevisionDate /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectDate contained display syntax match redifCorrectDate /[1-9]\d\{3}\%(-02\%(-[12]\d\|-0[1-9]\)\=\|-\%(0[469]\|11\)\%(-30\|-[12]\d\|-0[1-9]\)\=\|-\%(0[13578]\|1[02]\)\%(-3[01]\|-[12]\d\|-0[1-9]\)\=\)\=/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentCreationDate redifError highlight def link redifArgumentLastLoginDate redifError highlight def link redifArgumentPublicationDate redifError highlight def link redifArgumentRegisteredDate redifError highlight def link redifArgumentRevisionDate redifError " Classification-JEL syntax match redifArgumentClassificationJEL /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectJEL contained display syntax match redifCorrectJEL /\<\%(\u\d\{,2}[,; \t]\s*\)*\u\d\{,2}/ contains=redifSpecialJEL nextgroup=redifWrongLineEnding contained display syntax match redifSpecialJEL /\<\u\d\{,2}/ contained display highlight def link redifArgumentClassificationJEL redifError highlight def link redifSpecialJEL redifSpecial " Pages syntax match redifArgumentPages /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectPages contained display syntax match redifCorrectPages /[1-9]\d*-[1-9]\d*/ nextgroup=redifWrongLineEnding contained display highlight def link redifArgumentPages redifError " Name-ASCII syntax match redifArgumentNameASCII /\%(^\S\{-}:\)\@!\S.*/ contains=redifCorrectNameASCII contained display syntax match redifCorrectNameASCII /[ -~]/ contained display highlight def link redifArgumentNameASCII redifError " Programming-Language syntax match redifArgumentProgrammingLanguage /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodProgrammingLanguage contained display syntax match redifGoodProgrammingLanguage /\/ nextgroup=redifWrongLineEnding contained display highlight def link redifGoodProgrammingLanguage redifSpecial " File-Format " TODO The link in the documentation that gives the list of possible formats is broken. " ftp://ftp.isi.edu/in-notes/iana/assignments/media-types/media-types " These are based on the examples in the documentation. syntax match redifArgumentFileFormat /\%(^\S\{-}:\)\@!\S.*/ contains=redifGoodFormat contained display syntax match redifGoodFormat "\a\+/[[:alpha:]+-]\+" nextgroup=redifWrongLineEnding contains=redifSpecialFormat contained display syntax match redifSpecialFormat "application/atom+xml\|application/ecmascript\|application/EDI-X12\|application/EDIFACT\|application/json\|application/javascript\|application/octet-stream\|application/ogg\|application/pdf\|application/postscript\|application/rdf+xml\|application/rss+xml\|application/soap+xml\|application/font-woff\|application/xhtml+xml\|application/xml\|application/xml-dtd\|application/xop+xml\|application/zip\|application/gzip\|audio/basic\|audio/L24\|audio/mp4\|audio/mpeg\|audio/ogg\|audio/vorbis\|audio/vnd.rn-realaudio\|audio/vnd.wave\|audio/webm\|image/gif\|image/jpeg\|image/pjpeg\|image/png\|image/svg+xml\|image/tiff\|image/vnd.microsoft.icon\|message/http\|message/imdn+xml\|message/partial\|message/rfc822\|model/example\|model/iges\|model/mesh\|model/vrml\|model/x3d+binary\|model/x3d+vrml\|model/x3d+xml\|multipart/mixed\|multipart/alternative\|multipart/related\|multipart/form-data\|multipart/signed\|multipart/encrypted\|text/cmd\|text/css\|text/csv\|text/html\|text/javascript\|text/plain\|text/vcard\|text/xml\|video/mpeg\|video/mp4\|video/ogg\|video/quicktime\|video/webm\|video/x-matroska\|video/x-ms-wmv\|video/x-flv" contained display highlight def link redifSpecialFormat redifSpecial highlight def link redifArgumentFileFormat redifError " Keywords " Spell checked syntax match redifArgumentKeywords /\%(^\S\{-}:\)\@!\S.*/ contains=@Spell,redifKeywordsSemicolon contained syntax match redifKeywordsSemicolon /;/ contained highlight def link redifKeywordsSemicolon redifSpecial " Other spell-checked arguments " Very useful when copy-pasting abstracts that may contain hyphens or " ligatures. syntax region redifArgumentAbstract start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentAvailability start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentBookTitle start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentDescription start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentFileRestriction start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentNote start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentNotification start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentRestriction start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained syntax region redifArgumentTitle start=/\%(^\S\{-}:\)\@!\S/ end=/^\S\{-}:/me=s-1 contains=@Spell contained " Wrong line ending syntax match redifWrongLineEnding /.\+/ contained display highlight def link redifWrongLineEnding redifError " Final highlight highlight def link redifComment Comment highlight def link redifError Error highlight def link redifField Identifier highlight def link redifFieldDeprecated Identifier highlight def link redifSpecial Special " For deprecated fields: highlight redifFieldDeprecated term=undercurl cterm=undercurl gui=undercurl guisp=DarkGrey " Sync: The template-type (ReDIF-Paper, ReDIF-Archive, etc.) influences which " fields can follow. Thus sync must search backwards for it. " " I would like to simply ask VIM to search backward for the first occurence of " /^Template-Type:/, but it does not seem to be possible, so I have to start " from the beginning of the file... This might slow down a lot for files that " contain a lot of Template-Type statements. syntax sync fromstart " The problem with syntax sync match (tried below), it is that, for example, " it cannot realize when it is inside a Author-Name cluster, which is inside a " Template-Type template... " " TODO Is this linecont pattern really useful? It seems to work anyway... "syntax sync linecont /^\(Template-Type:\)\=\s*$/ " TODO This sync is surprising... It seems to work on several lines even " though I replaced \_s* by \s*, even without the linecont pattern... "syntax sync match redifSyncForTemplatePaper groupthere redifRegionTemplatePaper /^Template-Type:\s*ReDIF-Paper \d\+\.\d\+/ "syntax sync match redifSyncForTemplateArticle groupthere redifRegionTemplateArticle /^Template-Type:\s*ReDIF-Article \d\+\.\d\+/ "syntax sync match redifSyncForTemplateChapter groupthere redifRegionTemplateChapter /^Template-Type:\s*ReDIF-Chapter \d\+\.\d\+/ "syntax sync match redifSyncForTemplateBook groupthere redifRegionTemplateBook /^Template-Type:\s*ReDIF-Book \d\+\.\d\+/ "syntax sync match redifSyncForTemplateSoftware groupthere redifRegionTemplateSoftware /^Template-Type:\s*ReDIF-Software \d\+\.\d\+/ "syntax sync match redifSyncForTemplateArchive groupthere redifRegionTemplateArchive /^Template-Type:\s*ReDIF-Archive \d\+\.\d\+/ "syntax sync match redifSyncForTemplateSeries groupthere redifRegionTemplateSeries /^Template-Type:\s*ReDIF-Series \d\+\.\d\+/ "syntax sync match redifSyncForTemplateInstitution groupthere redifRegionTemplateInstitution /^Template-Type:\s*ReDIF-Institution \d\+\.\d\+/ "syntax sync match redifSyncForTemplatePerson groupthere redifRegionTemplatePerson /^Template-Type:\s*ReDIF-Person \d\+\.\d\+/ " I do not really know how sync linebreaks works, but it helps when making " changes on the argument when this argument is not on the same line than its " field. I just assume that people won't leave more than one line of " whitespace between fields and arguments (which is already very unlikely) " hence the value of 2. syntax sync linebreaks=2 " Since folding is defined by the syntax, set foldmethod to syntax. set foldmethod=syntax " Set "b:current_syntax" to the name of the syntax at the end: let b:current_syntax="redif" PK&]55vim80/syntax/postscr.vimnu[" Vim syntax file " Language: PostScript - all Levels, selectable " Maintainer: Mike Williams " Filenames: *.ps,*.eps " Last Change: 31st October 2007 " URL: http://www.eandem.co.uk/mrw/vim " " Options Flags: " postscr_level - language level to use for highligting (1, 2, or 3) " postscr_display - include display PS operators " postscr_ghostscript - include GS extensions " postscr_fonts - highlight standard font names (a lot for PS 3) " postscr_encodings - highlight encoding names (there are a lot) " postscr_andornot_binary - highlight and, or, and not as binary operators (not logical) " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " PostScript is case sensitive syn case match " Keyword characters - all 7-bit ASCII bar PS delimiters and ws setlocal iskeyword=33-127,^(,^),^<,^>,^[,^],^{,^},^/,^% " Yer trusty old TODO highlghter! syn keyword postscrTodo contained TODO " Comment syn match postscrComment "%.*$" contains=postscrTodo,@Spell " DSC comment start line (NB: defines DSC level, not PS level!) syn match postscrDSCComment "^%!PS-Adobe-\d\+\.\d\+\s*.*$" " DSC comment line (no check on possible comments - another language!) syn match postscrDSCComment "^%%\u\+.*$" contains=@postscrString,@postscrNumber,@Spell " DSC continuation line (no check that previous line is DSC comment) syn match postscrDSCComment "^%%+ *.*$" contains=@postscrString,@postscrNumber,@Spell " Names syn match postscrName "\k\+" " Identifiers syn match postscrIdentifierError "/\{1,2}[[:space:]\[\]{}]"me=e-1 syn match postscrIdentifier "/\{1,2}\k\+" contains=postscrConstant,postscrBoolean,postscrCustConstant " Numbers syn case ignore " In file hex data - usually complete lines syn match postscrHex "^[[:xdigit:]][[:xdigit:][:space:]]*$" "syn match postscrHex "\<\x\{2,}\>" " Integers syn match postscrInteger "\<[+-]\=\d\+\>" " Radix syn match postscrRadix "\d\+#\x\+\>" " Reals - upper and lower case e is allowed syn match postscrFloat "[+-]\=\d\+\.\>" syn match postscrFloat "[+-]\=\d\+\.\d*\(e[+-]\=\d\+\)\=\>" syn match postscrFloat "[+-]\=\.\d\+\(e[+-]\=\d\+\)\=\>" syn match postscrFloat "[+-]\=\d\+e[+-]\=\d\+\>" syn cluster postscrNumber contains=postscrInteger,postscrRadix,postscrFloat syn case match " Escaped characters syn match postscrSpecialChar contained "\\[nrtbf\\()]" syn match postscrSpecialCharError contained "\\[^nrtbf\\()]"he=e-1 " Escaped octal characters syn match postscrSpecialChar contained "\\\o\{1,3}" " Strings " ASCII strings syn region postscrASCIIString start=+(+ end=+)+ skip=+([^)]*)+ contains=postscrSpecialChar,postscrSpecialCharError,@Spell syn match postscrASCIIStringError ")" " Hex strings syn match postscrHexCharError contained "[^<>[:xdigit:][:space:]]" syn region postscrHexString start=+<\($\|[^<]\)+ end=+>+ contains=postscrHexCharError syn match postscrHexString "<>" " ASCII85 strings syn match postscrASCII85CharError contained "[^<>\~!-uz[:space:]]" syn region postscrASCII85String start=+<\~+ end=+\~>+ contains=postscrASCII85CharError syn cluster postscrString contains=postscrASCIIString,postscrHexString,postscrASCII85String " Set default highlighting to level 2 - most common at the moment if !exists("postscr_level") let postscr_level = 2 endif " PS level 1 operators - common to all levels (well ...) " Stack operators syn keyword postscrOperator pop exch dup copy index roll clear count mark cleartomark counttomark " Math operators syn keyword postscrMathOperator add div idiv mod mul sub abs neg ceiling floor round truncate sqrt atan cos syn keyword postscrMathOperator sin exp ln log rand srand rrand " Array operators syn match postscrOperator "[\[\]{}]" syn keyword postscrOperator array length get put getinterval putinterval astore aload copy syn keyword postscrRepeat forall " Dictionary operators syn keyword postscrOperator dict maxlength begin end def load store known where currentdict syn keyword postscrOperator countdictstack dictstack cleardictstack internaldict syn keyword postscrConstant $error systemdict userdict statusdict errordict " String operators syn keyword postscrOperator string anchorsearch search token " Logic operators syn keyword postscrLogicalOperator eq ne ge gt le lt and not or if exists("postscr_andornot_binaryop") syn keyword postscrBinaryOperator and or not else syn keyword postscrLogicalOperator and not or endif syn keyword postscrBinaryOperator xor bitshift syn keyword postscrBoolean true false " PS Type names syn keyword postscrConstant arraytype booleantype conditiontype dicttype filetype fonttype gstatetype syn keyword postscrConstant integertype locktype marktype nametype nulltype operatortype syn keyword postscrConstant packedarraytype realtype savetype stringtype " Control operators syn keyword postscrConditional if ifelse syn keyword postscrRepeat for repeat loop syn keyword postscrOperator exec exit stop stopped countexecstack execstack quit syn keyword postscrProcedure start " Object operators syn keyword postscrOperator type cvlit cvx xcheck executeonly noaccess readonly rcheck wcheck cvi cvn cvr syn keyword postscrOperator cvrs cvs " File operators syn keyword postscrOperator file closefile read write readhexstring writehexstring readstring writestring syn keyword postscrOperator bytesavailable flush flushfile resetfile status run currentfile print syn keyword postscrOperator stack pstack readline deletefile setfileposition fileposition renamefile syn keyword postscrRepeat filenameforall syn keyword postscrProcedure = == " VM operators syn keyword postscrOperator save restore " Misc operators syn keyword postscrOperator bind null usertime executive echo realtime syn keyword postscrConstant product revision serialnumber version syn keyword postscrProcedure prompt " GState operators syn keyword postscrOperator gsave grestore grestoreall initgraphics setlinewidth setlinecap currentgray syn keyword postscrOperator currentlinejoin setmiterlimit currentmiterlimit setdash currentdash setgray syn keyword postscrOperator sethsbcolor currenthsbcolor setrgbcolor currentrgbcolor currentlinewidth syn keyword postscrOperator currentlinecap setlinejoin setcmykcolor currentcmykcolor " Device gstate operators syn keyword postscrOperator setscreen currentscreen settransfer currenttransfer setflat currentflat syn keyword postscrOperator currentblackgeneration setblackgeneration setundercolorremoval syn keyword postscrOperator setcolorscreen currentcolorscreen setcolortransfer currentcolortransfer syn keyword postscrOperator currentundercolorremoval " Matrix operators syn keyword postscrOperator matrix initmatrix identmatrix defaultmatrix currentmatrix setmatrix translate syn keyword postscrOperator concat concatmatrix transform dtransform itransform idtransform invertmatrix syn keyword postscrOperator scale rotate " Path operators syn keyword postscrOperator newpath currentpoint moveto rmoveto lineto rlineto arc arcn arcto curveto syn keyword postscrOperator closepath flattenpath reversepath strokepath charpath clippath pathbbox syn keyword postscrOperator initclip clip eoclip rcurveto syn keyword postscrRepeat pathforall " Painting operators syn keyword postscrOperator erasepage fill eofill stroke image imagemask colorimage " Device operators syn keyword postscrOperator showpage copypage nulldevice " Character operators syn keyword postscrProcedure findfont syn keyword postscrConstant FontDirectory ISOLatin1Encoding StandardEncoding syn keyword postscrOperator definefont scalefont makefont setfont currentfont show ashow syn keyword postscrOperator stringwidth kshow setcachedevice syn keyword postscrOperator setcharwidth widthshow awidthshow findencoding cshow rootfont setcachedevice2 " Interpreter operators syn keyword postscrOperator vmstatus cachestatus setcachelimit " PS constants syn keyword postscrConstant contained Gray Red Green Blue All None DeviceGray DeviceRGB " PS Filters syn keyword postscrConstant contained ASCIIHexDecode ASCIIHexEncode ASCII85Decode ASCII85Encode LZWDecode syn keyword postscrConstant contained RunLengthDecode RunLengthEncode SubFileDecode NullEncode syn keyword postscrConstant contained GIFDecode PNGDecode LZWEncode " PS JPEG filter dictionary entries syn keyword postscrConstant contained DCTEncode DCTDecode Colors HSamples VSamples QuantTables QFactor syn keyword postscrConstant contained HuffTables ColorTransform " PS CCITT filter dictionary entries syn keyword postscrConstant contained CCITTFaxEncode CCITTFaxDecode Uncompressed K EndOfLine syn keyword postscrConstant contained Columns Rows EndOfBlock Blacks1 DamagedRowsBeforeError syn keyword postscrConstant contained EncodedByteAlign " PS Form dictionary entries syn keyword postscrConstant contained FormType XUID BBox Matrix PaintProc Implementation " PS Errors syn keyword postscrProcedure handleerror syn keyword postscrConstant contained configurationerror dictfull dictstackunderflow dictstackoverflow syn keyword postscrConstant contained execstackoverflow interrupt invalidaccess syn keyword postscrConstant contained invalidcontext invalidexit invalidfileaccess invalidfont syn keyword postscrConstant contained invalidid invalidrestore ioerror limitcheck nocurrentpoint syn keyword postscrConstant contained rangecheck stackoverflow stackunderflow syntaxerror timeout syn keyword postscrConstant contained typecheck undefined undefinedfilename undefinedresource syn keyword postscrConstant contained undefinedresult unmatchedmark unregistered VMerror if exists("postscr_fonts") " Font names syn keyword postscrConstant contained Symbol Times-Roman Times-Italic Times-Bold Times-BoldItalic syn keyword postscrConstant contained Helvetica Helvetica-Oblique Helvetica-Bold Helvetica-BoldOblique syn keyword postscrConstant contained Courier Courier-Oblique Courier-Bold Courier-BoldOblique endif if exists("postscr_display") " Display PS only operators syn keyword postscrOperator currentcontext fork join detach lock monitor condition wait notify yield syn keyword postscrOperator viewclip eoviewclip rectviewclip initviewclip viewclippath deviceinfo syn keyword postscrOperator sethalftonephase currenthalftonephase wtranslation defineusername endif " PS Character encoding names if exists("postscr_encodings") " Common encoding names syn keyword postscrConstant contained .notdef " Standard and ISO encoding names syn keyword postscrConstant contained space exclam quotedbl numbersign dollar percent ampersand quoteright syn keyword postscrConstant contained parenleft parenright asterisk plus comma hyphen period slash zero syn keyword postscrConstant contained one two three four five six seven eight nine colon semicolon less syn keyword postscrConstant contained equal greater question at syn keyword postscrConstant contained bracketleft backslash bracketright asciicircum underscore quoteleft syn keyword postscrConstant contained braceleft bar braceright asciitilde syn keyword postscrConstant contained exclamdown cent sterling fraction yen florin section currency syn keyword postscrConstant contained quotesingle quotedblleft guillemotleft guilsinglleft guilsinglright syn keyword postscrConstant contained fi fl endash dagger daggerdbl periodcentered paragraph bullet syn keyword postscrConstant contained quotesinglbase quotedblbase quotedblright guillemotright ellipsis syn keyword postscrConstant contained perthousand questiondown grave acute circumflex tilde macron breve syn keyword postscrConstant contained dotaccent dieresis ring cedilla hungarumlaut ogonek caron emdash syn keyword postscrConstant contained AE ordfeminine Lslash Oslash OE ordmasculine ae dotlessi lslash syn keyword postscrConstant contained oslash oe germandbls " The following are valid names, but are used as short procedure names in generated PS! " a b c d e f g h i j k l m n o p q r s t u v w x y z " A B C D E F G H I J K L M N O P Q R S T U V W X Y Z " Symbol encoding names syn keyword postscrConstant contained universal existential suchthat asteriskmath minus syn keyword postscrConstant contained congruent Alpha Beta Chi Delta Epsilon Phi Gamma Eta Iota theta1 syn keyword postscrConstant contained Kappa Lambda Mu Nu Omicron Pi Theta Rho Sigma Tau Upsilon sigma1 syn keyword postscrConstant contained Omega Xi Psi Zeta therefore perpendicular syn keyword postscrConstant contained radicalex alpha beta chi delta epsilon phi gamma eta iota phi1 syn keyword postscrConstant contained kappa lambda mu nu omicron pi theta rho sigma tau upsilon omega1 syn keyword postscrConstant contained Upsilon1 minute lessequal infinity club diamond heart spade syn keyword postscrConstant contained arrowboth arrowleft arrowup arrowright arrowdown degree plusminus syn keyword postscrConstant contained second greaterequal multiply proportional partialdiff divide syn keyword postscrConstant contained notequal equivalence approxequal arrowvertex arrowhorizex syn keyword postscrConstant contained aleph Ifraktur Rfraktur weierstrass circlemultiply circleplus syn keyword postscrConstant contained emptyset intersection union propersuperset reflexsuperset notsubset syn keyword postscrConstant contained propersubset reflexsubset element notelement angle gradient syn keyword postscrConstant contained registerserif copyrightserif trademarkserif radical dotmath syn keyword postscrConstant contained logicalnot logicaland logicalor arrowdblboth arrowdblleft arrowdblup syn keyword postscrConstant contained arrowdblright arrowdbldown omega xi psi zeta similar carriagereturn syn keyword postscrConstant contained lozenge angleleft registersans copyrightsans trademarksans summation syn keyword postscrConstant contained parenlefttp parenleftex parenleftbt bracketlefttp bracketleftex syn keyword postscrConstant contained bracketleftbt bracelefttp braceleftmid braceleftbt braceex euro syn keyword postscrConstant contained angleright integral integraltp integralex integralbt parenrighttp syn keyword postscrConstant contained parenrightex parenrightbt bracketrighttp bracketrightex syn keyword postscrConstant contained bracketrightbt bracerighttp bracerightmid bracerightbt " ISO Latin1 encoding names syn keyword postscrConstant contained brokenbar copyright registered twosuperior threesuperior syn keyword postscrConstant contained onesuperior onequarter onehalf threequarters syn keyword postscrConstant contained Agrave Aacute Acircumflex Atilde Adieresis Aring Ccedilla Egrave syn keyword postscrConstant contained Eacute Ecircumflex Edieresis Igrave Iacute Icircumflex Idieresis syn keyword postscrConstant contained Eth Ntilde Ograve Oacute Ocircumflex Otilde Odieresis Ugrave Uacute syn keyword postscrConstant contained Ucircumflex Udieresis Yacute Thorn syn keyword postscrConstant contained agrave aacute acircumflex atilde adieresis aring ccedilla egrave syn keyword postscrConstant contained eacute ecircumflex edieresis igrave iacute icircumflex idieresis syn keyword postscrConstant contained eth ntilde ograve oacute ocircumflex otilde odieresis ugrave uacute syn keyword postscrConstant contained ucircumflex udieresis yacute thorn ydieresis syn keyword postscrConstant contained zcaron exclamsmall Hungarumlautsmall dollaroldstyle dollarsuperior syn keyword postscrConstant contained ampersandsmall Acutesmall parenleftsuperior parenrightsuperior syn keyword postscrConstant contained twodotenleader onedotenleader zerooldstyle oneoldstyle twooldstyle syn keyword postscrConstant contained threeoldstyle fouroldstyle fiveoldstyle sixoldstyle sevenoldstyle syn keyword postscrConstant contained eightoldstyle nineoldstyle commasuperior syn keyword postscrConstant contained threequartersemdash periodsuperior questionsmall asuperior bsuperior syn keyword postscrConstant contained centsuperior dsuperior esuperior isuperior lsuperior msuperior syn keyword postscrConstant contained nsuperior osuperior rsuperior ssuperior tsuperior ff ffi ffl syn keyword postscrConstant contained parenleftinferior parenrightinferior Circumflexsmall hyphensuperior syn keyword postscrConstant contained Gravesmall Asmall Bsmall Csmall Dsmall Esmall Fsmall Gsmall Hsmall syn keyword postscrConstant contained Ismall Jsmall Ksmall Lsmall Msmall Nsmall Osmall Psmall Qsmall syn keyword postscrConstant contained Rsmall Ssmall Tsmall Usmall Vsmall Wsmall Xsmall Ysmall Zsmall syn keyword postscrConstant contained colonmonetary onefitted rupiah Tildesmall exclamdownsmall syn keyword postscrConstant contained centoldstyle Lslashsmall Scaronsmall Zcaronsmall Dieresissmall syn keyword postscrConstant contained Brevesmall Caronsmall Dotaccentsmall Macronsmall figuredash syn keyword postscrConstant contained hypheninferior Ogoneksmall Ringsmall Cedillasmall questiondownsmall syn keyword postscrConstant contained oneeighth threeeighths fiveeighths seveneighths onethird twothirds syn keyword postscrConstant contained zerosuperior foursuperior fivesuperior sixsuperior sevensuperior syn keyword postscrConstant contained eightsuperior ninesuperior zeroinferior oneinferior twoinferior syn keyword postscrConstant contained threeinferior fourinferior fiveinferior sixinferior seveninferior syn keyword postscrConstant contained eightinferior nineinferior centinferior dollarinferior periodinferior syn keyword postscrConstant contained commainferior Agravesmall Aacutesmall Acircumflexsmall syn keyword postscrConstant contained Atildesmall Adieresissmall Aringsmall AEsmall Ccedillasmall syn keyword postscrConstant contained Egravesmall Eacutesmall Ecircumflexsmall Edieresissmall Igravesmall syn keyword postscrConstant contained Iacutesmall Icircumflexsmall Idieresissmall Ethsmall Ntildesmall syn keyword postscrConstant contained Ogravesmall Oacutesmall Ocircumflexsmall Otildesmall Odieresissmall syn keyword postscrConstant contained OEsmall Oslashsmall Ugravesmall Uacutesmall Ucircumflexsmall syn keyword postscrConstant contained Udieresissmall Yacutesmall Thornsmall Ydieresissmall Black Bold Book syn keyword postscrConstant contained Light Medium Regular Roman Semibold " Sundry standard and expert encoding names syn keyword postscrConstant contained trademark Scaron Ydieresis Zcaron scaron softhyphen overscore syn keyword postscrConstant contained graybox Sacute Tcaron Zacute sacute tcaron zacute Aogonek Scedilla syn keyword postscrConstant contained Zdotaccent aogonek scedilla Lcaron lcaron zdotaccent Racute Abreve syn keyword postscrConstant contained Lacute Cacute Ccaron Eogonek Ecaron Dcaron Dcroat Nacute Ncaron syn keyword postscrConstant contained Ohungarumlaut Rcaron Uring Uhungarumlaut Tcommaaccent racute abreve syn keyword postscrConstant contained lacute cacute ccaron eogonek ecaron dcaron dcroat nacute ncaron syn keyword postscrConstant contained ohungarumlaut rcaron uring uhungarumlaut tcommaaccent Gbreve syn keyword postscrConstant contained Idotaccent gbreve blank apple endif " By default level 3 includes all level 2 operators if postscr_level == 2 || postscr_level == 3 " Dictionary operators syn match postscrL2Operator "\(<<\|>>\)" syn keyword postscrL2Operator undef syn keyword postscrConstant globaldict shareddict " Device operators syn keyword postscrL2Operator setpagedevice currentpagedevice " Path operators syn keyword postscrL2Operator rectclip setbbox uappend ucache upath ustrokepath arct " Painting operators syn keyword postscrL2Operator rectfill rectstroke ufill ueofill ustroke " Array operators syn keyword postscrL2Operator currentpacking setpacking packedarray " Misc operators syn keyword postscrL2Operator languagelevel " Insideness operators syn keyword postscrL2Operator infill ineofill instroke inufill inueofill inustroke " GState operators syn keyword postscrL2Operator gstate setgstate currentgstate setcolor syn keyword postscrL2Operator setcolorspace currentcolorspace setstrokeadjust currentstrokeadjust syn keyword postscrL2Operator currentcolor " Device gstate operators syn keyword postscrL2Operator sethalftone currenthalftone setoverprint currentoverprint syn keyword postscrL2Operator setcolorrendering currentcolorrendering " Character operators syn keyword postscrL2Constant GlobalFontDirectory SharedFontDirectory syn keyword postscrL2Operator glyphshow selectfont syn keyword postscrL2Operator addglyph undefinefont xshow xyshow yshow " Pattern operators syn keyword postscrL2Operator makepattern setpattern execform " Resource operators syn keyword postscrL2Operator defineresource undefineresource findresource resourcestatus syn keyword postscrL2Repeat resourceforall " File operators syn keyword postscrL2Operator filter printobject writeobject setobjectformat currentobjectformat " VM operators syn keyword postscrL2Operator currentshared setshared defineuserobject execuserobject undefineuserobject syn keyword postscrL2Operator gcheck scheck startjob currentglobal setglobal syn keyword postscrConstant UserObjects " Interpreter operators syn keyword postscrL2Operator setucacheparams setvmthreshold ucachestatus setsystemparams syn keyword postscrL2Operator setuserparams currentuserparams setcacheparams currentcacheparams syn keyword postscrL2Operator currentdevparams setdevparams vmreclaim currentsystemparams " PS2 constants syn keyword postscrConstant contained DeviceCMYK Pattern Indexed Separation Cyan Magenta Yellow Black syn keyword postscrConstant contained CIEBasedA CIEBasedABC CIEBasedDEF CIEBasedDEFG " PS2 $error dictionary entries syn keyword postscrConstant contained newerror errorname command errorinfo ostack estack dstack syn keyword postscrConstant contained recordstacks binary " PS2 Category dictionary syn keyword postscrConstant contained DefineResource UndefineResource FindResource ResourceStatus syn keyword postscrConstant contained ResourceForAll Category InstanceType ResourceFileName " PS2 Category names syn keyword postscrConstant contained Font Encoding Form Pattern ProcSet ColorSpace Halftone syn keyword postscrConstant contained ColorRendering Filter ColorSpaceFamily Emulator IODevice syn keyword postscrConstant contained ColorRenderingType FMapType FontType FormType HalftoneType syn keyword postscrConstant contained ImageType PatternType Category Generic " PS2 pagedevice dictionary entries syn keyword postscrConstant contained PageSize MediaColor MediaWeight MediaType InputAttributes ManualFeed syn keyword postscrConstant contained OutputType OutputAttributes NumCopies Collate Duplex Tumble syn keyword postscrConstant contained Separations HWResolution Margins NegativePrint MirrorPrint syn keyword postscrConstant contained CutMedia AdvanceMedia AdvanceDistance ImagingBBox syn keyword postscrConstant contained Policies Install BeginPage EndPage PolicyNotFound PolicyReport syn keyword postscrConstant contained ManualSize OutputFaceUp Jog syn keyword postscrConstant contained Bind BindDetails Booklet BookletDetails CollateDetails syn keyword postscrConstant contained DeviceRenderingInfo ExitJamRecovery Fold FoldDetails Laminate syn keyword postscrConstant contained ManualFeedTimeout Orientation OutputPage syn keyword postscrConstant contained PostRenderingEnhance PostRenderingEnhanceDetails syn keyword postscrConstant contained PreRenderingEnhance PreRenderingEnhanceDetails syn keyword postscrConstant contained Signature SlipSheet Staple StapleDetails Trim syn keyword postscrConstant contained ProofSet REValue PrintQuality ValuesPerColorComponent AntiAlias " PS2 PDL resource entries syn keyword postscrConstant contained Selector LanguageFamily LanguageVersion " PS2 halftone dictionary entries syn keyword postscrConstant contained HalftoneType HalftoneName syn keyword postscrConstant contained AccurateScreens ActualAngle Xsquare Ysquare AccurateFrequency syn keyword postscrConstant contained Frequency SpotFunction Angle Width Height Thresholds syn keyword postscrConstant contained RedFrequency RedSpotFunction RedAngle RedWidth RedHeight syn keyword postscrConstant contained GreenFrequency GreenSpotFunction GreenAngle GreenWidth GreenHeight syn keyword postscrConstant contained BlueFrequency BlueSpotFunction BlueAngle BlueWidth BlueHeight syn keyword postscrConstant contained GrayFrequency GrayAngle GraySpotFunction GrayWidth GrayHeight syn keyword postscrConstant contained GrayThresholds BlueThresholds GreenThresholds RedThresholds syn keyword postscrConstant contained TransferFunction " PS2 CSR dictionaries syn keyword postscrConstant contained RangeA DecodeA MatrixA RangeABC DecodeABC MatrixABC BlackPoint syn keyword postscrConstant contained RangeLMN DecodeLMN MatrixLMN WhitePoint RangeDEF DecodeDEF RangeHIJ syn keyword postscrConstant contained RangeDEFG DecodeDEFG RangeHIJK Table " PS2 CRD dictionaries syn keyword postscrConstant contained ColorRenderingType EncodeLMB EncodeABC RangePQR MatrixPQR syn keyword postscrConstant contained AbsoluteColorimetric RelativeColorimetric Saturation Perceptual syn keyword postscrConstant contained TransformPQR RenderTable " PS2 Pattern dictionary syn keyword postscrConstant contained PatternType PaintType TilingType XStep YStep " PS2 Image dictionary syn keyword postscrConstant contained ImageType ImageMatrix MultipleDataSources DataSource syn keyword postscrConstant contained BitsPerComponent Decode Interpolate " PS2 Font dictionaries syn keyword postscrConstant contained FontType FontMatrix FontName FontInfo LanguageLevel WMode Encoding syn keyword postscrConstant contained UniqueID StrokeWidth Metrics Metrics2 CDevProc CharStrings Private syn keyword postscrConstant contained FullName Notice version ItalicAngle isFixedPitch UnderlinePosition syn keyword postscrConstant contained FMapType Encoding FDepVector PrefEnc EscChar ShiftOut ShiftIn syn keyword postscrConstant contained WeightVector Blend $Blend CIDFontType sfnts CIDSystemInfo CodeMap syn keyword postscrConstant contained CMap CIDFontName CIDSystemInfo UIDBase CIDDevProc CIDCount syn keyword postscrConstant contained CIDMapOffset FDArray FDBytes GDBytes GlyphData GlyphDictionary syn keyword postscrConstant contained SDBytes SubrMapOffset SubrCount BuildGlyph CIDMap FID MIDVector syn keyword postscrConstant contained Ordering Registry Supplement CMapName CMapVersion UIDOffset syn keyword postscrConstant contained SubsVector UnderlineThickness FamilyName FontBBox CurMID syn keyword postscrConstant contained Weight " PS2 User paramters syn keyword postscrConstant contained MaxFontItem MinFontCompress MaxUPathItem MaxFormItem MaxPatternItem syn keyword postscrConstant contained MaxScreenItem MaxOpStack MaxDictStack MaxExecStack MaxLocalVM syn keyword postscrConstant contained VMReclaim VMThreshold " PS2 System paramters syn keyword postscrConstant contained SystemParamsPassword StartJobPassword BuildTime ByteOrder RealFormat syn keyword postscrConstant contained MaxFontCache CurFontCache MaxOutlineCache CurOutlineCache syn keyword postscrConstant contained MaxUPathCache CurUPathCache MaxFormCache CurFormCache syn keyword postscrConstant contained MaxPatternCache CurPatternCache MaxScreenStorage CurScreenStorage syn keyword postscrConstant contained MaxDisplayList CurDisplayList " PS2 LZW Filters syn keyword postscrConstant contained Predictor " Paper Size operators syn keyword postscrL2Operator letter lettersmall legal ledger 11x17 a4 a3 a4small b5 note " Paper Tray operators syn keyword postscrL2Operator lettertray legaltray ledgertray a3tray a4tray b5tray 11x17tray " SCC compatibility operators syn keyword postscrL2Operator sccbatch sccinteractive setsccbatch setsccinteractive " Page duplexing operators syn keyword postscrL2Operator duplexmode firstside newsheet setduplexmode settumble tumble " Device compatability operators syn keyword postscrL2Operator devdismount devformat devmount devstatus syn keyword postscrL2Repeat devforall " Imagesetter compatability operators syn keyword postscrL2Operator accuratescreens checkscreen pagemargin pageparams setaccuratescreens setpage syn keyword postscrL2Operator setpagemargin setpageparams " Misc compatability operators syn keyword postscrL2Operator appletalktype buildtime byteorder checkpassword defaulttimeouts diskonline syn keyword postscrL2Operator diskstatus manualfeed manualfeedtimeout margins mirrorprint pagecount syn keyword postscrL2Operator pagestackorder printername processcolors sethardwareiomode setjobtimeout syn keyword postscrL2Operator setpagestockorder setprintername setresolution doprinterrors dostartpage syn keyword postscrL2Operator hardwareiomode initializedisk jobname jobtimeout ramsize realformat resolution syn keyword postscrL2Operator setdefaulttimeouts setdoprinterrors setdostartpage setdosysstart syn keyword postscrL2Operator setuserdiskpercent softwareiomode userdiskpercent waittimeout syn keyword postscrL2Operator setsoftwareiomode dosysstart emulate setmargins setmirrorprint endif " PS2 highlighting if postscr_level == 3 " Shading operators syn keyword postscrL3Operator setsmoothness currentsmoothness shfill " Clip operators syn keyword postscrL3Operator clipsave cliprestore " Pagedevive operators syn keyword postscrL3Operator setpage setpageparams " Device gstate operators syn keyword postscrL3Operator findcolorrendering " Font operators syn keyword postscrL3Operator composefont " PS LL3 Output device resource entries syn keyword postscrConstant contained DeviceN TrappingDetailsType " PS LL3 pagdevice dictionary entries syn keyword postscrConstant contained DeferredMediaSelection ImageShift InsertSheet LeadingEdge MaxSeparations syn keyword postscrConstant contained MediaClass MediaPosition OutputDevice PageDeviceName PageOffset ProcessColorModel syn keyword postscrConstant contained RollFedMedia SeparationColorNames SeparationOrder Trapping TrappingDetails syn keyword postscrConstant contained TraySwitch UseCIEColor syn keyword postscrConstant contained ColorantDetails ColorantName ColorantType NeutralDensity TrappingOrder syn keyword postscrConstant contained ColorantSetName " PS LL3 trapping dictionary entries syn keyword postscrConstant contained BlackColorLimit BlackDensityLimit BlackWidth ColorantZoneDetails syn keyword postscrConstant contained SlidingTrapLimit StepLimit TrapColorScaling TrapSetName TrapWidth syn keyword postscrConstant contained ImageResolution ImageToObjectTrapping ImageTrapPlacement syn keyword postscrConstant contained StepLimit TrapColorScaling Enabled ImageInternalTrapping " PS LL3 filters and entries syn keyword postscrConstant contained ReusableStreamDecode CloseSource CloseTarget UnitSize LowBitFirst syn keyword postscrConstant contained FlateEncode FlateDecode DecodeParams Intent AsyncRead " PS LL3 halftone dictionary entries syn keyword postscrConstant contained Height2 Width2 " PS LL3 function dictionary entries syn keyword postscrConstant contained FunctionType Domain Range Order BitsPerSample Encode Size C0 C1 N syn keyword postscrConstant contained Functions Bounds " PS LL3 image dictionary entries syn keyword postscrConstant contained InterleaveType MaskDict DataDict MaskColor " PS LL3 Pattern and shading dictionary entries syn keyword postscrConstant contained Shading ShadingType Background ColorSpace Coords Extend Function syn keyword postscrConstant contained VerticesPerRow BitsPerCoordinate BitsPerFlag " PS LL3 image dictionary entries syn keyword postscrConstant contained XOrigin YOrigin UnpaintedPath PixelCopy " PS LL3 colorrendering procedures syn keyword postscrProcedure GetHalftoneName GetPageDeviceName GetSubstituteCRD " PS LL3 CIDInit procedures syn keyword postscrProcedure beginbfchar beginbfrange begincidchar begincidrange begincmap begincodespacerange syn keyword postscrProcedure beginnotdefchar beginnotdefrange beginrearrangedfont beginusematrix syn keyword postscrProcedure endbfchar endbfrange endcidchar endcidrange endcmap endcodespacerange syn keyword postscrProcedure endnotdefchar endnotdefrange endrearrangedfont endusematrix syn keyword postscrProcedure StartData usefont usecmp " PS LL3 Trapping procedures syn keyword postscrProcedure settrapparams currenttrapparams settrapzone " PS LL3 BitmapFontInit procedures syn keyword postscrProcedure removeall removeglyphs " PS LL3 Font names if exists("postscr_fonts") syn keyword postscrConstant contained AlbertusMT AlbertusMT-Italic AlbertusMT-Light Apple-Chancery Apple-ChanceryCE syn keyword postscrConstant contained AntiqueOlive-Roman AntiqueOlive-Italic AntiqueOlive-Bold AntiqueOlive-Compact syn keyword postscrConstant contained AntiqueOliveCE-Roman AntiqueOliveCE-Italic AntiqueOliveCE-Bold AntiqueOliveCE-Compact syn keyword postscrConstant contained ArialMT Arial-ItalicMT Arial-LightMT Arial-BoldMT Arial-BoldItalicMT syn keyword postscrConstant contained ArialCE ArialCE-Italic ArialCE-Light ArialCE-Bold ArialCE-BoldItalic syn keyword postscrConstant contained AvantGarde-Book AvantGarde-BookOblique AvantGarde-Demi AvantGarde-DemiOblique syn keyword postscrConstant contained AvantGardeCE-Book AvantGardeCE-BookOblique AvantGardeCE-Demi AvantGardeCE-DemiOblique syn keyword postscrConstant contained Bodoni Bodoni-Italic Bodoni-Bold Bodoni-BoldItalic Bodoni-Poster Bodoni-PosterCompressed syn keyword postscrConstant contained BodoniCE BodoniCE-Italic BodoniCE-Bold BodoniCE-BoldItalic BodoniCE-Poster BodoniCE-PosterCompressed syn keyword postscrConstant contained Bookman-Light Bookman-LightItalic Bookman-Demi Bookman-DemiItalic syn keyword postscrConstant contained BookmanCE-Light BookmanCE-LightItalic BookmanCE-Demi BookmanCE-DemiItalic syn keyword postscrConstant contained Carta Chicago ChicagoCE Clarendon Clarendon-Light Clarendon-Bold syn keyword postscrConstant contained ClarendonCE ClarendonCE-Light ClarendonCE-Bold CooperBlack CooperBlack-Italic syn keyword postscrConstant contained Copperplate-ThirtyTwoBC CopperPlate-ThirtyThreeBC Coronet-Regular CoronetCE-Regular syn keyword postscrConstant contained CourierCE CourierCE-Oblique CourierCE-Bold CourierCE-BoldOblique syn keyword postscrConstant contained Eurostile Eurostile-Bold Eurostile-ExtendedTwo Eurostile-BoldExtendedTwo syn keyword postscrConstant contained Eurostile EurostileCE-Bold EurostileCE-ExtendedTwo EurostileCE-BoldExtendedTwo syn keyword postscrConstant contained Geneva GenevaCE GillSans GillSans-Italic GillSans-Bold GillSans-BoldItalic GillSans-BoldCondensed syn keyword postscrConstant contained GillSans-Light GillSans-LightItalic GillSans-ExtraBold syn keyword postscrConstant contained GillSansCE-Roman GillSansCE-Italic GillSansCE-Bold GillSansCE-BoldItalic GillSansCE-BoldCondensed syn keyword postscrConstant contained GillSansCE-Light GillSansCE-LightItalic GillSansCE-ExtraBold syn keyword postscrConstant contained Goudy Goudy-Italic Goudy-Bold Goudy-BoldItalic Goudy-ExtraBould syn keyword postscrConstant contained HelveticaCE HelveticaCE-Oblique HelveticaCE-Bold HelveticaCE-BoldOblique syn keyword postscrConstant contained Helvetica-Condensed Helvetica-Condensed-Oblique Helvetica-Condensed-Bold Helvetica-Condensed-BoldObl syn keyword postscrConstant contained HelveticaCE-Condensed HelveticaCE-Condensed-Oblique HelveticaCE-Condensed-Bold syn keyword postscrConstant contained HelveticaCE-Condensed-BoldObl Helvetica-Narrow Helvetica-Narrow-Oblique Helvetica-Narrow-Bold syn keyword postscrConstant contained Helvetica-Narrow-BoldOblique HelveticaCE-Narrow HelveticaCE-Narrow-Oblique HelveticaCE-Narrow-Bold syn keyword postscrConstant contained HelveticaCE-Narrow-BoldOblique HoeflerText-Regular HoeflerText-Italic HoeflerText-Black syn keyword postscrConstant contained HoeflerText-BlackItalic HoeflerText-Ornaments HoeflerTextCE-Regular HoeflerTextCE-Italic syn keyword postscrConstant contained HoeflerTextCE-Black HoeflerTextCE-BlackItalic syn keyword postscrConstant contained JoannaMT JoannaMT-Italic JoannaMT-Bold JoannaMT-BoldItalic syn keyword postscrConstant contained JoannaMTCE JoannaMTCE-Italic JoannaMTCE-Bold JoannaMTCE-BoldItalic syn keyword postscrConstant contained LetterGothic LetterGothic-Slanted LetterGothic-Bold LetterGothic-BoldSlanted syn keyword postscrConstant contained LetterGothicCE LetterGothicCE-Slanted LetterGothicCE-Bold LetterGothicCE-BoldSlanted syn keyword postscrConstant contained LubalinGraph-Book LubalinGraph-BookOblique LubalinGraph-Demi LubalinGraph-DemiOblique syn keyword postscrConstant contained LubalinGraphCE-Book LubalinGraphCE-BookOblique LubalinGraphCE-Demi LubalinGraphCE-DemiOblique syn keyword postscrConstant contained Marigold Monaco MonacoCE MonaLisa-Recut Oxford Symbol Tekton syn keyword postscrConstant contained NewCennturySchlbk-Roman NewCenturySchlbk-Italic NewCenturySchlbk-Bold NewCenturySchlbk-BoldItalic syn keyword postscrConstant contained NewCenturySchlbkCE-Roman NewCenturySchlbkCE-Italic NewCenturySchlbkCE-Bold syn keyword postscrConstant contained NewCenturySchlbkCE-BoldItalic NewYork NewYorkCE syn keyword postscrConstant contained Optima Optima-Italic Optima-Bold Optima-BoldItalic syn keyword postscrConstant contained OptimaCE OptimaCE-Italic OptimaCE-Bold OptimaCE-BoldItalic syn keyword postscrConstant contained Palatino-Roman Palatino-Italic Palatino-Bold Palatino-BoldItalic syn keyword postscrConstant contained PalatinoCE-Roman PalatinoCE-Italic PalatinoCE-Bold PalatinoCE-BoldItalic syn keyword postscrConstant contained StempelGaramond-Roman StempelGaramond-Italic StempelGaramond-Bold StempelGaramond-BoldItalic syn keyword postscrConstant contained StempelGaramondCE-Roman StempelGaramondCE-Italic StempelGaramondCE-Bold StempelGaramondCE-BoldItalic syn keyword postscrConstant contained TimesCE-Roman TimesCE-Italic TimesCE-Bold TimesCE-BoldItalic syn keyword postscrConstant contained TimesNewRomanPSMT TimesNewRomanPS-ItalicMT TimesNewRomanPS-BoldMT TimesNewRomanPS-BoldItalicMT syn keyword postscrConstant contained TimesNewRomanCE TimesNewRomanCE-Italic TimesNewRomanCE-Bold TimesNewRomanCE-BoldItalic syn keyword postscrConstant contained Univers Univers-Oblique Univers-Bold Univers-BoldOblique syn keyword postscrConstant contained UniversCE-Medium UniversCE-Oblique UniversCE-Bold UniversCE-BoldOblique syn keyword postscrConstant contained Univers-Light Univers-LightOblique UniversCE-Light UniversCE-LightOblique syn keyword postscrConstant contained Univers-Condensed Univers-CondensedOblique Univers-CondensedBold Univers-CondensedBoldOblique syn keyword postscrConstant contained UniversCE-Condensed UniversCE-CondensedOblique UniversCE-CondensedBold UniversCE-CondensedBoldOblique syn keyword postscrConstant contained Univers-Extended Univers-ExtendedObl Univers-BoldExt Univers-BoldExtObl syn keyword postscrConstant contained UniversCE-Extended UniversCE-ExtendedObl UniversCE-BoldExt UniversCE-BoldExtObl syn keyword postscrConstant contained Wingdings-Regular ZapfChancery-MediumItalic ZapfChanceryCE-MediumItalic ZapfDingBats endif " Font names endif " PS LL3 highlighting if exists("postscr_ghostscript") " GS gstate operators syn keyword postscrGSOperator .setaccuratecurves .currentaccuratecurves .setclipoutside syn keyword postscrGSOperator .setdashadapt .currentdashadapt .setdefaultmatrix .setdotlength syn keyword postscrGSOperator .currentdotlength .setfilladjust2 .currentfilladjust2 syn keyword postscrGSOperator .currentclipoutside .setcurvejoin .currentcurvejoin syn keyword postscrGSOperator .setblendmode .currentblendmode .setopacityalpha .currentopacityalpha .setshapealpha .currentshapealpha syn keyword postscrGSOperator .setlimitclamp .currentlimitclamp .setoverprintmode .currentoverprintmode " GS path operators syn keyword postscrGSOperator .dashpath .rectappend " GS painting operators syn keyword postscrGSOperator .setrasterop .currentrasterop .setsourcetransparent syn keyword postscrGSOperator .settexturetransparent .currenttexturetransparent syn keyword postscrGSOperator .currentsourcetransparent " GS character operators syn keyword postscrGSOperator .charboxpath .type1execchar %Type1BuildChar %Type1BuildGlyph " GS mathematical operators syn keyword postscrGSMathOperator arccos arcsin " GS dictionary operators syn keyword postscrGSOperator .dicttomark .forceput .forceundef .knownget .setmaxlength " GS byte and string operators syn keyword postscrGSOperator .type1encrypt .type1decrypt syn keyword postscrGSOperator .bytestring .namestring .stringmatch " GS relational operators (seem like math ones to me!) syn keyword postscrGSMathOperator max min " GS file operators syn keyword postscrGSOperator findlibfile unread writeppmfile syn keyword postscrGSOperator .filename .fileposition .peekstring .unread " GS vm operators syn keyword postscrGSOperator .forgetsave " GS device operators syn keyword postscrGSOperator copydevice .getdevice makeimagedevice makewordimagedevice copyscanlines syn keyword postscrGSOperator setdevice currentdevice getdeviceprops putdeviceprops flushpage syn keyword postscrGSOperator finddevice findprotodevice .getbitsrect " GS misc operators syn keyword postscrGSOperator getenv .makeoperator .setdebug .oserrno .oserror .execn " GS rendering stack operators syn keyword postscrGSOperator .begintransparencygroup .discardtransparencygroup .endtransparencygroup syn keyword postscrGSOperator .begintransparencymask .discardtransparencymask .endtransparencymask .inittransparencymask syn keyword postscrGSOperator .settextknockout .currenttextknockout " GS filters syn keyword postscrConstant contained BCPEncode BCPDecode eexecEncode eexecDecode PCXDecode syn keyword postscrConstant contained PixelDifferenceEncode PixelDifferenceDecode syn keyword postscrConstant contained PNGPredictorDecode TBCPEncode TBCPDecode zlibEncode syn keyword postscrConstant contained zlibDecode PNGPredictorEncode PFBDecode syn keyword postscrConstant contained MD5Encode " GS filter keys syn keyword postscrConstant contained InitialCodeLength FirstBitLowOrder BlockData DecodedByteAlign " GS device parameters syn keyword postscrConstant contained BitsPerPixel .HWMargins HWSize Name GrayValues syn keyword postscrConstant contained ColorValues TextAlphaBits GraphicsAlphaBits BufferSpace syn keyword postscrConstant contained OpenOutputFile PageCount BandHeight BandWidth BandBufferSpace syn keyword postscrConstant contained ViewerPreProcess GreenValues BlueValues OutputFile syn keyword postscrConstant contained MaxBitmap RedValues endif " GhostScript highlighting " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link postscrComment Comment hi def link postscrConstant Constant hi def link postscrString String hi def link postscrASCIIString postscrString hi def link postscrHexString postscrString hi def link postscrASCII85String postscrString hi def link postscrNumber Number hi def link postscrInteger postscrNumber hi def link postscrHex postscrNumber hi def link postscrRadix postscrNumber hi def link postscrFloat Float hi def link postscrBoolean Boolean hi def link postscrIdentifier Identifier hi def link postscrProcedure Function hi def link postscrName Statement hi def link postscrConditional Conditional hi def link postscrRepeat Repeat hi def link postscrL2Repeat postscrRepeat hi def link postscrOperator Operator hi def link postscrL1Operator postscrOperator hi def link postscrL2Operator postscrOperator hi def link postscrL3Operator postscrOperator hi def link postscrMathOperator postscrOperator hi def link postscrLogicalOperator postscrOperator hi def link postscrBinaryOperator postscrOperator hi def link postscrDSCComment SpecialComment hi def link postscrSpecialChar SpecialChar hi def link postscrTodo Todo hi def link postscrError Error hi def link postscrSpecialCharError postscrError hi def link postscrASCII85CharError postscrError hi def link postscrHexCharError postscrError hi def link postscrASCIIStringError postscrError hi def link postscrIdentifierError postscrError if exists("postscr_ghostscript") hi def link postscrGSOperator postscrOperator hi def link postscrGSMathOperator postscrMathOperator else hi def link postscrGSOperator postscrError hi def link postscrGSMathOperator postscrError endif let b:current_syntax = "postscr" " vim: ts=8 PK&]Л6ЍЍvim80/syntax/kconfig.vimnu[" Vim syntax file " Maintainer: Christian Brabandt " Previous Maintainer: Nikolai Weibull " Latest Revision: 2015-05-29 " License: Vim (see :h license) " Repository: https://github.com/chrisbra/vim-kconfig if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim if exists("g:kconfig_syntax_heavy") syn match kconfigBegin '^' nextgroup=kconfigKeyword \ skipwhite syn keyword kconfigTodo contained TODO FIXME XXX NOTE syn match kconfigComment display '#.*$' contains=kconfigTodo syn keyword kconfigKeyword config nextgroup=kconfigSymbol \ skipwhite syn keyword kconfigKeyword menuconfig nextgroup=kconfigSymbol \ skipwhite syn keyword kconfigKeyword comment menu mainmenu \ nextgroup=kconfigKeywordPrompt \ skipwhite syn keyword kconfigKeyword choice \ nextgroup=@kconfigConfigOptions \ skipwhite skipnl syn keyword kconfigKeyword endmenu endchoice syn keyword kconfigPreProc source \ nextgroup=kconfigPath \ skipwhite " TODO: This is a hack. The who .*Expr stuff should really be generated so " that we can reuse it for various nextgroups. syn keyword kconfigConditional if endif \ nextgroup=@kconfigConfigOptionIfExpr \ skipwhite syn match kconfigKeywordPrompt '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=@kconfigConfigOptions \ skipwhite skipnl syn match kconfigPath '"[^"\\]*\%(\\.[^"\\]*\)*"\|\S\+' \ contained syn match kconfigSymbol '\<\k\+\>' \ contained \ nextgroup=@kconfigConfigOptions \ skipwhite skipnl " FIXME: There is – probably – no reason to cluster these instead of just " defining them in the same group. syn cluster kconfigConfigOptions contains=kconfigTypeDefinition, \ kconfigInputPrompt, \ kconfigDefaultValue, \ kconfigDependencies, \ kconfigReverseDependencies, \ kconfigNumericalRanges, \ kconfigHelpText, \ kconfigDefBool, \ kconfigOptional syn keyword kconfigTypeDefinition bool boolean tristate string hex int \ contained \ nextgroup=kconfigTypeDefPrompt, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigTypeDefPrompt '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigTypeDefPrompt "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn keyword kconfigInputPrompt prompt \ contained \ nextgroup=kconfigPromptPrompt \ skipwhite syn match kconfigPromptPrompt '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigPromptPrompt "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn keyword kconfigDefaultValue default \ contained \ nextgroup=@kconfigConfigOptionExpr \ skipwhite syn match kconfigDependencies 'depends on\|requires' \ contained \ nextgroup=@kconfigConfigOptionIfExpr \ skipwhite syn keyword kconfigReverseDependencies select \ contained \ nextgroup=@kconfigRevDepSymbol \ skipwhite syn cluster kconfigRevDepSymbol contains=kconfigRevDepCSymbol, \ kconfigRevDepNCSymbol syn match kconfigRevDepCSymbol '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigRevDepCSymbol "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigRevDepNCSymbol '\<\k\+\>' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn keyword kconfigNumericalRanges range \ contained \ nextgroup=@kconfigRangeSymbol \ skipwhite syn cluster kconfigRangeSymbol contains=kconfigRangeCSymbol, \ kconfigRangeNCSymbol syn match kconfigRangeCSymbol '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=@kconfigRangeSymbol2 \ skipwhite skipnl syn match kconfigRangeCSymbol "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=@kconfigRangeSymbol2 \ skipwhite skipnl syn match kconfigRangeNCSymbol '\<\k\+\>' \ contained \ nextgroup=@kconfigRangeSymbol2 \ skipwhite skipnl syn cluster kconfigRangeSymbol2 contains=kconfigRangeCSymbol2, \ kconfigRangeNCSymbol2 syn match kconfigRangeCSymbol2 "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigRangeNCSymbol2 '\<\k\+\>' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn region kconfigHelpText contained \ matchgroup=kconfigConfigOption \ start='\%(help\|---help---\)\ze\s*\n\z(\s\+\)' \ skip='^$' \ end='^\z1\@!' \ nextgroup=@kconfigConfigOptions \ skipwhite skipnl " XXX: Undocumented syn keyword kconfigDefBool def_bool \ contained \ nextgroup=@kconfigDefBoolSymbol \ skipwhite syn cluster kconfigDefBoolSymbol contains=kconfigDefBoolCSymbol, \ kconfigDefBoolNCSymbol syn match kconfigDefBoolCSymbol '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigDefBoolCSymbol "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigDefBoolNCSymbol '\<\k\+\>' \ contained \ nextgroup=kconfigConfigOptionIf, \ @kconfigConfigOptions \ skipwhite skipnl " XXX: This is actually only a valid option for “choice”, but treating it " specially would require a lot of extra groups. syn keyword kconfigOptional optional \ contained \ nextgroup=@kconfigConfigOptions \ skipwhite skipnl syn keyword kconfigConfigOptionIf if \ contained \ nextgroup=@kconfigConfigOptionIfExpr \ skipwhite syn cluster kconfigConfigOptionIfExpr contains=@kconfigConfOptIfExprSym, \ kconfigConfOptIfExprNeg, \ kconfigConfOptIfExprGroup syn cluster kconfigConfOptIfExprSym contains=kconfigConfOptIfExprCSym, \ kconfigConfOptIfExprNCSym syn match kconfigConfOptIfExprCSym '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=@kconfigConfigOptions, \ kconfigConfOptIfExprAnd, \ kconfigConfOptIfExprOr, \ kconfigConfOptIfExprEq, \ kconfigConfOptIfExprNEq \ skipwhite skipnl syn match kconfigConfOptIfExprCSym "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=@kconfigConfigOptions, \ kconfigConfOptIfExprAnd, \ kconfigConfOptIfExprOr, \ kconfigConfOptIfExprEq, \ kconfigConfOptIfExprNEq \ skipwhite skipnl syn match kconfigConfOptIfExprNCSym '\<\k\+\>' \ contained \ nextgroup=@kconfigConfigOptions, \ kconfigConfOptIfExprAnd, \ kconfigConfOptIfExprOr, \ kconfigConfOptIfExprEq, \ kconfigConfOptIfExprNEq \ skipwhite skipnl syn cluster kconfigConfOptIfExprSym2 contains=kconfigConfOptIfExprCSym2, \ kconfigConfOptIfExprNCSym2 syn match kconfigConfOptIfExprEq '=' \ contained \ nextgroup=@kconfigConfOptIfExprSym2 \ skipwhite syn match kconfigConfOptIfExprNEq '!=' \ contained \ nextgroup=@kconfigConfOptIfExprSym2 \ skipwhite syn match kconfigConfOptIfExprCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=@kconfigConfigOptions, \ kconfigConfOptIfExprAnd, \ kconfigConfOptIfExprOr \ skipwhite skipnl syn match kconfigConfOptIfExprNCSym2 '\<\k\+\>' \ contained \ nextgroup=@kconfigConfigOptions, \ kconfigConfOptIfExprAnd, \ kconfigConfOptIfExprOr \ skipwhite skipnl syn match kconfigConfOptIfExprNeg '!' \ contained \ nextgroup=@kconfigConfigOptionIfExpr \ skipwhite syn match kconfigConfOptIfExprAnd '&&' \ contained \ nextgroup=@kconfigConfigOptionIfExpr \ skipwhite syn match kconfigConfOptIfExprOr '||' \ contained \ nextgroup=@kconfigConfigOptionIfExpr \ skipwhite syn match kconfigConfOptIfExprGroup '(' \ contained \ nextgroup=@kconfigConfigOptionIfGExp \ skipwhite " TODO: hm, this kind of recursion doesn't work right. We need another set of " expressions that have kconfigConfigOPtionIfGExp as nextgroup and a matcher " for '(' that sets it all off. syn cluster kconfigConfigOptionIfGExp contains=@kconfigConfOptIfGExpSym, \ kconfigConfOptIfGExpNeg, \ kconfigConfOptIfExprGroup syn cluster kconfigConfOptIfGExpSym contains=kconfigConfOptIfGExpCSym, \ kconfigConfOptIfGExpNCSym syn match kconfigConfOptIfGExpCSym '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=@kconfigConfigIf, \ kconfigConfOptIfGExpAnd, \ kconfigConfOptIfGExpOr, \ kconfigConfOptIfGExpEq, \ kconfigConfOptIfGExpNEq \ skipwhite skipnl syn match kconfigConfOptIfGExpCSym "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=@kconfigConfigIf, \ kconfigConfOptIfGExpAnd, \ kconfigConfOptIfGExpOr, \ kconfigConfOptIfGExpEq, \ kconfigConfOptIfGExpNEq \ skipwhite skipnl syn match kconfigConfOptIfGExpNCSym '\<\k\+\>' \ contained \ nextgroup=kconfigConfOptIfExprGrpE, \ kconfigConfOptIfGExpAnd, \ kconfigConfOptIfGExpOr, \ kconfigConfOptIfGExpEq, \ kconfigConfOptIfGExpNEq \ skipwhite skipnl syn cluster kconfigConfOptIfGExpSym2 contains=kconfigConfOptIfGExpCSym2, \ kconfigConfOptIfGExpNCSym2 syn match kconfigConfOptIfGExpEq '=' \ contained \ nextgroup=@kconfigConfOptIfGExpSym2 \ skipwhite syn match kconfigConfOptIfGExpNEq '!=' \ contained \ nextgroup=@kconfigConfOptIfGExpSym2 \ skipwhite syn match kconfigConfOptIfGExpCSym2 '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfOptIfExprGrpE, \ kconfigConfOptIfGExpAnd, \ kconfigConfOptIfGExpOr \ skipwhite skipnl syn match kconfigConfOptIfGExpCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfOptIfExprGrpE, \ kconfigConfOptIfGExpAnd, \ kconfigConfOptIfGExpOr \ skipwhite skipnl syn match kconfigConfOptIfGExpNCSym2 '\<\k\+\>' \ contained \ nextgroup=kconfigConfOptIfExprGrpE, \ kconfigConfOptIfGExpAnd, \ kconfigConfOptIfGExpOr \ skipwhite skipnl syn match kconfigConfOptIfGExpNeg '!' \ contained \ nextgroup=@kconfigConfigOptionIfGExp \ skipwhite syn match kconfigConfOptIfGExpAnd '&&' \ contained \ nextgroup=@kconfigConfigOptionIfGExp \ skipwhite syn match kconfigConfOptIfGExpOr '||' \ contained \ nextgroup=@kconfigConfigOptionIfGExp \ skipwhite syn match kconfigConfOptIfExprGrpE ')' \ contained \ nextgroup=@kconfigConfigOptions, \ kconfigConfOptIfExprAnd, \ kconfigConfOptIfExprOr \ skipwhite skipnl syn cluster kconfigConfigOptionExpr contains=@kconfigConfOptExprSym, \ kconfigConfOptExprNeg, \ kconfigConfOptExprGroup syn cluster kconfigConfOptExprSym contains=kconfigConfOptExprCSym, \ kconfigConfOptExprNCSym syn match kconfigConfOptExprCSym '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr, \ kconfigConfOptExprEq, \ kconfigConfOptExprNEq, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigConfOptExprCSym "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr, \ kconfigConfOptExprEq, \ kconfigConfOptExprNEq, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigConfOptExprNCSym '\<\k\+\>' \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr, \ kconfigConfOptExprEq, \ kconfigConfOptExprNEq, \ @kconfigConfigOptions \ skipwhite skipnl syn cluster kconfigConfOptExprSym2 contains=kconfigConfOptExprCSym2, \ kconfigConfOptExprNCSym2 syn match kconfigConfOptExprEq '=' \ contained \ nextgroup=@kconfigConfOptExprSym2 \ skipwhite syn match kconfigConfOptExprNEq '!=' \ contained \ nextgroup=@kconfigConfOptExprSym2 \ skipwhite syn match kconfigConfOptExprCSym2 '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigConfOptExprCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigConfOptExprNCSym2 '\<\k\+\>' \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr, \ @kconfigConfigOptions \ skipwhite skipnl syn match kconfigConfOptExprNeg '!' \ contained \ nextgroup=@kconfigConfigOptionExpr \ skipwhite syn match kconfigConfOptExprAnd '&&' \ contained \ nextgroup=@kconfigConfigOptionExpr \ skipwhite syn match kconfigConfOptExprOr '||' \ contained \ nextgroup=@kconfigConfigOptionExpr \ skipwhite syn match kconfigConfOptExprGroup '(' \ contained \ nextgroup=@kconfigConfigOptionGExp \ skipwhite syn cluster kconfigConfigOptionGExp contains=@kconfigConfOptGExpSym, \ kconfigConfOptGExpNeg, \ kconfigConfOptGExpGroup syn cluster kconfigConfOptGExpSym contains=kconfigConfOptGExpCSym, \ kconfigConfOptGExpNCSym syn match kconfigConfOptGExpCSym '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfOptExprGrpE, \ kconfigConfOptGExpAnd, \ kconfigConfOptGExpOr, \ kconfigConfOptGExpEq, \ kconfigConfOptGExpNEq \ skipwhite skipnl syn match kconfigConfOptGExpCSym "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfOptExprGrpE, \ kconfigConfOptGExpAnd, \ kconfigConfOptGExpOr, \ kconfigConfOptGExpEq, \ kconfigConfOptGExpNEq \ skipwhite skipnl syn match kconfigConfOptGExpNCSym '\<\k\+\>' \ contained \ nextgroup=kconfigConfOptExprGrpE, \ kconfigConfOptGExpAnd, \ kconfigConfOptGExpOr, \ kconfigConfOptGExpEq, \ kconfigConfOptGExpNEq \ skipwhite skipnl syn cluster kconfigConfOptGExpSym2 contains=kconfigConfOptGExpCSym2, \ kconfigConfOptGExpNCSym2 syn match kconfigConfOptGExpEq '=' \ contained \ nextgroup=@kconfigConfOptGExpSym2 \ skipwhite syn match kconfigConfOptGExpNEq '!=' \ contained \ nextgroup=@kconfigConfOptGExpSym2 \ skipwhite syn match kconfigConfOptGExpCSym2 '"[^"\\]*\%(\\.[^"\\]*\)*"' \ contained \ nextgroup=kconfigConfOptExprGrpE, \ kconfigConfOptGExpAnd, \ kconfigConfOptGExpOr \ skipwhite skipnl syn match kconfigConfOptGExpCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'" \ contained \ nextgroup=kconfigConfOptExprGrpE, \ kconfigConfOptGExpAnd, \ kconfigConfOptGExpOr \ skipwhite skipnl syn match kconfigConfOptGExpNCSym2 '\<\k\+\>' \ contained \ nextgroup=kconfigConfOptExprGrpE, \ kconfigConfOptGExpAnd, \ kconfigConfOptGExpOr \ skipwhite skipnl syn match kconfigConfOptGExpNeg '!' \ contained \ nextgroup=@kconfigConfigOptionGExp \ skipwhite syn match kconfigConfOptGExpAnd '&&' \ contained \ nextgroup=@kconfigConfigOptionGExp \ skipwhite syn match kconfigConfOptGExpOr '||' \ contained \ nextgroup=@kconfigConfigOptionGExp \ skipwhite syn match kconfigConfOptExprGrpE ')' \ contained \ nextgroup=kconfigConfigOptionIf, \ kconfigConfOptExprAnd, \ kconfigConfOptExprOr \ skipwhite skipnl syn sync minlines=50 hi def link kconfigTodo Todo hi def link kconfigComment Comment hi def link kconfigKeyword Keyword hi def link kconfigPreProc PreProc hi def link kconfigConditional Conditional hi def link kconfigPrompt String hi def link kconfigKeywordPrompt kconfigPrompt hi def link kconfigPath String hi def link kconfigSymbol String hi def link kconfigConstantSymbol Constant hi def link kconfigConfigOption Type hi def link kconfigTypeDefinition kconfigConfigOption hi def link kconfigTypeDefPrompt kconfigPrompt hi def link kconfigInputPrompt kconfigConfigOption hi def link kconfigPromptPrompt kconfigPrompt hi def link kconfigDefaultValue kconfigConfigOption hi def link kconfigDependencies kconfigConfigOption hi def link kconfigReverseDependencies kconfigConfigOption hi def link kconfigRevDepCSymbol kconfigConstantSymbol hi def link kconfigRevDepNCSymbol kconfigSymbol hi def link kconfigNumericalRanges kconfigConfigOption hi def link kconfigRangeCSymbol kconfigConstantSymbol hi def link kconfigRangeNCSymbol kconfigSymbol hi def link kconfigRangeCSymbol2 kconfigConstantSymbol hi def link kconfigRangeNCSymbol2 kconfigSymbol hi def link kconfigHelpText Normal hi def link kconfigDefBool kconfigConfigOption hi def link kconfigDefBoolCSymbol kconfigConstantSymbol hi def link kconfigDefBoolNCSymbol kconfigSymbol hi def link kconfigOptional kconfigConfigOption hi def link kconfigConfigOptionIf Conditional hi def link kconfigConfOptIfExprCSym kconfigConstantSymbol hi def link kconfigConfOptIfExprNCSym kconfigSymbol hi def link kconfigOperator Operator hi def link kconfigConfOptIfExprEq kconfigOperator hi def link kconfigConfOptIfExprNEq kconfigOperator hi def link kconfigConfOptIfExprCSym2 kconfigConstantSymbol hi def link kconfigConfOptIfExprNCSym2 kconfigSymbol hi def link kconfigConfOptIfExprNeg kconfigOperator hi def link kconfigConfOptIfExprAnd kconfigOperator hi def link kconfigConfOptIfExprOr kconfigOperator hi def link kconfigDelimiter Delimiter hi def link kconfigConfOptIfExprGroup kconfigDelimiter hi def link kconfigConfOptIfGExpCSym kconfigConstantSymbol hi def link kconfigConfOptIfGExpNCSym kconfigSymbol hi def link kconfigConfOptIfGExpEq kconfigOperator hi def link kconfigConfOptIfGExpNEq kconfigOperator hi def link kconfigConfOptIfGExpCSym2 kconfigConstantSymbol hi def link kconfigConfOptIfGExpNCSym2 kconfigSymbol hi def link kconfigConfOptIfGExpNeg kconfigOperator hi def link kconfigConfOptIfGExpAnd kconfigOperator hi def link kconfigConfOptIfGExpOr kconfigOperator hi def link kconfigConfOptIfExprGrpE kconfigDelimiter hi def link kconfigConfOptExprCSym kconfigConstantSymbol hi def link kconfigConfOptExprNCSym kconfigSymbol hi def link kconfigConfOptExprEq kconfigOperator hi def link kconfigConfOptExprNEq kconfigOperator hi def link kconfigConfOptExprCSym2 kconfigConstantSymbol hi def link kconfigConfOptExprNCSym2 kconfigSymbol hi def link kconfigConfOptExprNeg kconfigOperator hi def link kconfigConfOptExprAnd kconfigOperator hi def link kconfigConfOptExprOr kconfigOperator hi def link kconfigConfOptExprGroup kconfigDelimiter hi def link kconfigConfOptGExpCSym kconfigConstantSymbol hi def link kconfigConfOptGExpNCSym kconfigSymbol hi def link kconfigConfOptGExpEq kconfigOperator hi def link kconfigConfOptGExpNEq kconfigOperator hi def link kconfigConfOptGExpCSym2 kconfigConstantSymbol hi def link kconfigConfOptGExpNCSym2 kconfigSymbol hi def link kconfigConfOptGExpNeg kconfigOperator hi def link kconfigConfOptGExpAnd kconfigOperator hi def link kconfigConfOptGExpOr kconfigOperator hi def link kconfigConfOptExprGrpE kconfigConfOptIfExprGroup else syn keyword kconfigTodo contained TODO FIXME XXX NOTE syn match kconfigComment display '#.*$' contains=kconfigTodo syn keyword kconfigKeyword config menuconfig comment mainmenu syn keyword kconfigConditional menu endmenu choice endchoice if endif syn keyword kconfigPreProc source \ nextgroup=kconfigPath \ skipwhite syn keyword kconfigTriState y m n syn match kconfigSpecialChar contained '\\.' syn match kconfigSpecialChar '\\$' syn region kconfigPath matchgroup=kconfigPath \ start=+"+ skip=+\\\\\|\\\"+ end=+"+ \ contains=kconfigSpecialChar syn region kconfigPath matchgroup=kconfigPath \ start=+'+ skip=+\\\\\|\\\'+ end=+'+ \ contains=kconfigSpecialChar syn match kconfigPath '\S\+' \ contained syn region kconfigString matchgroup=kconfigString \ start=+"+ skip=+\\\\\|\\\"+ end=+"+ \ contains=kconfigSpecialChar syn region kconfigString matchgroup=kconfigString \ start=+'+ skip=+\\\\\|\\\'+ end=+'+ \ contains=kconfigSpecialChar syn keyword kconfigType bool boolean tristate string hex int syn keyword kconfigOption prompt default requires select range \ optional syn match kconfigOption 'depends\%( on\)\=' syn keyword kconfigMacro def_bool def_tristate syn region kconfigHelpText \ matchgroup=kconfigOption \ start='\%(help\|---help---\)\ze\s*\n\z(\s\+\)' \ skip='^$' \ end='^\z1\@!' syn sync match kconfigSyncHelp grouphere kconfigHelpText 'help\|---help---' hi def link kconfigTodo Todo hi def link kconfigComment Comment hi def link kconfigKeyword Keyword hi def link kconfigConditional Conditional hi def link kconfigPreProc PreProc hi def link kconfigTriState Boolean hi def link kconfigSpecialChar SpecialChar hi def link kconfigPath String hi def link kconfigString String hi def link kconfigType Type hi def link kconfigOption Identifier hi def link kconfigHelpText Normal hi def link kconfigmacro Macro endif let b:current_syntax = "kconfig" let &cpo = s:cpo_save unlet s:cpo_save PK&]Y ??vim80/syntax/voscm.vimnu[" Vim syntax file " Language: VOS CM macro " Maintainer: Andrew McGill andrewm at lunch.za.net " Last Change: Apr 06, 2007 " Version: 1 " URL: http://lunch.za.net/ " " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case match " set iskeyword=48-57,_,a-z,A-Z syn match voscmStatement "^!" syn match voscmStatement "&\(label\|begin_parameters\|end_parameters\|goto\|attach_input\|break\|continue\|control\|detach_input\|display_line\|display_line_partial\|echo\|eof\|eval\|if\|mode\|return\|while\|set\|set_string\|then\|else\|do\|done\|end\)\>" syn match voscmJump "\(&label\|&goto\) *" nextgroup=voscmLabelId syn match voscmLabelId contained "\<[A-Za-z][A-Z_a-z0-9]* *$" syn match voscmSetvar "\(&set_string\|&set\) *" nextgroup=voscmVariable syn match voscmError "\(&set_string\|&set\) *&" syn match voscmVariable contained "\<[A-Za-z][A-Z_a-z0-9]\+\>" syn keyword voscmParamKeyword contained number req string switch allow byte disable_input hidden length longword max min no_abbrev output_path req required req_for_form word syn region voscmParamList matchgroup=voscmParam start="&begin_parameters" end="&end_parameters" contains=voscmParamKeyword,voscmString,voscmParamName,voscmParamId syn match voscmParamName contained "\(^\s*[A-Za-z_0-9]\+\s\+\)\@<=\k\+" syn match voscmParamId contained "\(^\s*\)\@<=\k\+" syn region par1 matchgroup=par1 start=/(/ end=/)/ contains=voscmFunction,voscmIdentifier,voscmString transparent " FIXME: functions should only be allowed after a bracket ... ie (ask ...): syn keyword voscmFunction contained abs access after ask before break byte calc ceil command_status concat syn keyword voscmFunction contained contents path_name copy count current_dir current_module date date_time syn keyword voscmFunction contained decimal directory_name end_of_file exists file_info floor given group_name syn keyword voscmFunction contained has_access hexadecimal home_dir index iso_date iso_date_time language_name syn keyword voscmFunction contained length lock_type locked ltrim master_disk max message min mod module_info syn keyword voscmFunction contained module_name object_name online path_name person_name process_dir process_info syn keyword voscmFunction contained process_type quote rank referencing_dir reverse rtrim search syn keyword voscmFunction contained software_purchased string substitute substr system_name terminal_info syn keyword voscmFunction contained terminal_name time translate trunc unique_string unquote user_name verify syn keyword voscmFunction contained where_path syn keyword voscmTodo contained TODO FIXME XXX DEBUG NOTE syn match voscmTab "\t\+" syn keyword voscmCommand add_entry_names add_library_path add_profile analyze_pc_samples attach_default_output attach_port batch bind break_process c c_preprocess call_thru cancel_batch_requests cancel_device_reservation cancel_print_requests cc change_current_dir check_posix cobol comment_on_manual compare_dirs compare_files convert_text_file copy_dir copy_file copy_tape cpp create_data_object create_deleted_record_index create_dir create_file create_index create_record_index create_tape_volumes cvt_fixed_to_stream cvt_stream_to_fixed debug delete_dir delete_file delete_index delete_library_path detach_default_output detach_port dismount_tape display display_access display_access_list display_batch_status display_current_dir display_current_module display_date_time display_default_access_list display_device_info display_dir_status display_disk_info display_disk_usage display_error display_file display_file_status display_line display_notices display_object_module_info display_print_defaults display_print_status display_program_module display_system_usage display_tape_params display_terminal_parameters dump_file dump_record dump_tape edit edit_form emacs enforce_region_locks fortran get_external_variable give_access give_default_access handle_sig_dfl harvest_pc_samples help kill line_edit link link_dirs list list_batch_requests list_devices list_gateways list_library_paths list_modules list_port_attachments list_print_requests list_process_cmd_limits list_save_tape list_systems list_tape list_terminal_types list_users locate_files locate_large_files login logout mount_tape move_device_reservation move_dir move_file mp_debug nls_edit_form pascal pl1 position_tape preprocess_file print profile propagate_access read_tape ready remove_access remove_default_access rename reserve_device restore_object save_object send_message set set_cpu_time_limit set_expiration_date set_external_variable set_file_allocation set_implicit_locking set_index_flags set_language set_library_paths set_line_wrap_width set_log_protected_file set_owner_access set_pipe_file set_priority set_ready set_safety_switch set_second_tape set_tape_drive_params set_tape_file_params set_tape_mount_params set_terminal_parameters set_text_file set_time_zone sleep sort start_logging start_process stop_logging stop_process tail_file text_data_merge translate_links truncate_file unlink update_batch_requests update_print_requests update_process_cmd_limits use_abbreviations use_message_file vcc verify_posix_access verify_save verify_system_access walk_dir where_command where_path who_locked write_tape syn match voscmIdentifier "&[A-Za-z][a-z0-9_A-Z]*&" syn match voscmString "'[^']*'" " Number formats syn match voscmNumber "\<\d\+\>" "Floating point number part only syn match voscmDecimalNumber "\.\d\+\([eE][-+]\=\d\)\=\>" "syn region voscmComment start="^[ ]*&[ ]+" end="$" "syn match voscmComment "^[ ]*&[ ].*$" "syn match voscmComment "^&$" syn region voscmComment start="^[ ]*&[ ]" end="$" contains=voscmTodo syn match voscmComment "^&$" syn match voscmContinuation "&+$" "syn match voscmIdentifier "[A-Za-z0-9&._-]\+" "Synchronization with Statement terminator $ " syn sync maxlines=100 hi def link voscmConditional Conditional hi def link voscmStatement Statement hi def link voscmSetvar Statement hi def link voscmNumber Number hi def link voscmDecimalNumber Float hi def link voscmString String hi def link voscmIdentifier Identifier hi def link voscmVariable Identifier hi def link voscmComment Comment hi def link voscmJump Statement hi def link voscmContinuation Macro hi def link voscmLabelId String hi def link voscmParamList NONE hi def link voscmParamId Identifier hi def link voscmParamName String hi def link voscmParam Statement hi def link voscmParamKeyword Statement hi def link voscmFunction Function hi def link voscmCommand Structure "hi def link voscmIdentifier NONE "hi def link voscmSpecial Special " not used hi def link voscmTodo Todo hi def link voscmTab Error hi def link voscmError Error let b:current_syntax = "voscm" " vim: ts=8 PK&]գGvim80/syntax/tf.vimnu[" Vim syntax file " Language: tf " Maintainer: Lutz Eymers " URL: http://www.isp.de/data/tf.vim " Email: send syntax_vim.tgz " Last Change: 2001 May 10 " " Options lite_minlines = x to sync at least x lines backwards " Remove any old syntax stuff hanging around " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case match if !exists("main_syntax") let main_syntax = 'tf' endif " Special global variables syn keyword tfVar HOME LANG MAIL SHELL TERM TFHELP TFLIBDIR TFLIBRARY TZ contained syn keyword tfVar background backslash contained syn keyword tfVar bamf bg_output borg clearfull cleardone clock connect contained syn keyword tfVar emulation end_color gag gethostbyname gpri hook hilite contained syn keyword tfVar hiliteattr histsize hpri insert isize istrip kecho contained syn keyword tfVar kprefix login lp lpquote maildelay matching max_iter contained syn keyword tfVar max_recur mecho more mprefix oldslash promt_sec contained syn keyword tfVar prompt_usec proxy_host proxy_port ptime qecho qprefix contained syn keyword tfVar quite quitdone redef refreshtime scroll shpause snarf sockmload contained syn keyword tfVar start_color tabsize telopt sub time_format visual contained syn keyword tfVar watch_dog watchname wordpunct wrap wraplog wrapsize contained syn keyword tfVar wrapspace contained " Worldvar syn keyword tfWorld world_name world_character world_password world_host contained syn keyword tfWorld world_port world_mfile world_type contained " Number syn match tfNumber "-\=\<\d\+\>" " Float syn match tfFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" " Operator syn match tfOperator "[-+=?:&|!]" syn match tfOperator "/[^*~@]"he=e-1 syn match tfOperator ":=" syn match tfOperator "[^/%]\*"hs=s+1 syn match tfOperator "$\+[([{]"he=e-1,me=e-1 syn match tfOperator "\^\[\+"he=s+1 contains=tfSpecialCharEsc " Relational syn match tfRelation "&&" syn match tfRelation "||" syn match tfRelation "[<>/!=]=" syn match tfRelation "[<>]" syn match tfRelation "[!=]\~" syn match tfRelation "[=!]/" " Readonly Var syn match tfReadonly "[#*]" contained syn match tfReadonly "\<-\=L\=\d\{-}\>" contained syn match tfReadonly "\" contained syn match tfReadonly "\" contained " Identifier syn match tfIdentifier "%\+[a-zA-Z_#*-0-9]\w*" contains=tfVar,tfReadonly syn match tfIdentifier "%\+[{]"he=e-1,me=e-1 syn match tfIdentifier "\$\+{[a-zA-Z_#*-0-9]\w*}" contains=tfWorld " Function names syn keyword tfFunctions ascii char columns echo filename ftime fwrite getopts syn keyword tfFunctions getpid idle kbdel kbgoto kbhead kblen kbmatch kbpoint syn keyword tfFunctions kbtail kbwordleft kbwordright keycode lines mod syn keyword tfFunctions moresize pad rand read regmatch send strcat strchr syn keyword tfFunctions strcmp strlen strncmp strrchr strrep strstr substr syn keyword tfFunctions systype time tolower toupper syn keyword tfStatement addworld bamf beep bind break cat changes connect contained syn keyword tfStatement dc def dokey echo edit escape eval export expr fg for contained syn keyword tfStatement gag getfile grab help hilite histsize hook if input contained syn keyword tfStatement kill lcd let list listsockets listworlds load contained syn keyword tfStatement localecho log nohilite not partial paste ps purge contained syn keyword tfStatement purgeworld putfile quit quote recall recordline save contained syn keyword tfStatement saveworld send sh shift sub substitute contained syn keyword tfStatement suspend telnet test time toggle trig trigger unbind contained syn keyword tfStatement undef undefn undeft unhook untrig unworld contained syn keyword tfStatement version watchdog watchname while world contained " Hooks syn keyword tfHook ACTIVITY BACKGROUND BAMF CONFAIL CONFLICT CONNECT DISCONNECT syn keyword tfHook KILL LOAD LOADFAIL LOG LOGIN MAIL MORE PENDING PENDING syn keyword tfHook PROCESS PROMPT PROXY REDEF RESIZE RESUME SEND SHADOW SHELL syn keyword tfHook SIGHUP SIGTERM SIGUSR1 SIGUSR2 WORLD " Conditional syn keyword tfConditional if endif then else elseif contained " Repeat syn keyword tfRepeat while do done repeat for contained " Statement syn keyword tfStatement break quit contained " Include syn keyword tfInclude require load save loaded contained " Define syn keyword tfDefine bind unbind def undef undefn undefn purge hook unhook trig untrig contained syn keyword tfDefine set unset setenv contained " Todo syn keyword tfTodo TODO Todo todo contained " SpecialChar syn match tfSpecialChar "\\[abcfnrtyv\\]" contained syn match tfSpecialChar "\\\d\{3}" contained contains=tfOctalError syn match tfSpecialChar "\\x[0-9a-fA-F]\{2}" contained syn match tfSpecialCharEsc "\[\+" contained syn match tfOctalError "[89]" contained " Comment syn region tfComment start="^;" end="$" contains=tfTodo " String syn region tfString oneline matchgroup=None start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=tfIdentifier,tfSpecialChar,tfEscape syn region tfString matchgroup=None start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=tfIdentifier,tfSpecialChar,tfEscape syn match tfParentError "[)}\]]" " Parents syn region tfParent matchgroup=Delimiter start="(" end=")" contains=ALLBUT,tfReadonly syn region tfParent matchgroup=Delimiter start="\[" end="\]" contains=ALL syn region tfParent matchgroup=Delimiter start="{" end="}" contains=ALL syn match tfEndCommand "%%\{-};" syn match tfJoinLines "\\$" " Types syn match tfType "/[a-zA-Z_~@][a-zA-Z0-9_]*" contains=tfConditional,tfRepeat,tfStatement,tfInclude,tfDefine,tfStatement " Catch /quote .. ' syn match tfQuotes "/quote .\{-}'" contains=ALLBUT,tfString " Catch $(/escape ) syn match tfEscape "(/escape .*)" " sync if exists("tf_minlines") exec "syn sync minlines=" . tf_minlines else syn sync minlines=100 endif " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link tfComment Comment hi def link tfString String hi def link tfNumber Number hi def link tfFloat Float hi def link tfIdentifier Identifier hi def link tfVar Identifier hi def link tfWorld Identifier hi def link tfReadonly Identifier hi def link tfHook Identifier hi def link tfFunctions Function hi def link tfRepeat Repeat hi def link tfConditional Conditional hi def link tfLabel Label hi def link tfStatement Statement hi def link tfType Type hi def link tfInclude Include hi def link tfDefine Define hi def link tfSpecialChar SpecialChar hi def link tfSpecialCharEsc SpecialChar hi def link tfParentError Error hi def link tfTodo Todo hi def link tfEndCommand Delimiter hi def link tfJoinLines Delimiter hi def link tfOperator Operator hi def link tfRelation Operator let b:current_syntax = "tf" if main_syntax == 'tf' unlet main_syntax endif " vim: ts=8 PK&]tWFFvim80/syntax/perl.vimnu[" Vim syntax file " Language: Perl 5 " Maintainer: vim-perl " Homepage: http://github.com/vim-perl/vim-perl/tree/master " Bugs/requests: http://github.com/vim-perl/vim-perl/issues " Last Change: 2017-09-12 " Contributors: Andy Lester " Hinrik Örn Sigurðsson " Lukas Mai " Nick Hibma " Sonia Heimann " Rob Hoelz " and many others. " " Please download the most recent version first, before mailing " any comments. " " The following parameters are available for tuning the " perl syntax highlighting, with defaults given: " " let perl_include_pod = 1 " unlet perl_no_scope_in_variables " unlet perl_no_extended_vars " unlet perl_string_as_statement " unlet perl_no_sync_on_sub " unlet perl_no_sync_on_global_var " let perl_sync_dist = 100 " unlet perl_fold " unlet perl_fold_blocks " unlet perl_nofold_packages " unlet perl_nofold_subs " unlet perl_fold_anonymous_subs " unlet perl_no_subprototype_error if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " POD starts with ^= and ends with ^=cut if !exists("perl_include_pod") || perl_include_pod == 1 " Include a while extra syntax file syn include @Pod syntax/pod.vim unlet b:current_syntax if exists("perl_fold") syn region perlPOD start="^=[a-z]" end="^=cut" contains=@Pod,@Spell,perlTodo keepend fold extend syn region perlPOD start="^=cut" end="^=cut" contains=perlTodo keepend fold extend else syn region perlPOD start="^=[a-z]" end="^=cut" contains=@Pod,@Spell,perlTodo keepend syn region perlPOD start="^=cut" end="^=cut" contains=perlTodo keepend endif else " Use only the bare minimum of rules if exists("perl_fold") syn region perlPOD start="^=[a-z]" end="^=cut" fold else syn region perlPOD start="^=[a-z]" end="^=cut" endif endif syn cluster perlTop contains=TOP syn region perlBraces start="{" end="}" transparent extend " All keywords " syn match perlConditional "\<\%(if\|elsif\|unless\|given\|when\|default\)\>" syn match perlConditional "\\)\|\>\)" contains=perlElseIfError skipwhite skipnl skipempty syn match perlRepeat "\<\%(while\|for\%(each\)\=\|do\|until\|continue\)\>" syn match perlOperator "\<\%(defined\|undef\|eq\|ne\|[gl][et]\|cmp\|not\|and\|or\|xor\|not\|bless\|ref\|do\)\>" " for some reason, adding this as the nextgroup for perlControl fixes BEGIN " folding issues... syn match perlFakeGroup "" contained syn match perlControl "\<\%(BEGIN\|CHECK\|INIT\|END\|UNITCHECK\)\>\_s*" nextgroup=perlFakeGroup syn match perlStatementStorage "\<\%(my\|our\|local\|state\)\>" syn match perlStatementControl "\<\%(return\|last\|next\|redo\|goto\|break\)\>" syn match perlStatementScalar "\<\%(chom\=p\|chr\|crypt\|r\=index\|lc\%(first\)\=\|length\|ord\|pack\|sprintf\|substr\|fc\|uc\%(first\)\=\)\>" syn match perlStatementRegexp "\<\%(pos\|quotemeta\|split\|study\)\>" syn match perlStatementNumeric "\<\%(abs\|atan2\|cos\|exp\|hex\|int\|log\|oct\|rand\|sin\|sqrt\|srand\)\>" syn match perlStatementList "\<\%(splice\|unshift\|shift\|push\|pop\|join\|reverse\|grep\|map\|sort\|unpack\)\>" syn match perlStatementHash "\<\%(delete\|each\|exists\|keys\|values\)\>" syn match perlStatementIOfunc "\<\%(syscall\|dbmopen\|dbmclose\)\>" syn match perlStatementFiledesc "\<\%(binmode\|close\%(dir\)\=\|eof\|fileno\|getc\|lstat\|printf\=\|read\%(dir\|line\|pipe\)\|rewinddir\|say\|select\|stat\|tell\%(dir\)\=\|write\)\>" nextgroup=perlFiledescStatementNocomma skipwhite syn match perlStatementFiledesc "\<\%(fcntl\|flock\|ioctl\|open\%(dir\)\=\|read\|seek\%(dir\)\=\|sys\%(open\|read\|seek\|write\)\|truncate\)\>" nextgroup=perlFiledescStatementComma skipwhite syn match perlStatementVector "\" syn match perlStatementFiles "\<\%(ch\%(dir\|mod\|own\|root\)\|glob\|link\|mkdir\|readlink\|rename\|rmdir\|symlink\|umask\|unlink\|utime\)\>" syn match perlStatementFiles "-[rwxoRWXOezsfdlpSbctugkTBMAC]\>" syn match perlStatementFlow "\<\%(caller\|die\|dump\|eval\|exit\|wantarray\|evalbytes\)\>" syn match perlStatementInclude "\<\%(require\|import\|unimport\)\>" syn match perlStatementInclude "\<\%(use\|no\)\s\+\%(\%(attributes\|attrs\|autodie\|autouse\|parent\|base\|big\%(int\|num\|rat\)\|blib\|bytes\|charnames\|constant\|diagnostics\|encoding\%(::warnings\)\=\|feature\|fields\|filetest\|if\|integer\|less\|lib\|locale\|mro\|open\|ops\|overload\|overloading\|re\|sigtrap\|sort\|strict\|subs\|threads\%(::shared\)\=\|utf8\|vars\|version\|vmsish\|warnings\%(::register\)\=\)\>\)\=" syn match perlStatementProc "\<\%(alarm\|exec\|fork\|get\%(pgrp\|ppid\|priority\)\|kill\|pipe\|set\%(pgrp\|priority\)\|sleep\|system\|times\|wait\%(pid\)\=\)\>" syn match perlStatementSocket "\<\%(accept\|bind\|connect\|get\%(peername\|sock\%(name\|opt\)\)\|listen\|recv\|send\|setsockopt\|shutdown\|socket\%(pair\)\=\)\>" syn match perlStatementIPC "\<\%(msg\%(ctl\|get\|rcv\|snd\)\|sem\%(ctl\|get\|op\)\|shm\%(ctl\|get\|read\|write\)\)\>" syn match perlStatementNetwork "\<\%(\%(end\|[gs]et\)\%(host\|net\|proto\|serv\)ent\|get\%(\%(host\|net\)by\%(addr\|name\)\|protoby\%(name\|number\)\|servby\%(name\|port\)\)\)\>" syn match perlStatementPword "\<\%(get\%(pw\%(uid\|nam\)\|gr\%(gid\|nam\)\|login\)\)\|\%(end\|[gs]et\)\%(pw\|gr\)ent\>" syn match perlStatementTime "\<\%(gmtime\|localtime\|time\)\>" syn match perlStatementMisc "\<\%(warn\|format\|formline\|reset\|scalar\|prototype\|lock\|tied\=\|untie\)\>" syn keyword perlTodo TODO TODO: TBD TBD: FIXME FIXME: XXX XXX: NOTE NOTE: contained syn region perlStatementIndirObjWrap matchgroup=perlStatementIndirObj start="\%(\<\%(map\|grep\|sort\|printf\=\|say\|system\|exec\)\>\s*\)\@<={" end="}" transparent extend syn match perlLabel "^\s*\h\w*\s*::\@!\%(\ is *not* considered as part of the " variable - there again, too complicated and too slow. " Special variables first ($^A, ...) and ($|, $', ...) syn match perlVarPlain "$^[ACDEFHILMNOPRSTVWX]\=" syn match perlVarPlain "$[\\\"\[\]'&`+*.,;=%~!?@#$<>(-]" syn match perlVarPlain "@[-+]" syn match perlVarPlain "$\%(0\|[1-9]\d*\)" " Same as above, but avoids confusion in $::foo (equivalent to $main::foo) syn match perlVarPlain "$::\@!" " These variables are not recognized within matches. syn match perlVarNotInMatches "$[|)]" " This variable is not recognized within matches delimited by m//. syn match perlVarSlash "$/" " And plain identifiers syn match perlPackageRef "[$@#%*&]\%(\%(::\|'\)\=\I\i*\%(\%(::\|'\)\I\i*\)*\)\=\%(::\|'\)\I"ms=s+1,me=e-1 contained " To not highlight packages in variables as a scope reference - i.e. in " $pack::var, pack:: is a scope, just set "perl_no_scope_in_variables" " If you don't want complex things like @{${"foo"}} to be processed, " just set the variable "perl_no_extended_vars"... if !exists("perl_no_scope_in_variables") syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref else syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref endif syn match perlVarPlain2 "%[-+]" if !exists("perl_no_extended_vars") syn cluster perlExpr contains=perlStatementIndirObjWrap,perlStatementScalar,perlStatementRegexp,perlStatementNumeric,perlStatementList,perlStatementHash,perlStatementFiles,perlStatementTime,perlStatementMisc,perlVarPlain,perlVarPlain2,perlVarNotInMatches,perlVarSlash,perlVarBlock,perlVarBlock2,perlShellCommand,perlFloat,perlNumber,perlStringUnexpanded,perlString,perlQQ,perlArrow,perlBraces syn region perlArrow matchgroup=perlArrow start="->\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained syn region perlArrow matchgroup=perlArrow start="->\s*\[" end="\]" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained syn region perlArrow matchgroup=perlArrow start="->\s*{" end="}" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained syn match perlArrow "->\s*{\s*\I\i*\s*}" contains=perlVarSimpleMemberName nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained syn region perlArrow matchgroup=perlArrow start="->\s*\$*\I\i*\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained syn region perlVarBlock matchgroup=perlVarPlain start="\%($#\|[$@]\)\$*{" skip="\\}" end=+}\|\%(\%(<<\%('\|"\)\?\)\@=\)+ contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend syn region perlVarBlock2 matchgroup=perlVarPlain start="[%&*]\$*{" skip="\\}" end=+}\|\%(\%(<<\%('\|"\)\?\)\@=\)+ contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend syn match perlVarPlain2 "[%&*]\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend syn match perlVarPlain "\%(\$#\|[@$]\)\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\={" skip="\\}" end="}" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend syn match perlVarSimpleMember "\%(->\)\={\s*\I\i*\s*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contains=perlVarSimpleMemberName contained extend syn match perlVarSimpleMemberName "\I\i*" contained syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\=\[" skip="\\]" end="]" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend syn match perlPackageConst "__PACKAGE__" nextgroup=perlMethod,perlPostDeref syn match perlMethod "->\$*\I\i*" contained nextgroup=perlVarSimpleMember,perlVarMember,perlMethod,perlPostDeref syn match perlPostDeref "->\%($#\|[$@%&*]\)\*" contained nextgroup=perlVarSimpleMember,perlVarMember,perlMethod,perlPostDeref syn region perlPostDeref start="->\%($#\|[$@%&*]\)\[" skip="\\]" end="]" contained contains=@perlExpr nextgroup=perlVarSimpleMember,perlVarMember,perlMethod,perlPostDeref syn region perlPostDeref matchgroup=perlPostDeref start="->\%($#\|[$@%&*]\){" skip="\\}" end="}" contained contains=@perlExpr nextgroup=perlVarSimpleMember,perlVarMember,perlMethod,perlPostDeref endif " File Descriptors syn match perlFiledescRead "<\h\w*>" syn match perlFiledescStatementComma "(\=\s*\<\u\w*\>\s*,"me=e-1 transparent contained contains=perlFiledescStatement syn match perlFiledescStatementNocomma "(\=\s*\<\u\w*\>\s*[^, \t]"me=e-1 transparent contained contains=perlFiledescStatement syn match perlFiledescStatement "\<\u\w*\>" contained " Special characters in strings and matches syn match perlSpecialString "\\\%(\o\{1,3}\|x\%({\x\+}\|\x\{1,2}\)\|c.\|[^cx]\)" contained extend syn match perlSpecialStringU2 "\\." extend contained contains=NONE syn match perlSpecialStringU "\\\\" contained syn match perlSpecialMatch "\\[1-9]" contained extend syn match perlSpecialMatch "\\g\%(\d\+\|{\%(-\=\d\+\|\h\w*\)}\)" contained syn match perlSpecialMatch "\\k\%(<\h\w*>\|'\h\w*'\)" contained syn match perlSpecialMatch "{\d\+\%(,\%(\d\+\)\=\)\=}" contained syn match perlSpecialMatch "\[[]-]\=[^\[\]]*[]-]\=\]" contained extend syn match perlSpecialMatch "[+*()?.]" contained syn match perlSpecialMatch "(?[#:=!]" contained syn match perlSpecialMatch "(?[impsx]*\%(-[imsx]\+\)\=)" contained syn match perlSpecialMatch "(?\%([-+]\=\d\+\|R\))" contained syn match perlSpecialMatch "(?\%(&\|P[>=]\)\h\w*)" contained syn match perlSpecialMatch "(\*\%(\%(PRUNE\|SKIP\|THEN\)\%(:[^)]*\)\=\|\%(MARK\|\):[^)]*\|COMMIT\|F\%(AIL\)\=\|ACCEPT\))" contained " Possible errors " " Highlight lines with only whitespace (only in blank delimited here documents) as errors syn match perlNotEmptyLine "^\s\+$" contained " Highlight "} else if (...) {", it should be "} else { if (...) { " or "} elsif (...) {" syn match perlElseIfError "else\_s*if" containedin=perlConditional syn keyword perlElseIfError elseif containedin=perlConditional " Variable interpolation " " These items are interpolated inside "" strings and similar constructs. syn cluster perlInterpDQ contains=perlSpecialString,perlVarPlain,perlVarNotInMatches,perlVarSlash,perlVarBlock " These items are interpolated inside '' strings and similar constructs. syn cluster perlInterpSQ contains=perlSpecialStringU,perlSpecialStringU2 " These items are interpolated inside m// matches and s/// substitutions. syn cluster perlInterpSlash contains=perlSpecialString,perlSpecialMatch,perlVarPlain,perlVarBlock " These items are interpolated inside m## matches and s### substitutions. syn cluster perlInterpMatch contains=@perlInterpSlash,perlVarSlash " Shell commands syn region perlShellCommand matchgroup=perlMatchStartEnd start="`" end="`" contains=@perlInterpDQ keepend " Constants " " Numbers syn match perlNumber "\<\%(0\%(x\x[[:xdigit:]_]*\|b[01][01_]*\|\o[0-7_]*\|\)\|[1-9][[:digit:]_]*\)\>" syn match perlFloat "\<\d[[:digit:]_]*[eE][\-+]\=\d\+" syn match perlFloat "\<\d[[:digit:]_]*\.[[:digit:]_]*\%([eE][\-+]\=\d\+\)\=" syn match perlFloat "\.[[:digit:]][[:digit:]_]*\%([eE][\-+]\=\d\+\)\=" syn match perlString "\<\%(v\d\+\%(\.\d\+\)*\|\d\+\%(\.\d\+\)\{2,}\)\>" contains=perlVStringV syn match perlVStringV "\+ extend contained contains=perlAnglesSQ,@perlInterpSQ keepend syn region perlParensDQ start=+(+ end=+)+ extend contained contains=perlParensDQ,@perlInterpDQ keepend syn region perlBracketsDQ start=+\[+ end=+\]+ extend contained contains=perlBracketsDQ,@perlInterpDQ keepend syn region perlBracesDQ start=+{+ end=+}+ extend contained contains=perlBracesDQ,@perlInterpDQ keepend syn region perlAnglesDQ start=+<+ end=+>+ extend contained contains=perlAnglesDQ,@perlInterpDQ keepend " Simple version of searches and matches syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\s*\z([^[:space:]'([{<#]\)+ end=+\z1[msixpodualgcn]*+ contains=@perlInterpMatch keepend extend syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@\)\@\)\@[msixpodualgcn]*+ contains=@perlInterpMatch,perlAnglesDQ keepend extend syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\)\@\s*\z([^[:space:]'([{<#]\)+ end=+\z1+me=e-1 contains=@perlInterpMatch nextgroup=perlSubstitutionGQQ keepend extend syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@\)\@+ contains=@perlInterpMatch,perlAnglesDQ nextgroup=perlSubstitutionGQQ skipwhite skipempty skipnl keepend extend syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\)\@[msixpodualgcern]*+ contained contains=@perlInterpDQ,perlAnglesDQ keepend extend syn region perlSubstitutionSQ matchgroup=perlMatchStartEnd start=+'+ end=+'[msixpodualgcern]*+ contained contains=@perlInterpSQ keepend extend " Translations " perlMatch is the first part, perlTranslation* is the second, translator part. syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\s*\z([^[:space:]([{<#]\)+ end=+\z1+me=e-1 contains=@perlInterpSQ nextgroup=perlTranslationGQ syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@+ contains=@perlInterpSQ,perlAnglesSQ nextgroup=perlTranslationGQ skipwhite skipempty skipnl syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@[cdsr]*+ contains=perlAnglesSQ contained " Strings and q, qq, qw and qr expressions syn region perlStringUnexpanded matchgroup=perlStringStartEnd start="'" end="'" contains=@perlInterpSQ keepend extend syn region perlString matchgroup=perlStringStartEnd start=+"+ end=+"+ contains=@perlInterpDQ keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\s*\z([^[:space:]#([{<]\)+ end=+\z1+ contains=@perlInterpSQ keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@\)\@+ contains=@perlInterpSQ,perlAnglesSQ keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\s*\z([^[:space:]#([{<]\)+ end=+\z1+ contains=@perlInterpDQ keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@\)\@+ contains=@perlInterpDQ,perlAnglesDQ keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@\)\@\)\@+ contains=@perlInterpSQ,perlAnglesSQ keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\s*\z([^[:space:]#([{<'/]\)+ end=+\z1[imosxdual]*+ contains=@perlInterpMatch keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\)\@\)\@\)\@ and qr[] which allows for comments and extra whitespace in the pattern syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\)\@[imosxdual]*+ contains=@perlInterpMatch,perlAnglesDQ,perlComment keepend extend syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@\zs\_[^)]\+" contained syn match perlSubPrototype +(\_[^)]*)\_s*+ nextgroup=perlSubAttributes,perlComment contained contains=perlSubPrototypeError endif syn match perlSubName +\%(\h\|::\|'\w\)\%(\w\|::\|'\w\)*\_s*\|+ contained nextgroup=perlSubPrototype,perlSignature,perlSubAttributes,perlComment syn match perlFunction +\\_s*+ nextgroup=perlSubName " The => operator forces a bareword to the left of it to be interpreted as " a string syn match perlString "\I\@\)\@=" " All other # are comments, except ^#! syn match perlComment "#.*" contains=perlTodo,@Spell extend syn match perlSharpBang "^#!.*" " Formats syn region perlFormat matchgroup=perlStatementIOFunc start="^\s*\~]\+\%(\.\.\.\)\=" contained syn match perlFormatField "[@^]#[#.]*" contained syn match perlFormatField "@\*" contained syn match perlFormatField "@[^A-Za-z_|<>~#*]"me=e-1 contained syn match perlFormatField "@$" contained " __END__ and __DATA__ clauses if exists("perl_fold") syntax region perlDATA start="^__DATA__$" skip="." end="." contains=@perlDATA fold syntax region perlDATA start="^__END__$" skip="." end="." contains=perlPOD,@perlDATA fold else syntax region perlDATA start="^__DATA__$" skip="." end="." contains=@perlDATA syntax region perlDATA start="^__END__$" skip="." end="." contains=perlPOD,@perlDATA endif " " Folding if exists("perl_fold") " Note: this bit must come before the actual highlighting of the "package" " keyword, otherwise this will screw up Pod lines that match /^package/ if !exists("perl_nofold_packages") syn region perlPackageFold start="^package \S\+;\s*\%(#.*\)\=$" end="^1;\=\s*\%(#.*\)\=$" end="\n\+package"me=s-1 transparent fold keepend endif if !exists("perl_nofold_subs") if get(g:, "perl_fold_anonymous_subs", 0) syn region perlSubFold start="\[^{]*{" end="}" transparent fold keepend extend syn region perlSubFold start="\<\%(BEGIN\|END\|CHECK\|INIT\)\>\s*{" end="}" transparent fold keepend else syn region perlSubFold start="^\z(\s*\)\.*[^};]$" end="^\z1}\s*\%(#.*\)\=$" transparent fold keepend syn region perlSubFold start="^\z(\s*\)\<\%(BEGIN\|END\|CHECK\|INIT\|UNITCHECK\)\>.*[^};]$" end="^\z1}\s*$" transparent fold keepend endif endif if exists("perl_fold_blocks") syn region perlBlockFold start="^\z(\s*\)\%(if\|elsif\|unless\|for\|while\|until\|given\)\s*(.*)\%(\s*{\)\=\s*\%(#.*\)\=$" start="^\z(\s*\)for\%(each\)\=\s*\%(\%(my\|our\)\=\s*\S\+\s*\)\=(.*)\%(\s*{\)\=\s*\%(#.*\)\=$" end="^\z1}\s*;\=\%(#.*\)\=$" transparent fold keepend syn region perlBlockFold start="^\z(\s*\)\%(do\|else\)\%(\s*{\)\=\s*\%(#.*\)\=$" end="^\z1}\s*while" end="^\z1}\s*;\=\%(#.*\)\=$" transparent fold keepend endif setlocal foldmethod=syntax syn sync fromstart else " fromstart above seems to set minlines even if perl_fold is not set. syn sync minlines=0 endif " NOTE: If you're linking new highlight groups to perlString, please also put " them into b:match_skip in ftplugin/perl.vim. " The default highlighting. hi def link perlSharpBang PreProc hi def link perlControl PreProc hi def link perlInclude Include hi def link perlSpecial Special hi def link perlString String hi def link perlCharacter Character hi def link perlNumber Number hi def link perlFloat Float hi def link perlType Type hi def link perlIdentifier Identifier hi def link perlLabel Label hi def link perlStatement Statement hi def link perlConditional Conditional hi def link perlRepeat Repeat hi def link perlOperator Operator hi def link perlFunction Keyword hi def link perlSubName Function hi def link perlSubPrototype Type hi def link perlSignature Type hi def link perlSubAttributes PreProc hi def link perlSubAttributesCont perlSubAttributes hi def link perlComment Comment hi def link perlTodo Todo if exists("perl_string_as_statement") hi def link perlStringStartEnd perlStatement else hi def link perlStringStartEnd perlString endif hi def link perlVStringV perlStringStartEnd hi def link perlList perlStatement hi def link perlMisc perlStatement hi def link perlVarPlain perlIdentifier hi def link perlVarPlain2 perlIdentifier hi def link perlArrow perlIdentifier hi def link perlFiledescRead perlIdentifier hi def link perlFiledescStatement perlIdentifier hi def link perlVarSimpleMember perlIdentifier hi def link perlVarSimpleMemberName perlString hi def link perlVarNotInMatches perlIdentifier hi def link perlVarSlash perlIdentifier hi def link perlQQ perlString hi def link perlHereDoc perlString hi def link perlStringUnexpanded perlString hi def link perlSubstitutionSQ perlString hi def link perlSubstitutionGQQ perlString hi def link perlTranslationGQ perlString hi def link perlMatch perlString hi def link perlMatchStartEnd perlStatement hi def link perlFormatName perlIdentifier hi def link perlFormatField perlString hi def link perlPackageDecl perlType hi def link perlStorageClass perlType hi def link perlPackageRef perlType hi def link perlStatementPackage perlStatement hi def link perlStatementStorage perlStatement hi def link perlStatementControl perlStatement hi def link perlStatementScalar perlStatement hi def link perlStatementRegexp perlStatement hi def link perlStatementNumeric perlStatement hi def link perlStatementList perlStatement hi def link perlStatementHash perlStatement hi def link perlStatementIOfunc perlStatement hi def link perlStatementFiledesc perlStatement hi def link perlStatementVector perlStatement hi def link perlStatementFiles perlStatement hi def link perlStatementFlow perlStatement hi def link perlStatementInclude perlStatement hi def link perlStatementProc perlStatement hi def link perlStatementSocket perlStatement hi def link perlStatementIPC perlStatement hi def link perlStatementNetwork perlStatement hi def link perlStatementPword perlStatement hi def link perlStatementTime perlStatement hi def link perlStatementMisc perlStatement hi def link perlStatementIndirObj perlStatement hi def link perlFunctionName perlIdentifier hi def link perlMethod perlIdentifier hi def link perlPostDeref perlIdentifier hi def link perlFunctionPRef perlType if !get(g:, 'perl_include_pod', 1) hi def link perlPOD perlComment endif hi def link perlShellCommand perlString hi def link perlSpecialAscii perlSpecial hi def link perlSpecialDollar perlSpecial hi def link perlSpecialString perlSpecial hi def link perlSpecialStringU perlSpecial hi def link perlSpecialMatch perlSpecial hi def link perlDATA perlComment " NOTE: Due to a bug in Vim (or more likely, a misunderstanding on my part), " I had to remove the transparent property from the following regions " in order to get them to highlight correctly. Feel free to remove " these and reinstate the transparent property if you know how. hi def link perlParensSQ perlString hi def link perlBracketsSQ perlString hi def link perlBracesSQ perlString hi def link perlAnglesSQ perlString hi def link perlParensDQ perlString hi def link perlBracketsDQ perlString hi def link perlBracesDQ perlString hi def link perlAnglesDQ perlString hi def link perlSpecialStringU2 perlString " Possible errors hi def link perlNotEmptyLine Error hi def link perlElseIfError Error hi def link perlSubPrototypeError Error hi def link perlSubError Error " Syncing to speed up processing " if !exists("perl_no_sync_on_sub") syn sync match perlSync grouphere NONE "^\s*\" syn sync match perlSync grouphere NONE "^}" endif if !exists("perl_no_sync_on_global_var") syn sync match perlSync grouphere NONE "^$\I[[:alnum:]_:]+\s*=\s*{" syn sync match perlSync grouphere NONE "^[@%]\I[[:alnum:]_:]+\s*=\s*(" endif if exists("perl_sync_dist") execute "syn sync maxlines=" . perl_sync_dist else syn sync maxlines=100 endif syn sync match perlSyncPOD grouphere perlPOD "^=pod" syn sync match perlSyncPOD grouphere perlPOD "^=head" syn sync match perlSyncPOD grouphere perlPOD "^=item" syn sync match perlSyncPOD grouphere NONE "^=cut" let b:current_syntax = "perl" let &cpo = s:cpo_save unlet s:cpo_save " XXX Change to sts=4:sw=4 " vim:ts=8:sts=2:sw=2:expandtab:ft=vim PK&]- vim80/syntax/datascript.vimnu[" Vim syntax file " Language: DataScript " Maintainer: Dominique Pelle " Last Change: 2015 Jul 30 " " DataScript is a formal language for modelling binary datatypes, " bitstreams or file formats. For more information, see: " " http://dstools.sourceforge.net/DataScriptLanguageOverview.html " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:keepcpo= &cpo set cpo&vim syn keyword dsPackage import package syn keyword dsType bit bool string syn keyword dsType int int8 int16 int32 int64 syn keyword dsType uint8 uint16 uint32 uint64 syn keyword dsType varint16 varint32 varint64 syn keyword dsType varuint16 varuint32 varuint64 syn keyword dsType leint16 leint32 leint64 syn keyword dsType leuint16 leuint32 leuint64 syn keyword dsEndian little big syn keyword dsAlign align syn keyword dsLabel case default syn keyword dsConditional if condition syn keyword dsBoolean true false syn keyword dsCompound union choice on enum bitmask subtype explicit syn keyword dsKeyword function return syn keyword dsOperator sizeof bitsizeof lengthof is sum forall in syn keyword dsStorageClass const syn keyword dsTodo contained TODO FIXME XXX syn keyword dsSql sql sql_table sql_database sql_pragma sql_index syn keyword dsSql sql_integer sql_metadata sql_key sql_virtual syn keyword dsSql using reference_key foreign_key to " dsCommentGroup allows adding matches for special things in comments. syn cluster dsCommentGroup contains=dsTodo syn match dsOffset display "^\s*[a-zA-Z_:\.][a-zA-Z0-9_:\.]*\s*:" syn match dsNumber display "\<\d\+\>" syn match dsNumberHex display "\<0[xX]\x\+\>" syn match dsNumberBin display "\<[01]\+[bB]\>" contains=dsBinaryB syn match dsBinaryB display contained "[bB]\>" syn match dsOctal display "\<0\o\+\>" contains=dsOctalZero syn match dsOctalZero display contained "\<0" syn match dsOctalError display "\<0\o*[89]\d*\>" syn match dsCommentError display "\*/" syn match dsCommentStartError display "/\*"me=e-1 contained syn region dsCommentL \ start="//" skip="\\$" end="$" keepend \ contains=@dsCommentGroup,@Spell syn region dsComment \ matchgroup=dsCommentStart start="/\*" end="\*/" \ contains=@dsCommentGroup,dsCommentStartError,@Spell extend syn region dsString \ start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell syn sync ccomment dsComment " Define the default highlighting. hi def link dsType Type hi def link dsEndian StorageClass hi def link dsStorageClass StorageClass hi def link dsAlign Label hi def link dsLabel Label hi def link dsOffset Label hi def link dsSql PreProc hi def link dsCompound Structure hi def link dsConditional Conditional hi def link dsBoolean Boolean hi def link dsKeyword Statement hi def link dsString String hi def link dsNumber Number hi def link dsNumberBin Number hi def link dsBinaryB Special hi def link dsOctal Number hi def link dsOctalZero Special hi def link dsOctalError Error hi def link dsNumberHex Number hi def link dsTodo Todo hi def link dsOperator Operator hi def link dsPackage Include hi def link dsCommentError Error hi def link dsCommentStartError Error hi def link dsCommentStart dsComment hi def link dsCommentL dsComment hi def link cCommentL dsComment hi def link dsComment Comment let b:current_syntax = "datascript" let &cpo = s:keepcpo unlet s:keepcpo PK&]1άC C vim80/syntax/smarty.vimnu[" Vim syntax file " Language: Smarty Templates " Maintainer: Manfred Stienstra manfred.stienstra@dwerg.net " Last Change: Mon Nov 4 11:42:23 CET 2002 " Filenames: *.tpl " URL: http://www.dwerg.net/projects/vim/smarty.vim " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded if !exists("main_syntax") " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let main_syntax = 'smarty' endif syn case ignore runtime! syntax/html.vim "syn cluster htmlPreproc add=smartyUnZone syn match smartyBlock contained "[\[\]]" syn keyword smartyTagName capture config_load include include_php syn keyword smartyTagName insert if elseif else ldelim rdelim literal syn keyword smartyTagName php section sectionelse foreach foreachelse syn keyword smartyTagName strip assign counter cycle debug eval fetch syn keyword smartyTagName html_options html_select_date html_select_time syn keyword smartyTagName math popup_init popup html_checkboxes html_image syn keyword smartyTagName html_radios html_table mailto textformat syn keyword smartyModifier cat capitalize count_characters count_paragraphs syn keyword smartyModifier count_sentences count_words date_format default syn keyword smartyModifier escape indent lower nl2br regex_replace replace syn keyword smartyModifier spacify string_format strip strip_tags truncate syn keyword smartyModifier upper wordwrap syn keyword smartyInFunc neq eq syn keyword smartyProperty contained "file=" syn keyword smartyProperty contained "loop=" syn keyword smartyProperty contained "name=" syn keyword smartyProperty contained "include=" syn keyword smartyProperty contained "skip=" syn keyword smartyProperty contained "section=" syn keyword smartyConstant "\$smarty" syn keyword smartyDot . syn region smartyZone matchgroup=Delimiter start="{" end="}" contains=smartyProperty, smartyString, smartyBlock, smartyTagName, smartyConstant, smartyInFunc, smartyModifier syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,smartyZone syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,smartyZone syn region htmlLink start="\_[^>]*\" end=""me=e-4 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc,smartyZone hi def link smartyTagName Identifier hi def link smartyProperty Constant " if you want the text inside the braces to be colored, then " remove the comment in from of the next statement "hi def link smartyZone Include hi def link smartyInFunc Function hi def link smartyBlock Constant hi def link smartyDot SpecialChar hi def link smartyModifier Function let b:current_syntax = "smarty" if main_syntax == 'smarty' unlet main_syntax endif " vim: ts=8 PK&]knʤVVvim80/syntax/sisu.vimnu[" SiSU Vim syntax file " SiSU Maintainer: Ralph Amissah " SiSU Markup: SiSU (sisu-5.6.7) " Last Change: 2017 Jun 22 " URL: " "(originally looked at Ruby Vim by Mirko Nasato) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim "% "Errors: syn match sisu_error contains=sisu_link,sisu_error_wspace "" "% "Markers Identifiers: if !exists("sisu_no_identifiers") syn match sisu_mark_endnote "\~^" syn match sisu_break contains=@NoSpell " \\\\\( \|$\)\|
\|
" syn match sisu_control contains=@NoSpell "^\(-\\\\-\|=\\\\=\|-\.\.-\|<:p[bn]>\)\s*$" syn match sisu_control contains=@NoSpell "^<:\(bo\|---\)>\s*$" syn match sisu_marktail contains=@NoSpell "^--[+~-]#\s*$" syn match sisu_marktail "[~-]#" syn match sisu_control "\"" syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)" syn match sisu_number contains=@NoSpell "[0-9a-f]\{32\}\|[0-9a-f]\{64\}" syn match sisu_link contains=@NoSpell "\(_\?https\?://\|\.\.\/\)\S\+" syn match sisu_link " \*\~\S\+" syn match sisu_require contains=@NoSpell "^<<\s*[a-zA-Z0-9^./_-]\+\.ss[it]$" syn match sisu_structure "^:A\~$" "% "Document Sub Headers: syn match sisu_sub_header_title "^\s\+:\(subtitle\|short\|edition\|language\|lang_char\|note\):\s" "group=sisu_header_content syn match sisu_sub_header_creator "^\s\+:\(author\|editor\|contributor\|illustrator\|photographer\|translator\|digitized_by\|prepared_by\|audio\|video\):\s" " &hon &institution syn match sisu_sub_header_rights "^\s\+:\(copyright\|text\|translation\|illustrations\|photographs\|preparation\|digitization\|audio\|video\|license\|all\):\s" " access_rights license syn match sisu_sub_header_classify "^\s\+:\(topic_register\|keywords\|subject\|dewey\|loc\):\s" syn match sisu_sub_header_identifier "^\s\+:\(oclc\|isbn\):\s" syn match sisu_sub_header_date "^\s\+:\(added_to_site\|available\|created\|issued\|modified\|published\|valid\|translated\|original_publication\):\s" syn match sisu_sub_header_original "^\s\+:\(publisher\|date\|language\|lang_char\|institution\|nationality\|source\):\s" syn match sisu_sub_header_make "^\s\+:\(headings\|num_top\|breaks\|language\|italics\|bold\|emphasis\|substitute\|omit\|plaintext_wrap\|texpdf_font_mono\|texpdf_font\|stamp\|promo\|ad\|manpage\|home_button_text\|home_button_image\|cover_image\|footer\):\s" syn match sisu_sub_header_notes "^\s\+:\(description\|abstract\|comment\|coverage\|relation\|source\|history\|type\|format\|prefix\|prefix_[ab]\|suffix\):\s" syn match sisu_within_index_ignore "\S\+[:;]\(\s\+\|$\)" syn match sisu_within_index "[:|;]\|+\d\+" "% "semantic markers: (ignore) syn match sisu_sem_marker ";{\|};[a-z._]*[a-z]" syn match sisu_sem_marker_block "\([a-z][a-z._]*\|\):{\|}:[a-z._]*[a-z]" syn match sisu_sem_ex_marker ";\[\|\];[a-z._]*[a-z]" syn match sisu_sem_ex_marker_block "\([a-z][a-z._]*\|\):\[\|\]:[a-z._]*[a-z]" syn match sisu_sem_block contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_mark_endnote,sisu_content_endnote "\([a-z]*\):{[^}].\{-}}:\1" syn match sisu_sem_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker ";{[^}].\{-}};[a-z]\+" syn match sisu_sem_ex_block contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_mark_endnote,sisu_content_endnote "\([a-z]*\):\[[^}].\{-}\]:\1" syn match sisu_sem_ex_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker ";\[[^}].\{-}\];[a-z]\+" endif "% "URLs Numbers And ASCII Codes: syn match sisu_number "\<\(0x\x\+\|0b[01]\+\|0\o\+\|0\.\d\+\|0\|[1-9][\.0-9_]*\)\>" syn match sisu_number "?\(\\M-\\C-\|\\c\|\\C-\|\\M-\)\=\(\\\o\{3}\|\\x\x\{2}\|\\\=\w\)" "% "Tuned Error: (is error if not already matched) syn match sisu_error contains=sisu_error "[\~/\*!_]{\|}[\~/\*!_]" syn match sisu_error contains=sisu_error "]" "% "Simple Paired Enclosed Markup: "url/link syn region sisu_link contains=sisu_error,sisu_error_wspace matchgroup=sisu_action start="^<<\s*|[a-zA-Z0-9^._-]\+|@|[a-zA-Z0-9^._-]\+|"rs=s+2 end="$" "% "Document Header: " title syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_title matchgroup=sisu_header start="^[@]title:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " creator syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_creator matchgroup=sisu_header start="^[@]creator:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " dates syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_date matchgroup=sisu_header start="^[@]date:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " publisher syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_publisher matchgroup=sisu_header start="^[@]publisher:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " rights syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_rights matchgroup=sisu_header start="^[@]rights:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " classify document syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_classify matchgroup=sisu_header start="^[@]classify:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " identifier document syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_identifier matchgroup=sisu_header start="^[@]identifier:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " original language (depreciated) syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_original matchgroup=sisu_header start="^[@]original:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " notes syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_notes matchgroup=sisu_header start="^[@]notes:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " links of interest syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_linked,sisu_sub_header_links matchgroup=sisu_header start="^[@]links:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" " make, processing instructions syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_make matchgroup=sisu_header start="^[@]make:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" "% "Headings: syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_ocn,sisu_error,sisu_error_wspace matchgroup=sisu_structure start="^\([1-4]\|:\?[A-D]\)\~\(\S\+\|[^-]\)" end="$" "% "Block Group Text: " table syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^table{.\+" end="}table" " table syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+table" end="^```\(\s\|$\)" syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^{\(t\|table\)\(\~h\)\?\(\sc[0-9]\+;\)\?[0-9; ]*}" end="\n$" " block, group, poem, alt syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^\z(block\|group\|poem\|alt\){" end="^}\z1" syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\(block\|group\|poem\|alt\)" end="^```\(\s\|$\)" " box syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^box\(\.[a-z]\+\)\?{" end="^}box" syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\box\(\.[a-z]\+\)\?" end="^```\(\s\|$\)" " code syn region sisu_content_alt contains=sisu_error,@NoSpell matchgroup=sisu_contain start="^code\(\.[a-z][0-9a-z_]\+\)\?{" end="^}code" syn region sisu_content_alt contains=sisu_error,@NoSpell matchgroup=sisu_contain start="^```\s\+code\(\.[a-z][0-9a-z_]\+\)\?" end="^```\(\s\|$\)" " quote syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_contain start="^```\s\+quote" end="^```\(\s\|$\)" "% "Endnotes: " regular endnote or asterisk or plus sign endnote syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker matchgroup=sisu_mark_endnote start="\~{[*+]*" end="}\~" skip="\n" " numbered asterisk or plus sign endnote syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker matchgroup=sisu_mark_endnote start="\~\[[*+]*" end="\]\~" skip="\n" " endnote content marker (for binary content marking) syn region sisu_content_endnote contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_link,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\^\~" end="\n$" "% "Links And Images: " image with url link (and possibly footnote of url) syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_sem_block,sisu_error matchgroup=sisu_link start="{\(\~^\s\)\?" end="}\(https\?:/\/\|:\|\.\.\/\|#\)\S\+" oneline " sisu outputs, short notation syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_sem_block,sisu_error matchgroup=sisu_link start="{\(\~^\s\)\?" end="\[[1-5][sS]*\]}\S\+\.ss[tm]" oneline " image syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_link start="{" end="}image" oneline "% "Some Line Operations: " bold line syn region sisu_bold contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^!_ " end=" \\\\\|$" " indent and bullet paragraph syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_\([1-9*]\|[1-9]\*\) " end="$" " indent and bullet (bold start) paragraph syn region sisu_bold contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_\([1-9*]\|[1-9]\*\)!_\? " end=" \\\\\|$" " hanging indent paragraph [proposed] syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_[0-9]\?_[0-9] " end="$" " hanging indent (bold start/ definition) paragraph [proposed] syn region sisu_bold contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_[0-9]\?_[0-9]!_\? " end=" \\\\\|$" " list numbering syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^\(#[ 1]\|_# \)" end="$" "% "Font Face Curly Brackets: "syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_sem start="\S\+:{" end="}:[^<>,.!?:; ]\+" oneline " book index: syn region sisu_index contains=sisu_within_index_ignore,sisu_within_index matchgroup=sisu_index_block start="^={" end="}" " emphasis: syn region sisu_bold contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\*{" end="}\*" " bold: syn region sisu_bold contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="!{" end="}!" " underscore: syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="_{" end="}_" " italics: syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="/{" end="}/" " added: syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="+{" end="}+" " superscript: syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\^{" end="}\^" " subscript: syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start=",{" end="}," " monospace: syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="#{" end="}#" " strikethrough: syn region sisu_strikeout contains=sisu_error matchgroup=sisu_fontface start="-{" end="}-" "% "Single Words Bold Italicise Etc: (depreciated) syn region sisu_bold contains=sisu_error matchgroup=sisu_bold start="\([ (]\|^\)\*[^\|{\n\~\\]"hs=e-1 end="\*"he=e-0 skip="[a-zA-Z0-9']" oneline syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="\([ ]\|^\)/[^{ \|\n\\]"hs=e-1 end="/\[ \.\]" skip="[a-zA-Z0-9']" oneline "misc syn region sisu_identifier contains=sisu_error matchgroup=sisu_fontface start="\^[^ {\|\n\\]"rs=s+1 end="\^[ ,.;:'})\\\n]" skip="[a-zA-Z0-9']" oneline "% "Expensive Mode: if !exists("sisu_no_expensive") else " not Expensive syn region sisu_content_alt matchgroup=sisu_control start="^\s*def\s" matchgroup=NONE end="[?!]\|\>" skip="\.\|\(::\)" oneline endif " Expensive? "% "Headers And Headings: (Document Instructions) syn match sisu_control contains=sisu_error,sisu_error_wspace "4\~! \S\+" syn region sisu_markpara contains=sisu_error,sisu_error_wspace start="^=begin" end="^=end.*$" "% "Errors: syn match sisu_error_wspace contains=sisu_error_wspace "^\s\+[^:]" syn match sisu_error_wspace contains=sisu_error_wspace "\s\s\+" syn match sisu_error_wspace contains=sisu_error_wspace "\s\+$" syn match sisu_error contains=sisu_error_wspace "\t\+" syn match sisu_error contains=sisu_error,sisu_error_wspace "\([^ (][_\\]\||[^ (}]\)https\?:\S\+" syn match sisu_error contains=sisu_error "_\?https\?:\S\+[}><]" syn match sisu_error contains=sisu_error "\([!*/_\+,^]\){\([^(\}\1)]\)\{-}\n$" syn match sisu_error contains=sisu_error "^[\~]{[^{]\{-}\n$" syn match sisu_error contains=sisu_error "\s\+.{{" syn match sisu_error contains=sisu_error "^\~\s*$" syn match sisu_error contains=sisu_error "^0\~.*" syn match sisu_error contains=sisu_error "^[1-9]\~\s*$" syn match sisu_error contains=sisu_error "^[1-9]\~\S\+\s*$" syn match sisu_error contains=sisu_error "[^{]\~\^[^ \)]" syn match sisu_error contains=sisu_error "\~\^\s\+\.\s*" syn match sisu_error contains=sisu_error "{\~^\S\+" syn match sisu_error contains=sisu_error "[_/\*!^]{[ .,:;?><]*}[_/\*!^]" syn match sisu_error contains=sisu_error "[^ (\"'(\[][_/\*!]{\|}[_/\*!][a-zA-Z0-9)\]\"']" syn match sisu_error contains=sisu_error "" "errors for filetype sisu, though not error in 'metaverse': syn match sisu_error contains=sisu_error,sisu_match,sisu_strikeout,sisu_contain,sisu_content_alt,sisu_mark,sisu_break,sisu_number "<[a-zA-Z\/]\+>" syn match sisu_error "/\?<\([biu]\)>[^()]\{-}\n$" "% "Error Exceptions: syn match sisu_control "\n$" "contains=ALL "syn match sisu_control " //" syn match sisu_error "%{" syn match sisu_error "
_\?https\?:\S\+\|_\?https\?:\S\+
" syn match sisu_error "[><]_\?https\?:\S\+\|_\?https\?:\S\+[><]" syn match sisu_comment "^%\{1,2\}.\+" "% "Definitions Default Highlighting: hi def link sisu_normal Normal hi def link sisu_bold Statement hi def link sisu_header PreProc hi def link sisu_header_content Normal hi def link sisu_sub_header_title Statement hi def link sisu_sub_header_creator Statement hi def link sisu_sub_header_date Statement hi def link sisu_sub_header_publisher Statement hi def link sisu_sub_header_rights Statement hi def link sisu_sub_header_classify Statement hi def link sisu_sub_header_identifier Statement hi def link sisu_sub_header_original Statement hi def link sisu_sub_header_links Statement hi def link sisu_sub_header_notes Statement hi def link sisu_sub_header_make Statement hi def link sisu_heading Title hi def link sisu_structure Operator hi def link sisu_contain Include hi def link sisu_mark_endnote Delimiter hi def link sisu_require NonText hi def link sisu_link NonText hi def link sisu_linked String hi def link sisu_fontface Delimiter hi def link sisu_strikeout DiffDelete hi def link sisu_content_alt Special hi def link sisu_sem_content SpecialKey hi def link sisu_sem_block Special hi def link sisu_sem_marker Visual "hi def link sisu_sem_marker Structure hi def link sisu_sem_marker_block MatchParen hi def link sisu_sem_ex_marker FoldColumn hi def link sisu_sem_ex_marker_block Folded hi def link sisu_sem_ex_content Comment "hi def link sisu_sem_ex_content SpecialKey hi def link sisu_sem_ex_block Comment hi def link sisu_index SpecialKey hi def link sisu_index_block Visual hi def link sisu_content_endnote Special hi def link sisu_control Delimiter hi def link sisu_within_index Delimiter hi def link sisu_within_index_ignore SpecialKey hi def link sisu_ocn Include hi def link sisu_number Number hi def link sisu_identifier Function hi def link sisu_underline Underlined hi def link sisu_markpara Include hi def link sisu_marktail Include hi def link sisu_mark Identifier hi def link sisu_break Structure hi def link sisu_html Type hi def link sisu_action Identifier hi def link sisu_comment Comment hi def link sisu_error_sem_marker Error hi def link sisu_error_wspace Error hi def link sisu_error Error let b:current_syntax = "sisu" let &cpo = s:cpo_save unlet s:cpo_save PK&]t"vim80/syntax/verilogams.vimnu[" Vim syntax file " Language: Verilog-AMS " Maintainer: S. Myles Prather " " Version 1.1 S. Myles Prather " Moved some keywords to the type category. " Added the metrix suffixes to the number matcher. " Version 1.2 Prasanna Tamhankar " Minor reserved keyword updates. " Last Update: Thursday September 15 15:36:03 CST 2005 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Set the local value of the 'iskeyword' option setlocal iskeyword=@,48-57,_,192-255 " Annex B.1 'All keywords' syn keyword verilogamsStatement above abs absdelay acos acosh ac_stim syn keyword verilogamsStatement always analog analysis and asin syn keyword verilogamsStatement asinh assign atan atan2 atanh syn keyword verilogamsStatement buf bufif0 bufif1 ceil cmos connectmodule syn keyword verilogamsStatement connectrules cos cosh cross ddt ddx deassign syn keyword verilogamsStatement defparam disable discipline syn keyword verilogamsStatement driver_update edge enddiscipline syn keyword verilogamsStatement endconnectrules endmodule endfunction endgenerate syn keyword verilogamsStatement endnature endparamset endprimitive endspecify syn keyword verilogamsStatement endtable endtask event exp final_step syn keyword verilogamsStatement flicker_noise floor flow force fork syn keyword verilogamsStatement function generate highz0 syn keyword verilogamsStatement highz1 hypot idt idtmod if ifnone inf initial syn keyword verilogamsStatement initial_step inout input join syn keyword verilogamsStatement laplace_nd laplace_np laplace_zd laplace_zp syn keyword verilogamsStatement large last_crossing limexp ln localparam log syn keyword verilogamsStatement macromodule max medium min module nand nature syn keyword verilogamsStatement negedge net_resolution nmos noise_table nor not syn keyword verilogamsStatement notif0 notif1 or output paramset pmos syn keyword verilogamsType parameter real integer electrical input output syn keyword verilogamsType inout reg tri tri0 tri1 triand trior trireg syn keyword verilogamsType string from exclude aliasparam ground genvar syn keyword verilogamsType branch time realtime syn keyword verilogamsStatement posedge potential pow primitive pull0 pull1 syn keyword verilogamsStatement pullup pulldown rcmos release syn keyword verilogamsStatement rnmos rpmos rtran rtranif0 rtranif1 syn keyword verilogamsStatement scalared sin sinh slew small specify specparam syn keyword verilogamsStatement sqrt strong0 strong1 supply0 supply1 syn keyword verilogamsStatement table tan tanh task timer tran tranif0 syn keyword verilogamsStatement tranif1 transition syn keyword verilogamsStatement vectored wait wand weak0 weak1 syn keyword verilogamsStatement white_noise wire wor wreal xnor xor zi_nd syn keyword verilogamsStatement zi_np zi_zd zi_zp syn keyword verilogamsRepeat forever repeat while for syn keyword verilogamsLabel begin end syn keyword verilogamsConditional if else case casex casez default endcase syn match verilogamsConstant ":inf"lc=1 syn match verilogamsConstant "-inf"lc=1 " Annex B.2 Discipline/nature syn keyword verilogamsStatement abstol access continuous ddt_nature discrete syn keyword verilogamsStatement domain idt_nature units " Annex B.3 Connect Rules syn keyword verilogamsStatement connect merged resolveto split syn match verilogamsOperator "[&|~>" syn match verilogamsConstant "\<[A-Z][A-Z0-9_]\+\>" syn match verilogamsNumber "\(\<\d\+\|\)'[bB]\s*[0-1_xXzZ?]\+\>" syn match verilogamsNumber "\(\<\d\+\|\)'[oO]\s*[0-7_xXzZ?]\+\>" syn match verilogamsNumber "\(\<\d\+\|\)'[dD]\s*[0-9_xXzZ?]\+\>" syn match verilogamsNumber "\(\<\d\+\|\)'[hH]\s*[0-9a-fA-F_xXzZ?]\+\>" syn match verilogamsNumber "\<[+-]\=[0-9_]\+\(\.[0-9_]*\|\)\(e[0-9_]*\|\)[TGMKkmunpfa]\=\>" syn region verilogamsString start=+"+ skip=+\\"+ end=+"+ contains=verilogamsEscape syn match verilogamsEscape +\\[nt"\\]+ contained syn match verilogamsEscape "\\\o\o\=\o\=" contained "Modify the following as needed. The trade-off is performance versus "functionality. syn sync lines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default highlighting. hi def link verilogamsCharacter Character hi def link verilogamsConditional Conditional hi def link verilogamsRepeat Repeat hi def link verilogamsString String hi def link verilogamsTodo Todo hi def link verilogamsComment Comment hi def link verilogamsConstant Constant hi def link verilogamsLabel Label hi def link verilogamsNumber Number hi def link verilogamsOperator Special hi def link verilogamsStatement Statement hi def link verilogamsGlobal Define hi def link verilogamsDirective SpecialComment hi def link verilogamsEscape Special hi def link verilogamsType Type hi def link verilogamsSystask Function let b:current_syntax = "verilogams" " vim: ts=8 PK&]PY..vim80/syntax/falcon.vimnu[" Vim syntax file " Language: Falcon " Maintainer: Steven Oliver " Website: http://github.com/steveno/vim-files/blob/master/syntax/falcon.vim " Credits: Thanks the ruby.vim authors, I borrowed a lot! " Thanks to the lisp authors for the rainbow code! " ------------------------------------------------------------------------------- " When wanted, highlight the trailing whitespace. if exists("c_space_errors") if !exists("c_no_trail_space_error") syn match falconSpaceError "\s\+$" endif if !exists("c_no_tab_space_error") syn match falconSpaceError " \+\t"me=e-1 endif endif " Symbols syn match falconSymbol "\(;\|,\|\.\)" syn match falconSymbolOther "\(#\|@\)" display " Operators syn match falconOperator "\(+\|-\|\*\|/\|=\|<\|>\|\*\*\|!=\|\~=\)" syn match falconOperator "\(<=\|>=\|=>\|\.\.\|<<\|>>\|\"\)" " Clusters syn region falconSymbol start="[]})\"':]\@\|::\)\@=\%(\s*(\)\@!" " Comments syn match falconCommentSkip contained "^\s*\*\($\|\s\+\)" syn region falconComment start="/\*" end="\*/" contains=@falconCommentGroup,falconSpaceError,falconTodo syn region falconCommentL start="//" end="$" keepend contains=@falconCommentGroup,falconSpaceError,falconTodo syn match falconSharpBang "\%^#!.*" display syn sync ccomment falconComment " Numbers syn match falconNumbers transparent "\<[+-]\=\d\|[+-]\=\.\d" contains=falconIntLiteral,falconFloatLiteral,falconHexadecimal,falconOctal syn match falconNumbersCom contained transparent "\<[+-]\=\d\|[+-]\=\.\d" contains=falconIntLiteral,falconFloatLiteral,falconHexadecimal,falconOctal syn match falconHexadecimal contained "\<0x\x\+\>" syn match falconOctal contained "\<0\o\+\>" syn match falconIntLiteral contained "[+-]\" syn match falconFloatLiteral contained "[+-]\=\d\+\.\d*" syn match falconFloatLiteral contained "[+-]\=\d*\.\d*" " Includes syn keyword falconInclude load import " Expression Substitution and Backslash Notation syn match falconStringEscape "\\\\\|\\[abefnrstv]\|\\\o\{1,3}\|\\x\x\{1,2}" contained display syn match falconStringEscape "\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)" contained display syn region falconSymbol start="[]})\"':]\@" skip="\\\\\|\\>" fold contains=falconDelimEscape syn region falconString matchgroup=falconStringDelimiter start="%[qw]\[" end="\]" skip="\\\\\|\\\]" fold contains=falconDelimEscape syn region falconString matchgroup=falconStringDelimiter start="%[qw](" end=")" skip="\\\\\|\\)" fold contains=falconDelimEscape syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]{" end="}" skip="\\\\\|\\}" fold contains=falconDelimEscape syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]<" end=">" skip="\\\\\|\\>" fold contains=falconDelimEscape syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]\[" end="\]" skip="\\\\\|\\\]" fold contains=falconDelimEscape syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s](" end=")" skip="\\\\\|\\)" fold contains=falconDelimEscape " Generalized Double Quoted String and Array of Strings and Shell Command Output syn region falconString matchgroup=falconStringDelimiter start="%\z([~`!@#$%^&*_\-+|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" contains=falconStringEscape fold syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" contains=falconStringEscape fold syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\={" end="}" skip="\\\\\|\\}" contains=falconStringEscape,falconDelimEscape fold syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\=<" end=">" skip="\\\\\|\\>" contains=falconStringEscape,falconDelimEscape fold syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\=\[" end="\]" skip="\\\\\|\\\]" contains=falconStringEscape,falconDelimEscape fold syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\=(" end=")" skip="\\\\\|\\)" contains=falconStringEscape,falconDelimEscape fold syn region falconString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@ " Last Change: 2005 Dec 03 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " The Slice keywords syn keyword sliceType bool byte double float int long short string void syn keyword sliceQualifier const extends idempotent implements local nonmutating out throws syn keyword sliceConstruct class enum exception dictionary interface module LocalObject Object sequence struct syn keyword sliceQualifier const extends idempotent implements local nonmutating out throws syn keyword sliceBoolean false true " Include directives syn region sliceIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match sliceIncluded display contained "<[^>]*>" syn match sliceInclude display "^\s*#\s*include\>\s*["<]" contains=sliceIncluded " Double-include guards syn region sliceGuard start="^#\(define\|ifndef\|endif\)" end="$" " Strings and characters syn region sliceString start=+"+ end=+"+ " Numbers (shamelessly ripped from c.vim, only slightly modified) "integer number, or floating point number without a dot and with "f". syn case ignore syn match sliceNumbers display transparent "\<\d\|\.\d" contains=sliceNumber,sliceFloat,sliceOctal syn match sliceNumber display contained "\d\+" "hex number syn match sliceNumber display contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>" " Flag the first zero of an octal number as something special syn match sliceOctal display contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>" contains=sliceOctalZero syn match sliceOctalZero display contained "\<0" syn match sliceFloat display contained "\d\+f" "floating point number, with dot, optional exponent syn match sliceFloat display contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=" "floating point number, starting with a dot, optional exponent syn match sliceFloat display contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>" "floating point number, without dot, with exponent syn match sliceFloat display contained "\d\+e[-+]\=\d\+[fl]\=\>" " flag an octal number with wrong digits syn case match " Comments syn region sliceComment start="/\*" end="\*/" syn match sliceComment "//.*" syn sync ccomment sliceComment " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link sliceComment Comment hi def link sliceConstruct Keyword hi def link sliceType Type hi def link sliceString String hi def link sliceIncluded String hi def link sliceQualifier Keyword hi def link sliceInclude Include hi def link sliceGuard PreProc hi def link sliceBoolean Boolean hi def link sliceFloat Number hi def link sliceNumber Number hi def link sliceOctal Number hi def link sliceOctalZero Special hi def link sliceNumberError Special let b:current_syntax = "slice" " vim: ts=8 PK&]dwvim80/syntax/syncolor.vimnu[" Vim syntax support file " Maintainer: Bram Moolenaar " Last Change: 2001 Sep 12 " This file sets up the default methods for highlighting. " It is loaded from "synload.vim" and from Vim for ":syntax reset". " Also used from init_highlight(). if !exists("syntax_cmd") || syntax_cmd == "on" " ":syntax on" works like in Vim 5.7: set colors but keep links command -nargs=* SynColor hi command -nargs=* SynLink hi link else if syntax_cmd == "enable" " ":syntax enable" keeps any existing colors command -nargs=* SynColor hi def command -nargs=* SynLink hi def link elseif syntax_cmd == "reset" " ":syntax reset" resets all colors to the default command -nargs=* SynColor hi command -nargs=* SynLink hi! link else " User defined syncolor file has already set the colors. finish endif endif " Many terminals can only use six different colors (plus black and white). " Therefore the number of colors used is kept low. It doesn't look nice with " too many colors anyway. " Careful with "cterm=bold", it changes the color to bright for some terminals. " There are two sets of defaults: for a dark and a light background. if &background == "dark" SynColor Comment term=bold cterm=NONE ctermfg=Cyan ctermbg=NONE gui=NONE guifg=#80a0ff guibg=NONE SynColor Constant term=underline cterm=NONE ctermfg=Magenta ctermbg=NONE gui=NONE guifg=#ffa0a0 guibg=NONE SynColor Special term=bold cterm=NONE ctermfg=LightRed ctermbg=NONE gui=NONE guifg=Orange guibg=NONE SynColor Identifier term=underline cterm=bold ctermfg=Cyan ctermbg=NONE gui=NONE guifg=#40ffff guibg=NONE SynColor Statement term=bold cterm=NONE ctermfg=Yellow ctermbg=NONE gui=bold guifg=#ffff60 guibg=NONE SynColor PreProc term=underline cterm=NONE ctermfg=LightBlue ctermbg=NONE gui=NONE guifg=#ff80ff guibg=NONE SynColor Type term=underline cterm=NONE ctermfg=LightGreen ctermbg=NONE gui=bold guifg=#60ff60 guibg=NONE SynColor Underlined term=underline cterm=underline ctermfg=LightBlue gui=underline guifg=#80a0ff SynColor Ignore term=NONE cterm=NONE ctermfg=black ctermbg=NONE gui=NONE guifg=bg guibg=NONE else SynColor Comment term=bold cterm=NONE ctermfg=DarkBlue ctermbg=NONE gui=NONE guifg=Blue guibg=NONE SynColor Constant term=underline cterm=NONE ctermfg=DarkRed ctermbg=NONE gui=NONE guifg=Magenta guibg=NONE SynColor Special term=bold cterm=NONE ctermfg=DarkMagenta ctermbg=NONE gui=NONE guifg=SlateBlue guibg=NONE SynColor Identifier term=underline cterm=NONE ctermfg=DarkCyan ctermbg=NONE gui=NONE guifg=DarkCyan guibg=NONE SynColor Statement term=bold cterm=NONE ctermfg=Brown ctermbg=NONE gui=bold guifg=Brown guibg=NONE SynColor PreProc term=underline cterm=NONE ctermfg=DarkMagenta ctermbg=NONE gui=NONE guifg=Purple guibg=NONE SynColor Type term=underline cterm=NONE ctermfg=DarkGreen ctermbg=NONE gui=bold guifg=SeaGreen guibg=NONE SynColor Underlined term=underline cterm=underline ctermfg=DarkMagenta gui=underline guifg=SlateBlue SynColor Ignore term=NONE cterm=NONE ctermfg=white ctermbg=NONE gui=NONE guifg=bg guibg=NONE endif SynColor Error term=reverse cterm=NONE ctermfg=White ctermbg=Red gui=NONE guifg=White guibg=Red SynColor Todo term=standout cterm=NONE ctermfg=Black ctermbg=Yellow gui=NONE guifg=Blue guibg=Yellow " Common groups that link to default highlighting. " You can specify other highlighting easily. SynLink String Constant SynLink Character Constant SynLink Number Constant SynLink Boolean Constant SynLink Float Number SynLink Function Identifier SynLink Conditional Statement SynLink Repeat Statement SynLink Label Statement SynLink Operator Statement SynLink Keyword Statement SynLink Exception Statement SynLink Include PreProc SynLink Define PreProc SynLink Macro PreProc SynLink PreCondit PreProc SynLink StorageClass Type SynLink Structure Type SynLink Typedef Type SynLink Tag Special SynLink SpecialChar Special SynLink Delimiter Special SynLink SpecialComment Special SynLink Debug Special delcommand SynColor delcommand SynLink PK&]5 / /vim80/syntax/smcl.vimnu[" smcl.vim -- Vim syntax file for smcl files. " Language: SMCL -- Stata Markup and Control Language " Maintainer: Jeff Pitblado " Last Change: 26apr2006 " Version: 1.1.2 " Log: " 20mar2003 updated the match definition for cmdab " 14apr2006 'syntax clear' only under version control " check for 'b:current_syntax', removed 'did_smcl_syntax_inits' " 26apr2006 changed 'stata_smcl' to 'smcl' " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syntax case match syn keyword smclCCLword current_date contained syn keyword smclCCLword current_time contained syn keyword smclCCLword rmsg_time contained syn keyword smclCCLword stata_version contained syn keyword smclCCLword version contained syn keyword smclCCLword born_date contained syn keyword smclCCLword flavor contained syn keyword smclCCLword SE contained syn keyword smclCCLword mode contained syn keyword smclCCLword console contained syn keyword smclCCLword os contained syn keyword smclCCLword osdtl contained syn keyword smclCCLword machine_type contained syn keyword smclCCLword byteorder contained syn keyword smclCCLword sysdir_stata contained syn keyword smclCCLword sysdir_updates contained syn keyword smclCCLword sysdir_base contained syn keyword smclCCLword sysdir_site contained syn keyword smclCCLword sysdir_plus contained syn keyword smclCCLword sysdir_personal contained syn keyword smclCCLword sysdir_oldplace contained syn keyword smclCCLword adopath contained syn keyword smclCCLword pwd contained syn keyword smclCCLword dirsep contained syn keyword smclCCLword max_N_theory contained syn keyword smclCCLword max_N_current contained syn keyword smclCCLword max_k_theory contained syn keyword smclCCLword max_k_current contained syn keyword smclCCLword max_width_theory contained syn keyword smclCCLword max_width_current contained syn keyword smclCCLword max_matsize contained syn keyword smclCCLword min_matsize contained syn keyword smclCCLword max_macrolen contained syn keyword smclCCLword macrolen contained syn keyword smclCCLword max_cmdlen contained syn keyword smclCCLword cmdlen contained syn keyword smclCCLword namelen contained syn keyword smclCCLword mindouble contained syn keyword smclCCLword maxdouble contained syn keyword smclCCLword epsdouble contained syn keyword smclCCLword minfloat contained syn keyword smclCCLword maxfloat contained syn keyword smclCCLword epsfloat contained syn keyword smclCCLword minlong contained syn keyword smclCCLword maxlong contained syn keyword smclCCLword minint contained syn keyword smclCCLword maxint contained syn keyword smclCCLword minbyte contained syn keyword smclCCLword maxbyte contained syn keyword smclCCLword maxstrvarlen contained syn keyword smclCCLword memory contained syn keyword smclCCLword maxvar contained syn keyword smclCCLword matsize contained syn keyword smclCCLword N contained syn keyword smclCCLword k contained syn keyword smclCCLword width contained syn keyword smclCCLword changed contained syn keyword smclCCLword filename contained syn keyword smclCCLword filedate contained syn keyword smclCCLword more contained syn keyword smclCCLword rmsg contained syn keyword smclCCLword dp contained syn keyword smclCCLword linesize contained syn keyword smclCCLword pagesize contained syn keyword smclCCLword logtype contained syn keyword smclCCLword linegap contained syn keyword smclCCLword scrollbufsize contained syn keyword smclCCLword varlabelpos contained syn keyword smclCCLword reventries contained syn keyword smclCCLword graphics contained syn keyword smclCCLword scheme contained syn keyword smclCCLword printcolor contained syn keyword smclCCLword adosize contained syn keyword smclCCLword maxdb contained syn keyword smclCCLword virtual contained syn keyword smclCCLword checksum contained syn keyword smclCCLword timeout1 contained syn keyword smclCCLword timeout2 contained syn keyword smclCCLword httpproxy contained syn keyword smclCCLword h_current contained syn keyword smclCCLword max_matsize contained syn keyword smclCCLword min_matsize contained syn keyword smclCCLword max_macrolen contained syn keyword smclCCLword macrolen contained syn keyword smclCCLword max_cmdlen contained syn keyword smclCCLword cmdlen contained syn keyword smclCCLword namelen contained syn keyword smclCCLword mindouble contained syn keyword smclCCLword maxdouble contained syn keyword smclCCLword epsdouble contained syn keyword smclCCLword minfloat contained syn keyword smclCCLword maxfloat contained syn keyword smclCCLword epsfloat contained syn keyword smclCCLword minlong contained syn keyword smclCCLword maxlong contained syn keyword smclCCLword minint contained syn keyword smclCCLword maxint contained syn keyword smclCCLword minbyte contained syn keyword smclCCLword maxbyte contained syn keyword smclCCLword maxstrvarlen contained syn keyword smclCCLword memory contained syn keyword smclCCLword maxvar contained syn keyword smclCCLword matsize contained syn keyword smclCCLword N contained syn keyword smclCCLword k contained syn keyword smclCCLword width contained syn keyword smclCCLword changed contained syn keyword smclCCLword filename contained syn keyword smclCCLword filedate contained syn keyword smclCCLword more contained syn keyword smclCCLword rmsg contained syn keyword smclCCLword dp contained syn keyword smclCCLword linesize contained syn keyword smclCCLword pagesize contained syn keyword smclCCLword logtype contained syn keyword smclCCLword linegap contained syn keyword smclCCLword scrollbufsize contained syn keyword smclCCLword varlabelpos contained syn keyword smclCCLword reventries contained syn keyword smclCCLword graphics contained syn keyword smclCCLword scheme contained syn keyword smclCCLword printcolor contained syn keyword smclCCLword adosize contained syn keyword smclCCLword maxdb contained syn keyword smclCCLword virtual contained syn keyword smclCCLword checksum contained syn keyword smclCCLword timeout1 contained syn keyword smclCCLword timeout2 contained syn keyword smclCCLword httpproxy contained syn keyword smclCCLword httpproxyhost contained syn keyword smclCCLword httpproxyport contained syn keyword smclCCLword httpproxyauth contained syn keyword smclCCLword httpproxyuser contained syn keyword smclCCLword httpproxypw contained syn keyword smclCCLword trace contained syn keyword smclCCLword tracedepth contained syn keyword smclCCLword tracesep contained syn keyword smclCCLword traceindent contained syn keyword smclCCLword traceexapnd contained syn keyword smclCCLword tracenumber contained syn keyword smclCCLword type contained syn keyword smclCCLword level contained syn keyword smclCCLword seed contained syn keyword smclCCLword searchdefault contained syn keyword smclCCLword pi contained syn keyword smclCCLword rc contained " Directive for the contant and current-value class syn region smclCCL start=/{ccl / end=/}/ oneline contains=smclCCLword " The order of the following syntax definitions is roughly that of the on-line " documentation for smcl in Stata, from within Stata see help smcl. " Format directives for line and paragraph modes syn match smclFormat /{smcl}/ syn match smclFormat /{sf\(\|:[^}]\+\)}/ syn match smclFormat /{it\(\|:[^}]\+\)}/ syn match smclFormat /{bf\(\|:[^}]\+\)}/ syn match smclFormat /{inp\(\|:[^}]\+\)}/ syn match smclFormat /{input\(\|:[^}]\+\)}/ syn match smclFormat /{err\(\|:[^}]\+\)}/ syn match smclFormat /{error\(\|:[^}]\+\)}/ syn match smclFormat /{res\(\|:[^}]\+\)}/ syn match smclFormat /{result\(\|:[^}]\+\)}/ syn match smclFormat /{txt\(\|:[^}]\+\)}/ syn match smclFormat /{text\(\|:[^}]\+\)}/ syn match smclFormat /{com\(\|:[^}]\+\)}/ syn match smclFormat /{cmd\(\|:[^}]\+\)}/ syn match smclFormat /{cmdab:[^:}]\+:[^:}()]*\(\|:\|:(\|:()\)}/ syn match smclFormat /{hi\(\|:[^}]\+\)}/ syn match smclFormat /{hilite\(\|:[^}]\+\)}/ syn match smclFormat /{ul \(on\|off\)}/ syn match smclFormat /{ul:[^}]\+}/ syn match smclFormat /{hline\(\| \d\+\| -\d\+\|:[^}]\+\)}/ syn match smclFormat /{dup \d\+:[^}]\+}/ syn match smclFormat /{c [^}]\+}/ syn match smclFormat /{char [^}]\+}/ syn match smclFormat /{reset}/ " Formatting directives for line mode syn match smclFormat /{title:[^}]\+}/ syn match smclFormat /{center:[^}]\+}/ syn match smclFormat /{centre:[^}]\+}/ syn match smclFormat /{center \d\+:[^}]\+}/ syn match smclFormat /{centre \d\+:[^}]\+}/ syn match smclFormat /{right:[^}]\+}/ syn match smclFormat /{lalign \d\+:[^}]\+}/ syn match smclFormat /{ralign \d\+:[^}]\+}/ syn match smclFormat /{\.\.\.}/ syn match smclFormat /{col \d\+}/ syn match smclFormat /{space \d\+}/ syn match smclFormat /{tab}/ " Formatting directives for paragraph mode syn match smclFormat /{bind:[^}]\+}/ syn match smclFormat /{break}/ syn match smclFormat /{p}/ syn match smclFormat /{p \d\+}/ syn match smclFormat /{p \d\+ \d\+}/ syn match smclFormat /{p \d\+ \d\+ \d\+}/ syn match smclFormat /{pstd}/ syn match smclFormat /{psee}/ syn match smclFormat /{phang\(\|2\|3\)}/ syn match smclFormat /{pmore\(\|2\|3\)}/ syn match smclFormat /{pin\(\|2\|3\)}/ syn match smclFormat /{p_end}/ syn match smclFormat /{opt \w\+\(\|:\w\+\)\(\|([^)}]*)\)}/ syn match smclFormat /{opth \w*\(\|:\w\+\)(\w*)}/ syn match smclFormat /{opth "\w\+\((\w\+:[^)}]\+)\)"}/ syn match smclFormat /{opth \w\+:\w\+(\w\+:[^)}]\+)}/ syn match smclFormat /{dlgtab\s*\(\|\d\+\|\d\+\s\+\d\+\):[^}]\+}/ syn match smclFormat /{p2colset\s\+\d\+\s\+\d\+\s\+\d\+\s\+\d\+}/ syn match smclFormat /{p2col\s\+:[^{}]*}.*{p_end}/ syn match smclFormat /{p2col\s\+:{[^{}]*}}.*{p_end}/ syn match smclFormat /{p2coldent\s*:[^{}]*}.*{p_end}/ syn match smclFormat /{p2coldent\s*:{[^{}]*}}.*{p_end}/ syn match smclFormat /{p2line\s*\(\|\d\+\s\+\d\+\)}/ syn match smclFormat /{p2colreset}/ syn match smclFormat /{synoptset\s\+\d\+\s\+\w\+}/ syn match smclFormat /{synopt\s*:[^{}]*}.*{p_end}/ syn match smclFormat /{synopt\s*:{[^{}]*}}.*{p_end}/ syn match smclFormat /{syntab\s*:[^{}]*}/ syn match smclFormat /{synopthdr}/ syn match smclFormat /{synoptline}/ " Link directive for line and paragraph modes syn match smclLink /{help [^}]\+}/ syn match smclLink /{helpb [^}]\+}/ syn match smclLink /{help_d:[^}]\+}/ syn match smclLink /{search [^}]\+}/ syn match smclLink /{search_d:[^}]\+}/ syn match smclLink /{browse [^}]\+}/ syn match smclLink /{view [^}]\+}/ syn match smclLink /{view_d:[^}]\+}/ syn match smclLink /{news:[^}]\+}/ syn match smclLink /{net [^}]\+}/ syn match smclLink /{net_d:[^}]\+}/ syn match smclLink /{netfrom_d:[^}]\+}/ syn match smclLink /{ado [^}]\+}/ syn match smclLink /{ado_d:[^}]\+}/ syn match smclLink /{update [^}]\+}/ syn match smclLink /{update_d:[^}]\+}/ syn match smclLink /{dialog [^}]\+}/ syn match smclLink /{back:[^}]\+}/ syn match smclLink /{clearmore:[^}]\+}/ syn match smclLink /{stata [^}]\+}/ syn match smclLink /{newvar\(\|:[^}]\+\)}/ syn match smclLink /{var\(\|:[^}]\+\)}/ syn match smclLink /{varname\(\|:[^}]\+\)}/ syn match smclLink /{vars\(\|:[^}]\+\)}/ syn match smclLink /{varlist\(\|:[^}]\+\)}/ syn match smclLink /{depvar\(\|:[^}]\+\)}/ syn match smclLink /{depvars\(\|:[^}]\+\)}/ syn match smclLink /{depvarlist\(\|:[^}]\+\)}/ syn match smclLink /{indepvars\(\|:[^}]\+\)}/ syn match smclLink /{dtype}/ syn match smclLink /{ifin}/ syn match smclLink /{weight}/ " Comment syn region smclComment start=/{\*/ end=/}/ oneline " Strings syn region smclString matchgroup=Nothing start=/"/ end=/"/ oneline syn region smclEString matchgroup=Nothing start=/`"/ end=/"'/ oneline contains=smclEString " assign highlight groups hi def link smclEString smclString hi def link smclCCLword Statement hi def link smclCCL Type hi def link smclFormat Statement hi def link smclLink Underlined hi def link smclComment Comment hi def link smclString String let b:current_syntax = "smcl" " vim: ts=8 PK&]ͅGGvim80/syntax/cfg.vimnu[" Vim syntax file " Language: Good old CFG files " Maintainer: Igor N. Prischepoff (igor@tyumbit.ru, pri_igor@mail.ru) " Last change: 2012 Aug 11 " quit when a syntax file was already loaded if exists ("b:current_syntax") finish endif " case off syn case ignore syn keyword CfgOnOff ON OFF YES NO TRUE FALSE contained syn match UncPath "\\\\\p*" contained "Dos Drive:\Path syn match CfgDirectory "[a-zA-Z]:\\\p*" contained "Parameters syn match CfgParams ".\{0}="me=e-1 contains=CfgComment "... and their values (don't want to highlight '=' sign) syn match CfgValues "=.*"hs=s+1 contains=CfgDirectory,UncPath,CfgComment,CfgString,CfgOnOff " Sections syn match CfgSection "\[.*\]" syn match CfgSection "{.*}" " String syn match CfgString "\".*\"" contained syn match CfgString "'.*'" contained " Comments (Everything before '#' or '//' or ';') syn match CfgComment "#.*" syn match CfgComment ";.*" syn match CfgComment "\/\/.*" " Define the default hightlighting. " Only when an item doesn't have highlighting yet hi def link CfgOnOff Label hi def link CfgComment Comment hi def link CfgSection Type hi def link CfgString String hi def link CfgParams Keyword hi def link CfgValues Constant hi def link CfgDirectory Directory hi def link UncPath Directory let b:current_syntax = "cfg" " vim:ts=8 PK&]ֲ&&vim80/syntax/cobol.vimnu[" Vim syntax file " Language: COBOL " Maintainer: Tim Pope " (formerly Davyd Ondrejko ) " (formerly Sitaram Chamarty and " James Mitchell ) " Last Change: 2015 Feb 13 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " MOST important - else most of the keywords wont work! setlocal isk=@,48-57,- syn case ignore syn cluster cobolStart contains=cobolAreaA,cobolAreaB,cobolComment,cobolCompiler syn cluster cobolAreaA contains=cobolParagraph,cobolSection,cobolDivision "syn cluster cobolAreaB contains= syn cluster cobolAreaAB contains=cobolLine syn cluster cobolLine contains=cobolReserved syn match cobolMarker "^\%( \{,5\}[^ ]\)\@=.\{,6}" nextgroup=@cobolStart syn match cobolSpace "^ \{6\}" nextgroup=@cobolStart syn match cobolAreaA " \{1,4\}" contained nextgroup=@cobolAreaA,@cobolAreaAB syn match cobolAreaB " \{5,\}\|- *" contained nextgroup=@cobolAreaB,@cobolAreaAB syn match cobolComment "[/*C].*$" contained syn match cobolCompiler "$.*$" contained syn match cobolLine ".*$" contained contains=cobolReserved,@cobolLine syn match cobolDivision "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+DIVISION\."he=e-1 contained contains=cobolDivisionName syn keyword cobolDivisionName contained IDENTIFICATION ENVIRONMENT DATA PROCEDURE syn match cobolSection "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+SECTION\."he=e-1 contained contains=cobolSectionName syn keyword cobolSectionName contained CONFIGURATION INPUT-OUTPUT FILE WORKING-STORAGE LOCAL-STORAGE LINKAGE syn match cobolParagraph "\a[A-Z0-9-]*[A-Z0-9]\.\|\d[A-Z0-9-]*[A-Z]\."he=e-1 contained contains=cobolParagraphName syn keyword cobolParagraphName contained PROGRAM-ID SOURCE-COMPUTER OBJECT-COMPUTER SPECIAL-NAMES FILE-CONTROL I-O-CONTROL "syn match cobolKeys "^\a\{1,6\}" contains=cobolReserved syn keyword cobolReserved contained ACCEPT ACCESS ADD ADDRESS ADVANCING AFTER ALPHABET ALPHABETIC syn keyword cobolReserved contained ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED ALS syn keyword cobolReserved contained ALTERNATE AND ANY ARE AREA AREAS ASCENDING ASSIGN AT AUTHOR BEFORE BINARY syn keyword cobolReserved contained BLANK BLOCK BOTTOM BY CANCEL CBLL CD CF CH CHARACTER CHARACTERS CLASS syn keyword cobolReserved contained CLOCK-UNITS CLOSE COBOL CODE CODE-SET COLLATING COLUMN COMMA COMMON syn keyword cobolReserved contained COMMUNICATIONS COMPUTATIONAL COMPUTE CONTENT CONTINUE syn keyword cobolReserved contained CONTROL CONVERTING CORR CORRESPONDING COUNT CURRENCY DATE DATE-COMPILED syn keyword cobolReserved contained DATE-WRITTEN DAY DAY-OF-WEEK DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE syn keyword cobolReserved contained DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING DECIMAL-POINT syn keyword cobolReserved contained DELARATIVES DELETE DELIMITED DELIMITER DEPENDING DESCENDING DESTINATION syn keyword cobolReserved contained DETAIL DISABLE DISPLAY DIVIDE DIVISION DOWN DUPLICATES DYNAMIC EGI ELSE EMI syn keyword cobolReserved contained ENABLE END-ADD END-COMPUTE END-DELETE END-DIVIDE END-EVALUATE END-IF syn keyword cobolReserved contained END-MULTIPLY END-OF-PAGE END-READ END-RECEIVE END-RETURN syn keyword cobolReserved contained END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT END-UNSTRING syn keyword cobolReserved contained END-WRITE EQUAL ERROR ESI EVALUATE EVERY EXCEPTION EXIT syn keyword cobolReserved contained EXTEND EXTERNAL FALSE FD FILLER FINAL FIRST FOOTING FOR FROM syn keyword cobolReserved contained GENERATE GIVING GLOBAL GREATER GROUP HEADING HIGH-VALUE HIGH-VALUES I-O syn keyword cobolReserved contained IN INDEX INDEXED INDICATE INITIAL INITIALIZE syn keyword cobolReserved contained INITIATE INPUT INSPECT INSTALLATION INTO IS JUST syn keyword cobolReserved contained JUSTIFIED KEY LABEL LAST LEADING LEFT LENGTH LOCK MEMORY syn keyword cobolReserved contained MERGE MESSAGE MODE MODULES MOVE MULTIPLE MULTIPLY NATIVE NEGATIVE NEXT NO NOT syn keyword cobolReserved contained NUMBER NUMERIC NUMERIC-EDITED OCCURS OF OFF OMITTED ON OPEN syn keyword cobolReserved contained OPTIONAL OR ORDER ORGANIZATION OTHER OUTPUT OVERFLOW PACKED-DECIMAL PADDING syn keyword cobolReserved contained PAGE PAGE-COUNTER PERFORM PF PH PIC PICTURE PLUS POINTER POSITION POSITIVE syn keyword cobolReserved contained PRINTING PROCEDURES PROCEDD PROGRAM PURGE QUEUE QUOTES syn keyword cobolReserved contained RANDOM RD READ RECEIVE RECORD RECORDS REDEFINES REEL REFERENCE REFERENCES syn keyword cobolReserved contained RELATIVE RELEASE REMAINDER REMOVAL REPLACE REPLACING REPORT REPORTING syn keyword cobolReserved contained REPORTS RERUN RESERVE RESET RETURN RETURNING REVERSED REWIND REWRITE RF RH syn keyword cobolReserved contained RIGHT ROUNDED RUN SAME SD SEARCH SECTION SECURITY SEGMENT SEGMENT-LIMITED syn keyword cobolReserved contained SELECT SEND SENTENCE SEPARATE SEQUENCE SEQUENTIAL SET SIGN SIZE SORT syn keyword cobolReserved contained SORT-MERGE SOURCE STANDARD syn keyword cobolReserved contained STANDARD-1 STANDARD-2 START STATUS STOP STRING SUB-QUEUE-1 SUB-QUEUE-2 syn keyword cobolReserved contained SUB-QUEUE-3 SUBTRACT SUM SUPPRESS SYMBOLIC SYNC SYNCHRONIZED TABLE TALLYING syn keyword cobolReserved contained TAPE TERMINAL TERMINATE TEST TEXT THAN THEN THROUGH THRU TIME TIMES TO TOP syn keyword cobolReserved contained TRAILING TRUE TYPE UNIT UNSTRING UNTIL UP UPON USAGE USE USING VALUE VALUES syn keyword cobolReserved contained VARYING WHEN WITH WORDS WRITE syn match cobolReserved contained "\" syn match cobolReserved contained "\<\(IF\|INVALID\|END\|EOP\)\>" syn match cobolReserved contained "\" syn cluster cobolLine add=cobolConstant,cobolNumber,cobolPic syn keyword cobolConstant SPACE SPACES NULL ZERO ZEROES ZEROS LOW-VALUE LOW-VALUES syn match cobolNumber "\<-\=\d*\.\=\d\+\>" contained syn match cobolPic "\" contained syn match cobolPic "\<$*\.\=9\+\>" contained syn match cobolPic "\" contained syn match cobolPic "\" contained syn match cobolPic "\<9\+V\>" contained syn match cobolPic "\<-\+[Z9]\+\>" contained syn match cobolTodo "todo" contained containedin=cobolComment " For MicroFocus or other inline comments, include this line. " syn region cobolComment start="*>" end="$" contains=cobolTodo,cobolMarker syn match cobolBadLine "[^ D\*$/-].*" contained " If comment mark somehow gets into column past Column 7. syn match cobolBadLine "\s\+\*.*" contained syn cluster cobolStart add=cobolBadLine syn keyword cobolGoTo GO GOTO syn keyword cobolCopy COPY " cobolBAD: things that are BAD NEWS! syn keyword cobolBAD ALTER ENTER RENAMES syn cluster cobolLine add=cobolGoTo,cobolCopy,cobolBAD,cobolWatch,cobolEXECs " cobolWatch: things that are important when trying to understand a program syn keyword cobolWatch OCCURS DEPENDING VARYING BINARY COMP REDEFINES syn keyword cobolWatch REPLACING RUN syn match cobolWatch "COMP-[123456XN]" syn keyword cobolEXECs EXEC END-EXEC syn cluster cobolAreaA add=cobolDeclA syn cluster cobolAreaAB add=cobolDecl syn match cobolDeclA "\(0\=1\|77\|78\) " contained nextgroup=cobolLine syn match cobolDecl "[1-4]\d " contained nextgroup=cobolLine syn match cobolDecl "0\=[2-9] " contained nextgroup=cobolLine syn match cobolDecl "66 " contained nextgroup=cobolLine syn match cobolWatch "88 " contained nextgroup=cobolLine "syn match cobolBadID "\k\+-\($\|[^-A-Z0-9]\)" contained syn cluster cobolLine add=cobolCALLs,cobolString,cobolCondFlow syn keyword cobolCALLs CALL END-CALL CANCEL GOBACK PERFORM END-PERFORM INVOKE syn match cobolCALLs "EXIT \+PROGRAM" syn match cobolExtras /\ " Last Change: 2007 Dec 16 if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'pdf' endif syn include @pdfXML syntax/xml.vim syn case match syn cluster pdfObjects contains=pdfBoolean,pdfConstant,pdfNumber,pdfFloat,pdfName,pdfHexString,pdfString,pdfArray,pdfHash,pdfReference,pdfComment syn keyword pdfBoolean true false contained syn keyword pdfConstant null contained syn match pdfNumber "[+-]\=\<\d\+\>" syn match pdfFloat "[+-]\=\<\%(\d\+\.\|\d*\.\d\+\)\>" contained syn match pdfNameError "#\X\|#\x\X\|#00" contained containedin=pdfName syn match pdfSpecialChar "#\x\x" contained containedin=pdfName syn match pdfName "/[^[:space:]\[\](){}<>/]*" contained syn match pdfHexError "[^[:space:][:xdigit:]<>]" contained "syn match pdfHexString "<\s*\x[^<>]*\x\s*>" contained contains=pdfHexError "syn match pdfHexString "<\s*\x\=\s*>" contained syn region pdfHexString matchgroup=pdfDelimiter start="<<\@!" end=">" contained contains=pdfHexError syn match pdfStringError "\\." contained containedin=pdfString syn match pdfSpecialChar "\\\%(\o\{1,3\}\|[nrtbf()\\]\)" contained containedin=pdfString syn region pdfString matchgroup=pdfDelimiter start="\\\@>" contains=@pdfObjects contained syn match pdfReference "\<\d\+\s\+\d\+\s\+R\>" "syn keyword pdfOperator R contained containedin=pdfReference syn region pdfObject matchgroup=pdfType start="\" end="\" contains=@pdfObjects syn region pdfObject matchgroup=pdfType start="\ " Last Change: So 12 Feb 2012 15:15:03 CET " Filenames: *.lout,*.lt " URL: http://www.cvjb.de/comp/vim/lout.vim " $Id: lout.vim,v 1.4 2012/02/12 15:16:17 bruessow Exp $ " " Lout: Basser Lout document formatting system. " Many Thanks to... " " 2012-02-12: " Thilo Six send a patch for cpoptions. " See the discussion at http://thread.gmane.org/gmane.editors.vim.devel/32151 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save=&cpo set cpo&vim " Lout is case sensitive syn case match " Synchronization, I know it is a huge number, but normal texts can be " _very_ long ;-) syn sync lines=1000 " Characters allowed in keywords " I don't know if 128-255 are allowed in ANS-FORHT setlocal iskeyword=@,48-57,.,@-@,_,192-255 " Some special keywords syn keyword loutTodo contained TODO lout Lout LOUT syn keyword loutDefine def macro " Some big structures syn keyword loutKeyword @Begin @End @Figure @Tab syn keyword loutKeyword @Book @Doc @Document @Report syn keyword loutKeyword @Introduction @Abstract @Appendix syn keyword loutKeyword @Chapter @Section @BeginSections @EndSections " All kind of Lout keywords syn match loutFunction '\<@[^ \t{}]\+\>' " Braces -- Don`t edit these lines! syn match loutMBraces '[{}]' syn match loutIBraces '[{}]' syn match loutBBrace '[{}]' syn match loutBIBraces '[{}]' syn match loutHeads '[{}]' " Unmatched braces. syn match loutBraceError '}' " End of multi-line definitions, like @Document, @Report and @Book. syn match loutEOmlDef '^//$' " Grouping of parameters and objects. syn region loutObject transparent matchgroup=Delimiter start='{' matchgroup=Delimiter end='}' contains=ALLBUT,loutBraceError " The NULL object has a special meaning syn keyword loutNULL {} " Comments syn region loutComment start='\#' end='$' contains=loutTodo " Double quotes syn region loutSpecial start=+"+ skip=+\\\\\|\\"+ end=+"+ " ISO-LATIN-1 characters created with @Char, or Adobe symbols " created with @Sym syn match loutSymbols '@\(\(Char\)\|\(Sym\)\)\s\+[A-Za-z]\+' " Include files syn match loutInclude '@IncludeGraphic\s\+\k\+' syn region loutInclude start='@\(\(SysInclude\)\|\(IncludeGraphic\)\|\(Include\)\)\s*{' end='}' " Tags syn match loutTag '@\(\(Tag\)\|\(PageMark\)\|\(PageOf\)\|\(NumberOf\)\)\s\+\k\+' syn region loutTag start='@Tag\s*{' end='}' " Equations syn match loutMath '@Eq\s\+\k\+' syn region loutMath matchgroup=loutMBraces start='@Eq\s*{' matchgroup=loutMBraces end='}' contains=ALLBUT,loutBraceError " " Fonts syn match loutItalic '@I\s\+\k\+' syn region loutItalic matchgroup=loutIBraces start='@I\s*{' matchgroup=loutIBraces end='}' contains=ALLBUT,loutBraceError syn match loutBold '@B\s\+\k\+' syn region loutBold matchgroup=loutBBraces start='@B\s*{' matchgroup=loutBBraces end='}' contains=ALLBUT,loutBraceError syn match loutBoldItalic '@BI\s\+\k\+' syn region loutBoldItalic matchgroup=loutBIBraces start='@BI\s*{' matchgroup=loutBIBraces end='}' contains=ALLBUT,loutBraceError syn region loutHeadings matchgroup=loutHeads start='@\(\(Title\)\|\(Caption\)\)\s*{' matchgroup=loutHeads end='}' contains=ALLBUT,loutBraceError " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overrriden later. hi def link loutTodo Todo hi def link loutDefine Define hi def link loutEOmlDef Define hi def link loutFunction Function hi def link loutBraceError Error hi def link loutNULL Special hi def link loutComment Comment hi def link loutSpecial Special hi def link loutSymbols Character hi def link loutInclude Include hi def link loutKeyword Keyword hi def link loutTag Tag hi def link loutMath Number hi def link loutMBraces loutMath hi loutItalic term=italic cterm=italic gui=italic hi def link loutIBraces loutItalic hi loutBold term=bold cterm=bold gui=bold hi def link loutBBraces loutBold hi loutBoldItalic term=bold,italic cterm=bold,italic gui=bold,italic hi def link loutBIBraces loutBoldItalic hi loutHeadings term=bold cterm=bold guifg=indianred hi def link loutHeads loutHeadings let b:current_syntax = "lout" let &cpo=s:cpo_save unlet s:cpo_save " vim:ts=8:sw=4:nocindent:smartindent: PK&]ivim80/syntax/dockerfile.vimnu[" dockerfile.vim - Syntax highlighting for Dockerfiles " Maintainer: Honza Pokorny " Version: 0.6 " Last Change: 2016 Aug 9 " License: BSD if exists("b:current_syntax") finish endif let b:current_syntax = "dockerfile" syntax case ignore syntax match dockerfileKeyword /\v^\s*(ONBUILD\s+)?(ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)\s/ syntax region dockerfileString start=/\v"/ skip=/\v\\./ end=/\v"/ syntax match dockerfileComment "\v^\s*#.*$" hi def link dockerfileString String hi def link dockerfileKeyword Keyword hi def link dockerfileComment Comment PK&]){vim80/syntax/mp.vimnu[" Vim syntax file " Language: MetaPost " Maintainer: Nicola Vitacolonna " Former Maintainers: Andreas Scherer " Last Change: 2016 Oct 14 if exists("b:current_syntax") finish endif let s:cpo_sav = &cpo set cpo&vim if exists("g:plain_mf_macros") let s:plain_mf_macros = g:plain_mf_macros endif if exists("g:plain_mf_modes") let s:plain_mf_modes = g:plain_mf_modes endif if exists("g:other_mf_macros") let s:other_mf_macros = g:other_mf_macros endif let g:plain_mf_macros = 0 " plain.mf has no special meaning for MetaPost let g:plain_mf_modes = 0 " No METAFONT modes let g:other_mf_macros = 0 " cmbase.mf, logo.mf, ... neither " Read the METAFONT syntax to start with runtime! syntax/mf.vim unlet b:current_syntax " Necessary for syn include below " Restore the value of existing global variables if exists("s:plain_mf_macros") let g:plain_mf_macros = s:plain_mf_macros else unlet g:plain_mf_macros endif if exists("s:plain_mf_modes") let g:plain_mf_modes = s:plain_mf_modes else unlet g:plain_mf_modes endif if exists("s:other_mf_macros") let g:other_mf_macros = s:other_mf_macros else unlet g:other_mf_macros endif " Use TeX highlighting inside verbatimtex/btex... etex syn include @MPTeX syntax/tex.vim unlet b:current_syntax " These are defined as keywords rather than using matchgroup " in order to make them available to syntaxcomplete. syn keyword mpTeXdelim btex etex verbatimtex contained syn region mpTeXinsert \ start=/\\|\/rs=e+1 \ end=/\/re=s-1 keepend \ contains=@MPTeX,mpTeXdelim " iskeyword must be set after the syn include above, because tex.vim sets `syn " iskeyword`. Note that keywords do not contain numbers (numbers are " subscripts) syntax iskeyword @,_ " MetaPost primitives not found in METAFONT syn keyword mpBoolExp bounded clipped filled stroked textual arclength syn keyword mpNumExp arctime blackpart bluepart colormodel cyanpart syn keyword mpNumExp fontsize greenpart greypart magentapart redpart syn keyword mpPairExp yellowpart llcorner lrcorner ulcorner urcorner " envelope is seemingly undocumented, but it exists since mpost 1.003. " The syntax is: envelope of . For example, " path p; " p := envelope pensquare of (up--left); " (Thanks to Daniel H. Luecking for the example!) syn keyword mpPathExp envelope pathpart syn keyword mpPenExp penpart syn keyword mpPicExp dashpart glyph infont syn keyword mpStringExp fontpart readfrom textpart syn keyword mpType cmykcolor color rgbcolor " Other MetaPost primitives listed in the manual syn keyword mpPrimitive mpxbreak within " Internal quantities not found in METAFONT " (Table 6 in MetaPost: A User's Manual) syn keyword mpInternal defaultcolormodel hour minute linecap linejoin syn keyword mpInternal miterlimit mpprocset mpversion numberprecision syn keyword mpInternal numbersystem outputfilename outputformat syn keyword mpInternal outputformatoptions outputtemplate prologues syn keyword mpInternal restoreclipcolor tracinglostchars troffmode syn keyword mpInternal truecorners " List of commands not found in METAFONT (from MetaPost: A User's Manual) syn keyword mpCommand clip closefrom dashed filenametemplate fontmapfile syn keyword mpCommand fontmapline setbounds withcmykcolor withcolor syn keyword mpCommand withgreyscale withoutcolor withpostscript syn keyword mpCommand withprescript withrgbcolor write " METAFONT internal variables not found in MetaPost syn keyword notDefined autorounding chardx chardy fillin granularity syn keyword notDefined proofing smoothing tracingedges tracingpens syn keyword notDefined turningcheck xoffset yoffset " Suffix defined only in METAFONT: syn keyword notDefined nodot " Other not implemented primitives (see MetaPost: A User's Manual, §C.1) syn keyword notDefined cull display openwindow numspecial totalweight syn keyword notDefined withweight " Keywords defined by plain.mp if get(g:, "plain_mp_macros", 1) || get(g:, "mp_metafun_macros", 0) syn keyword mpDef beginfig clear_pen_memory clearit clearpen clearpen syn keyword mpDef clearxy colorpart cutdraw downto draw drawarrow syn keyword mpDef drawdblarrow drawdot drawoptions endfig erase syn keyword mpDef exitunless fill filldraw flex gobble hide interact syn keyword mpDef label loggingall makelabel numtok penstroke pickup syn keyword mpDef range reflectedabout rotatedaround shipit syn keyword mpDef stop superellipse takepower tracingall tracingnone syn keyword mpDef undraw undrawdot unfill unfilldraw upto syn match mpDef "???" syn keyword mpVardef arrowhead bbox bot buildcycle byte ceiling center syn keyword mpVardef counterclockwise decr dir direction directionpoint syn keyword mpVardef dotlabel dotlabels image incr interpath inverse syn keyword mpVardef labels lft magstep max min penlabels penpos round syn keyword mpVardef rt savepen solve tensepath thelabel top unitvector syn keyword mpVardef whatever z syn keyword mpPrimaryDef div dotprod gobbled mod syn keyword mpSecondaryDef intersectionpoint syn keyword mpTertiaryDef cutafter cutbefore softjoin thru syn keyword mpNewInternal ahangle ahlength bboxmargin beveled butt defaultpen syn keyword mpNewInternal defaultscale dotlabeldiam eps epsilon infinity syn keyword mpNewInternal join_radius labeloffset mitered pen_bot pen_lft syn keyword mpNewInternal pen_rt pen_top rounded squared tolerance " Predefined constants syn keyword mpConstant EOF background base_name base_version black syn keyword mpConstant blankpicture blue ditto down evenly fullcircle syn keyword mpConstant green halfcircle identity left origin penrazor syn keyword mpConstant penspeck pensquare quartercircle red right syn keyword mpConstant unitsquare up white withdots " Other predefined variables syn keyword mpVariable currentpen currentpen_path currentpicture cuttings syn keyword mpVariable defaultfont extra_beginfig extra_endfig syn match mpVariable /\<\%(laboff\|labxf\|labyf\)\>/ syn match mpVariable /\<\%(laboff\|labxf\|labyf\)\.\%(lft\|rt\|bot\|top\|ulft\|urt\|llft\|lrt\)\>/ " let statements: syn keyword mpnumExp abs syn keyword mpDef rotatedabout syn keyword mpCommand bye relax " on and off are not technically keywords, but it is nice to highlight them " inside dashpattern(). syn keyword mpOnOff off on contained syn keyword mpDash dashpattern contained syn region mpDashPattern \ start="dashpattern\s*" \ end=")"he=e-1 \ contains=mfNumeric,mfLength,mpOnOff,mpDash endif " Keywords defined by mfplain.mp if get(g:, "mfplain_mp_macros", 0) syn keyword mpDef beginchar capsule_def change_width syn keyword mpDef define_blacker_pixels define_corrected_pixels syn keyword mpDef define_good_x_pixels define_good_y_pixels syn keyword mpDef define_horizontal_corrected_pixels define_pixels syn keyword mpDef define_whole_blacker_pixels define_whole_pixels syn keyword mpDef define_whole_vertical_blacker_pixels syn keyword mpDef define_whole_vertical_pixels endchar syn keyword mpDef font_coding_scheme font_extra_space font_identifier syn keyword mpDef font_normal_shrink font_normal_space syn keyword mpDef font_normal_stretch font_quad font_size font_slant syn keyword mpDef font_x_height italcorr labelfont lowres_fix makebox syn keyword mpDef makegrid maketicks mode_def mode_setup proofrule syn keyword mpDef smode syn keyword mpVardef hround proofrulethickness vround syn keyword mpNewInternal blacker o_correction syn keyword mpVariable extra_beginchar extra_endchar extra_setup rulepen " plus some no-ops, also from mfplain.mp syn keyword mpDef cull cullit gfcorners imagerules nodisplays syn keyword mpDef notransforms openit proofoffset screenchars syn keyword mpDef screenrule screenstrokes showit syn keyword mpVardef grayfont slantfont titlefont syn keyword mpVariable currenttransform syn keyword mpConstant unitpixel " These are not listed in the MetaPost manual, and some are ignored by " MetaPost, but are nonetheless defined in mfplain.mp syn keyword mpDef killtext syn match mpVardef "\" syn keyword mpVariable aspect_ratio localfont mag mode mode_name syn keyword mpVariable proofcolor syn keyword mpConstant lowres proof smoke syn keyword mpNewInternal autorounding bp_per_pixel granularity syn keyword mpNewInternal number_of_modes proofing smoothing turningcheck endif " Keywords defined by all base macro packages: " - (r)boxes.mp " - format.mp " - graph.mp " - marith.mp " - sarith.mp " - string.mp " - TEX.mp if get(g:, "other_mp_macros", 1) " boxes and rboxes syn keyword mpDef boxjoin drawboxed drawboxes drawunboxed syn keyword mpNewInternal circmargin defaultdx defaultdy rbox_radius syn keyword mpVardef boxit bpath circleit fixpos fixsize generic_declare syn keyword mpVardef generic_redeclare generisize pic rboxit str_prefix " format syn keyword mpVardef Mformat format init_numbers roundd syn keyword mpVariable Fe_base Fe_plus syn keyword mpConstant Ten_to " graph syn keyword mpDef Gfor Gxyscale OUT auto begingraph endgraph gdata syn keyword mpDef gdraw gdrawarrow gdrawdblarrow gfill plot syn keyword mpVardef augment autogrid frame gdotlabel glabel grid itick syn keyword mpVardef otick syn keyword mpVardef Mreadpath setcoords setrange syn keyword mpNewInternal Gmarks Gminlog Gpaths linear log syn keyword mpVariable Autoform Gemarks Glmarks Gumarks syn keyword mpConstant Gtemplate syn match mpVariable /Gmargin\.\%(low\|high\)/ " marith syn keyword mpVardef Mabs Meform Mexp Mexp_str Mlog Mlog_Str Mlog_str syn keyword mpPrimaryDef Mdiv Mmul syn keyword mpSecondaryDef Madd Msub syn keyword mpTertiaryDef Mleq syn keyword mpNewInternal Mten Mzero " sarith syn keyword mpVardef Sabs Scvnum syn keyword mpPrimaryDef Sdiv Smul syn keyword mpSecondaryDef Sadd Ssub syn keyword mpTertiaryDef Sleq Sneq " string syn keyword mpVardef cspan isdigit loptok " TEX syn keyword mpVardef TEX TEXPOST TEXPRE endif " Up to date as of 23-Sep-2016. if get(b:, 'mp_metafun_macros', get(g:, 'mp_metafun_macros', 0)) " Highlight TeX keywords (for use in ConTeXt documents) syn match mpTeXKeyword '\\[a-zA-Z@]\+' " These keywords have been added manually. syn keyword mpPrimitive runscript " The following MetaFun keywords have been extracted automatically from " ConTeXt source code. They include all "public" macros (where a macro is " considered public if and only if it does not start with _, mfun_, mlib_, or " do_, and it does not end with _), all "public" unsaved variables, and all " `let` statements. " mp-abck.mpiv syn keyword mpDef abck_grid_line anchor_box box_found boxfilloptions syn keyword mpDef boxgridoptions boxlineoptions draw_multi_pars syn keyword mpDef draw_multi_side draw_multi_side_path freeze_box syn keyword mpDef initialize_box initialize_box_pos syn keyword mpDef multi_side_draw_options show_multi_kind syn keyword mpDef show_multi_pars syn keyword mpVardef abck_baseline_grid abck_draw_path abck_graphic_grid syn keyword mpVariable boxdashtype boxfilloffset boxfilltype syn keyword mpVariable boxgriddirection boxgriddistance boxgridshift syn keyword mpVariable boxgridtype boxgridwidth boxlineoffset syn keyword mpVariable boxlineradius boxlinetype boxlinewidth multikind syn keyword mpConstant context_abck " mp-apos.mpiv syn keyword mpDef anch_sidebars_draw boxfilloptions boxlineoptions syn keyword mpDef connect_positions syn keyword mpConstant context_apos " mp-asnc.mpiv syn keyword mpDef FlushSyncTasks ProcessSyncTask ResetSyncTasks syn keyword mpDef SetSyncColor SetSyncThreshold SyncTask syn keyword mpVardef PrepareSyncTasks SyncBox TheSyncColor syn keyword mpVardef TheSyncThreshold syn keyword mpVariable CurrentSyncClass NOfSyncPaths SyncColor syn keyword mpVariable SyncLeftOffset SyncPaths SyncTasks SyncThreshold syn keyword mpVariable SyncThresholdMethod SyncWidth syn keyword mpConstant context_asnc " mp-back.mpiv syn keyword mpDef some_double_back some_hash syn keyword mpVariable back_nillcolor syn keyword mpConstant context_back " mp-bare.mpiv syn keyword mpVardef colordecimals rawtextext syn keyword mpPrimaryDef infont syn keyword mpConstant context_bare " mp-base.mpiv " This is essentially plain.mp with only a few keywords added syn keyword mpNumExp graypart syn keyword mpType graycolor greycolor syn keyword mpConstant cyan magenta yellow " mp-butt.mpiv syn keyword mpDef predefinedbutton some_button syn keyword mpConstant context_butt " mp-char.mpiv syn keyword mpDef flow_begin_chart flow_begin_sub_chart syn keyword mpDef flow_chart_draw_comment flow_chart_draw_exit syn keyword mpDef flow_chart_draw_label flow_chart_draw_text syn keyword mpDef flow_clip_chart flow_collapse_points syn keyword mpDef flow_connect_bottom_bottom flow_connect_bottom_left syn keyword mpDef flow_connect_bottom_right flow_connect_bottom_top syn keyword mpDef flow_connect_left_bottom flow_connect_left_left syn keyword mpDef flow_connect_left_right flow_connect_left_top syn keyword mpDef flow_connect_right_bottom flow_connect_right_left syn keyword mpDef flow_connect_right_right flow_connect_right_top syn keyword mpDef flow_connect_top_bottom flow_connect_top_left syn keyword mpDef flow_connect_top_right flow_connect_top_top syn keyword mpDef flow_draw_connection flow_draw_connection_point syn keyword mpDef flow_draw_midpoint flow_draw_shape syn keyword mpDef flow_draw_test_area flow_draw_test_shape syn keyword mpDef flow_draw_test_shapes flow_end_chart syn keyword mpDef flow_end_sub_chart flow_flush_connections syn keyword mpDef flow_flush_picture flow_flush_pictures syn keyword mpDef flow_flush_shape flow_flush_shapes syn keyword mpDef flow_initialize_grid flow_new_chart flow_new_shape syn keyword mpDef flow_scaled_to_grid flow_show_connection syn keyword mpDef flow_show_connections flow_show_shapes syn keyword mpDef flow_xy_offset flow_y_pos syn keyword mpVardef flow_connection_path flow_down_on_grid syn keyword mpVardef flow_down_to_grid flow_i_point flow_left_on_grid syn keyword mpVardef flow_left_to_grid flow_offset syn keyword mpVardef flow_points_initialized flow_right_on_grid syn keyword mpVardef flow_right_to_grid flow_smooth_connection syn keyword mpVardef flow_trim_points flow_trimmed flow_up_on_grid syn keyword mpVardef flow_up_to_grid flow_valid_connection syn keyword mpVardef flow_x_on_grid flow_xy_bottom flow_xy_left syn keyword mpVardef flow_xy_on_grid flow_xy_right flow_xy_top syn keyword mpVardef flow_y_on_grid syn keyword mpVariable flow_arrowtip flow_chart_background_color syn keyword mpVariable flow_chart_offset flow_comment_offset syn keyword mpVariable flow_connection_arrow_size syn keyword mpVariable flow_connection_dash_size syn keyword mpVariable flow_connection_line_color syn keyword mpVariable flow_connection_line_width syn keyword mpVariable flow_connection_smooth_size flow_connections syn keyword mpVariable flow_cpath flow_dash_pattern flow_dashline syn keyword mpVariable flow_exit_offset flow_forcevalid flow_grid_height syn keyword mpVariable flow_grid_width flow_label_offset flow_max_x syn keyword mpVariable flow_max_y flow_peepshape flow_reverse_connection syn keyword mpVariable flow_reverse_y flow_shape_action flow_shape_archive syn keyword mpVariable flow_shape_decision flow_shape_down syn keyword mpVariable flow_shape_fill_color flow_shape_height syn keyword mpVariable flow_shape_left flow_shape_line_color syn keyword mpVariable flow_shape_line_width flow_shape_loop syn keyword mpVariable flow_shape_multidocument flow_shape_node syn keyword mpVariable flow_shape_procedure flow_shape_product syn keyword mpVariable flow_shape_right flow_shape_singledocument syn keyword mpVariable flow_shape_subprocedure flow_shape_up syn keyword mpVariable flow_shape_wait flow_shape_width syn keyword mpVariable flow_show_all_points flow_show_con_points syn keyword mpVariable flow_show_mid_points flow_showcrossing flow_smooth syn keyword mpVariable flow_touchshape flow_xypoint flow_zfactor syn keyword mpConstant context_flow " mp-chem.mpiv syn keyword mpDef chem_init_all chem_reset chem_start_structure syn keyword mpDef chem_transformed syn keyword mpVardef chem_ad chem_adj chem_align chem_arrow chem_au syn keyword mpVardef chem_b chem_bb chem_bd chem_bw chem_c chem_cc syn keyword mpVardef chem_ccd chem_cd chem_crz chem_cz chem_dash chem_db syn keyword mpVardef chem_diff chem_dir chem_do chem_dr chem_draw syn keyword mpVardef chem_drawarrow chem_eb chem_ed chem_ep chem_er syn keyword mpVardef chem_es chem_et chem_fill chem_hb chem_init_some syn keyword mpVardef chem_label chem_ldb chem_ldd chem_line chem_lr syn keyword mpVardef chem_lrb chem_lrbd chem_lrd chem_lrh chem_lrn syn keyword mpVardef chem_lrt chem_lrz chem_lsr chem_lsub chem_mark syn keyword mpVardef chem_marked chem_mid chem_mids chem_midz chem_mir syn keyword mpVardef chem_mov chem_move chem_number chem_oe chem_off syn keyword mpVardef chem_pb chem_pe chem_r chem_r_fragment chem_rb syn keyword mpVardef chem_rbd chem_rd chem_rdb chem_rdd chem_restore syn keyword mpVardef chem_rh chem_rm chem_rn chem_rot chem_rr chem_rrb syn keyword mpVardef chem_rrbd chem_rrd chem_rrh chem_rrn chem_rrt syn keyword mpVardef chem_rrz chem_rsr chem_rsub chem_rt chem_rz chem_s syn keyword mpVardef chem_save chem_sb chem_sd chem_set chem_sr chem_ss syn keyword mpVardef chem_start_component chem_stop_component syn keyword mpVardef chem_stop_structure chem_sub chem_symbol chem_tb syn keyword mpVardef chem_text chem_z chem_zln chem_zlt chem_zn chem_zrn syn keyword mpVardef chem_zrt chem_zt syn keyword mpVariable chem_mark_pair chem_stack_mirror chem_stack_origin syn keyword mpVariable chem_stack_p chem_stack_previous syn keyword mpVariable chem_stack_rotation chem_trace_boundingbox syn keyword mpVariable chem_trace_nesting chem_trace_text syn keyword mpConstant context_chem " mp-core.mpiv syn keyword mpDef FlushSyncTasks ProcessSyncTask syn keyword mpDef RegisterLocalTextArea RegisterPlainTextArea syn keyword mpDef RegisterRegionTextArea RegisterTextArea syn keyword mpDef ResetLocalTextArea ResetSyncTasks ResetTextAreas syn keyword mpDef SaveTextAreas SetSyncColor SetSyncThreshold syn keyword mpDef SyncTask anchor_box box_found boxfilloptions syn keyword mpDef boxgridoptions boxlineoptions collapse_multi_pars syn keyword mpDef draw_box draw_multi_pars draw_par freeze_box syn keyword mpDef initialize_area initialize_area_par initialize_box syn keyword mpDef initialize_box_pos initialize_par syn keyword mpDef prepare_multi_pars relocate_multipars save_multipar syn keyword mpDef set_par_line_height show_multi_pars show_par syn keyword mpDef simplify_multi_pars sort_multi_pars syn keyword mpVardef InsideSavedTextArea InsideSomeSavedTextArea syn keyword mpVardef InsideSomeTextArea InsideTextArea PrepareSyncTasks syn keyword mpVardef SyncBox TextAreaH TextAreaW TextAreaWH TextAreaX syn keyword mpVardef TextAreaXY TextAreaY TheSyncColor TheSyncThreshold syn keyword mpVardef baseline_grid graphic_grid multi_par_at_top syn keyword mpVariable CurrentSyncClass NOfSavedTextAreas syn keyword mpVariable NOfSavedTextColumns NOfSyncPaths NOfTextAreas syn keyword mpVariable NOfTextColumns PlainTextArea RegionTextArea syn keyword mpVariable SavedTextColumns SyncColor SyncLeftOffset SyncPaths syn keyword mpVariable SyncTasks SyncThreshold SyncThresholdMethod syn keyword mpVariable SyncWidth TextAreas TextColumns syn keyword mpVariable auto_multi_par_hsize boxdashtype boxfilloffset syn keyword mpVariable boxfilltype boxgriddirection boxgriddistance syn keyword mpVariable boxgridshift boxgridtype boxgridwidth boxlineradius syn keyword mpVariable boxlinetype boxlinewidth check_multi_par_chain syn keyword mpVariable compensate_multi_par_topskip syn keyword mpVariable enable_multi_par_fallback force_multi_par_chain syn keyword mpVariable ignore_multi_par_page last_multi_par_shift lefthang syn keyword mpVariable local_multi_par_area multi_column_first_page_hack syn keyword mpVariable multi_par_pages multiloc multilocs multipar syn keyword mpVariable multipars multiref multirefs nofmultipars syn keyword mpVariable obey_multi_par_hang obey_multi_par_more syn keyword mpVariable one_piece_multi_par par_hang_after par_hang_indent syn keyword mpVariable par_indent par_left_skip par_line_height syn keyword mpVariable par_right_skip par_start_pos par_stop_pos syn keyword mpVariable par_strut_depth par_strut_height ppos righthang syn keyword mpVariable snap_multi_par_tops somehang span_multi_column_pars syn keyword mpVariable use_multi_par_region syn keyword mpConstant context_core syn keyword LET anchor_area anchor_par draw_area " mp-cows.mpiv syn keyword mpConstant context_cows cow " mp-crop.mpiv syn keyword mpDef page_marks_add_color page_marks_add_lines syn keyword mpDef page_marks_add_marking page_marks_add_number syn keyword mpVardef crop_color crop_gray crop_marks_cmyk syn keyword mpVardef crop_marks_cmykrgb crop_marks_gray crop_marks_lines syn keyword mpVariable crop_colors more page syn keyword mpConstant context_crop " mp-figs.mpiv syn keyword mpDef naturalfigure registerfigure syn keyword mpVardef figuredimensions figureheight figuresize syn keyword mpVardef figurewidth syn keyword mpConstant context_figs " mp-fobg.mpiv syn keyword mpDef DrawFoFrame syn keyword mpVardef equalpaths syn keyword mpPrimaryDef inset outset syn keyword mpVariable FoBackground FoBackgroundColor FoFrame FoLineColor syn keyword mpVariable FoLineStyle FoLineWidth FoSplit syn keyword mpConstant FoAll FoBottom FoDash FoDotted FoDouble FoGroove syn keyword mpConstant FoHidden FoInset FoLeft FoMedium FoNoColor FoNone syn keyword mpConstant FoOutset FoRidge FoRight FoSolid FoThick FoThin syn keyword mpConstant FoTop context_fobg " mp-form.mpiv syn keyword mpConstant context_form " mp-func.mpiv syn keyword mpDef constructedfunction constructedpairs syn keyword mpDef constructedpath curvedfunction curvedpairs syn keyword mpDef curvedpath function pathconnectors straightfunction syn keyword mpDef straightpairs straightpath syn keyword mpConstant context_func " mp-grap.mpiv syn keyword mpDef Gfor OUT auto begingraph circles crosses diamonds syn keyword mpDef downtriangles endgraph gdata gdraw gdrawarrow syn keyword mpDef gdrawdblarrow gfill graph_addto syn keyword mpDef graph_addto_currentpicture graph_comma syn keyword mpDef graph_coordinate_multiplication graph_draw syn keyword mpDef graph_draw_label graph_errorbar_text graph_fill syn keyword mpDef graph_generate_exponents syn keyword mpDef graph_generate_label_position syn keyword mpDef graph_generate_numbers graph_label_location syn keyword mpDef graph_scan_mark graph_scan_marks graph_setbounds syn keyword mpDef graph_suffix graph_tick_label syn keyword mpDef graph_with_pen_and_color graph_withlist syn keyword mpDef graph_xyscale lefttriangles makefunctionpath plot syn keyword mpDef plotsymbol points rainbow righttriangles smoothpath syn keyword mpDef squares stars uptriangles witherrorbars syn keyword mpVardef addtopath augment autogrid constant_fit syn keyword mpVardef constant_function det escaped_format exp syn keyword mpVardef exponential_fit exponential_function format syn keyword mpVardef formatted frame functionpath gaussian_fit syn keyword mpVardef gaussian_function gdotlabel glabel graph_Feform syn keyword mpVardef graph_Meform graph_arrowhead_extent graph_bounds syn keyword mpVardef graph_clear_bounds syn keyword mpVardef graph_convert_user_path_to_internal graph_cspan syn keyword mpVardef graph_draw_arrowhead graph_error graph_errorbars syn keyword mpVardef graph_exp graph_factor_and_exponent_to_string syn keyword mpVardef graph_gridline_picture graph_is_null syn keyword mpVardef graph_label_convert_user_to_internal graph_loptok syn keyword mpVardef graph_match_exponents graph_mlog syn keyword mpVardef graph_modified_exponent_ypart graph_pair_adjust syn keyword mpVardef graph_picture_conversion graph_post_draw syn keyword mpVardef graph_read_line graph_readpath graph_remap syn keyword mpVardef graph_scan_path graph_select_exponent_mark syn keyword mpVardef graph_select_mark graph_set_bounds syn keyword mpVardef graph_set_default_bounds graph_shapesize syn keyword mpVardef graph_stash_label graph_tick_mark_spacing syn keyword mpVardef graph_unknown_pair_bbox grid isdigit itick syn keyword mpVardef linear_fit linear_function ln logten lorentzian_fit syn keyword mpVardef lorentzian_function otick polynomial_fit syn keyword mpVardef polynomial_function power_law_fit syn keyword mpVardef power_law_function powten setcoords setrange syn keyword mpVardef sortpath strfmt tick varfmt syn keyword mpNewInternal Mzero doubleinfinity graph_log_minimum syn keyword mpNewInternal graph_minimum_number_of_marks largestmantissa syn keyword mpNewInternal linear lntwo log mlogten singleinfinity syn keyword mpVariable Autoform determinant fit_chi_squared syn keyword mpVariable graph_errorbar_picture graph_exp_marks syn keyword mpVariable graph_frame_pair_a graph_frame_pair_b syn keyword mpVariable graph_lin_marks graph_log_marks graph_modified_bias syn keyword mpVariable graph_modified_higher graph_modified_lower syn keyword mpVariable graph_shape r_s resistance_color resistance_name syn keyword mpConstant context_grap " mp-grid.mpiv syn keyword mpDef hlingrid hloggrid vlingrid vloggrid syn keyword mpVardef hlinlabel hlintext hlogtext linlin linlinpath syn keyword mpVardef linlog linlogpath loglin loglinpath loglog syn keyword mpVardef loglogpath processpath vlinlabel vlintext vlogtext syn keyword mpVariable fmt_initialize fmt_pictures fmt_precision syn keyword mpVariable fmt_separator fmt_zerocheck grid_eps syn keyword mpConstant context_grid " mp-grph.mpiv syn keyword mpDef beginfig begingraphictextfig data_mpo_file syn keyword mpDef data_mpy_file doloadfigure draw endfig syn keyword mpDef endgraphictextfig fill fixedplace graphictext syn keyword mpDef loadfigure new_graphictext normalwithshade number syn keyword mpDef old_graphictext outlinefill protectgraphicmacros syn keyword mpDef resetfig reversefill withdrawcolor withfillcolor syn keyword mpDef withshade syn keyword mpVariable currentgraphictext figureshift syn keyword mpConstant context_grph " mp-idea.mpiv syn keyword mpVardef bcomponent ccomponent gcomponent mcomponent syn keyword mpVardef rcomponent somecolor ycomponent " mp-luas.mpiv syn keyword mpDef luacall message syn keyword mpVardef MP lua lualist syn keyword mpConstant context_luas " mp-mlib.mpiv syn keyword mpDef autoalign bitmapimage circular_shade cmyk comment syn keyword mpDef defineshade eofill eofillup externalfigure figure syn keyword mpDef fillup label linear_shade multitonecolor namedcolor syn keyword mpDef nofill onlayer passarrayvariable passvariable syn keyword mpDef plain_label register resolvedcolor scantokens syn keyword mpDef set_circular_vector set_linear_vector shaded syn keyword mpDef spotcolor startpassingvariable stoppassingvariable syn keyword mpDef thelabel transparent[] usemetafunlabels syn keyword mpDef useplainlabels withcircularshade withlinearshade syn keyword mpDef withmask withproperties withshadecenter syn keyword mpDef withshadecolors withshadedirection withshadedomain syn keyword mpDef withshadefactor withshadefraction withshadeorigin syn keyword mpDef withshaderadius withshadestep withshadetransform syn keyword mpDef withshadevector withtransparency syn keyword mpVardef anchored checkbounds checkedbounds syn keyword mpVardef define_circular_shade define_linear_shade dotlabel syn keyword mpVardef escaped_format fmttext fontsize format formatted syn keyword mpVardef installlabel onetimefmttext onetimetextext syn keyword mpVardef outlinetext plain_thelabel properties rawfmttext syn keyword mpVardef rawtexbox rawtextext rule strfmt strut texbox syn keyword mpVardef textext thefmttext thelabel thetexbox thetextext syn keyword mpVardef tostring transparency_alternative_to_number syn keyword mpVardef validtexbox varfmt verbatim syn keyword mpPrimaryDef asgroup infont normalinfont shadedinto syn keyword mpPrimaryDef shownshadecenter shownshadedirection syn keyword mpPrimaryDef shownshadeorigin shownshadevector withshade syn keyword mpPrimaryDef withshademethod syn keyword mpNewInternal colorburntransparent colordodgetransparent syn keyword mpNewInternal colortransparent darkentransparent syn keyword mpNewInternal differencetransparent exclusiontransparent syn keyword mpNewInternal hardlighttransparent huetransparent syn keyword mpNewInternal lightentransparent luminositytransparent syn keyword mpNewInternal multiplytransparent normaltransparent syn keyword mpNewInternal overlaytransparent saturationtransparent syn keyword mpNewInternal screentransparent shadefactor softlighttransparent syn keyword mpNewInternal textextoffset syn keyword mpType property transparency syn keyword mpVariable currentoutlinetext shadeddown shadedleft syn keyword mpVariable shadedright shadedup shadeoffset trace_shades syn keyword mpConstant context_mlib " mp-page.mpiv syn keyword mpDef BoundCoverAreas BoundPageAreas Enlarged FakeRule syn keyword mpDef FakeWord LoadPageState OverlayBox RuleColor syn keyword mpDef SetAreaVariables SetPageArea SetPageBackPage syn keyword mpDef SetPageCoverPage SetPageField SetPageFrontPage syn keyword mpDef SetPageHsize SetPageHstep SetPageLocation syn keyword mpDef SetPagePage SetPageSpine SetPageVariables syn keyword mpDef SetPageVsize SetPageVstep StartCover StartPage syn keyword mpDef StopCover StopPage SwapPageState innerenlarged syn keyword mpDef llEnlarged lrEnlarged outerenlarged ulEnlarged syn keyword mpDef urEnlarged syn keyword mpVardef BackPageHeight BackPageWidth BackSpace BaseLineSkip syn keyword mpVardef BodyFontSize BottomDistance BottomHeight syn keyword mpVardef BottomSpace CoverHeight CoverWidth CurrentColumn syn keyword mpVardef CurrentHeight CurrentWidth CutSpace EmWidth syn keyword mpVardef ExHeight FooterDistance FooterHeight syn keyword mpVardef FrontPageHeight FrontPageWidth HSize HeaderDistance syn keyword mpVardef HeaderHeight InPageBody InnerEdgeDistance syn keyword mpVardef InnerEdgeWidth InnerMarginDistance InnerMarginWidth syn keyword mpVardef InnerSpaceWidth LastPageNumber LayoutColumnDistance syn keyword mpVardef LayoutColumnWidth LayoutColumns LeftEdgeDistance syn keyword mpVardef LeftEdgeWidth LeftMarginDistance LeftMarginWidth syn keyword mpVardef LineHeight MakeupHeight MakeupWidth NOfColumns syn keyword mpVardef NOfPages OnOddPage OnRightPage OuterEdgeDistance syn keyword mpVardef OuterEdgeWidth OuterMarginDistance OuterMarginWidth syn keyword mpVardef OuterSpaceWidth OverlayDepth OverlayHeight syn keyword mpVardef OverlayLineWidth OverlayOffset OverlayWidth syn keyword mpVardef PageDepth PageFraction PageNumber PageOffset syn keyword mpVardef PaperBleed PaperHeight PaperWidth PrintPaperHeight syn keyword mpVardef PrintPaperWidth RealPageNumber RightEdgeDistance syn keyword mpVardef RightEdgeWidth RightMarginDistance RightMarginWidth syn keyword mpVardef SpineHeight SpineWidth StrutDepth StrutHeight syn keyword mpVardef TextHeight TextWidth TopDistance TopHeight TopSkip syn keyword mpVardef TopSpace VSize defaultcolormodel syn keyword mpVariable Area BackPage CoverPage CurrentLayout Field syn keyword mpVariable FrontPage HorPos Hsize Hstep Location Page syn keyword mpVariable PageStateAvailable RuleDepth RuleDirection syn keyword mpVariable RuleFactor RuleH RuleHeight RuleOffset RuleOption syn keyword mpVariable RuleThickness RuleV RuleWidth Spine VerPos Vsize syn keyword mpVariable Vstep syn keyword mpConstant context_page " mp-shap.mpiv syn keyword mpDef drawline drawshape some_shape syn keyword mpDef start_predefined_shape_definition syn keyword mpDef stop_predefined_shape_definition syn keyword mpVardef drawpredefinedline drawpredefinedshape syn keyword mpVardef some_shape_path syn keyword mpVariable predefined_shapes predefined_shapes_xradius syn keyword mpVariable predefined_shapes_xxradius syn keyword mpVariable predefined_shapes_yradius syn keyword mpVariable predefined_shapes_yyradius syn keyword mpConstant context_shap " mp-step.mpiv syn keyword mpDef initialize_step_variables midbottomboundary syn keyword mpDef midtopboundary step_begin_cell step_begin_chart syn keyword mpDef step_cell_ali step_cell_bot step_cell_top syn keyword mpDef step_cells step_end_cell step_end_chart syn keyword mpDef step_text_bot step_text_mid step_text_top syn keyword mpDef step_texts syn keyword mpVariable cell_distance_x cell_distance_y cell_fill_color syn keyword mpVariable cell_line_color cell_line_width cell_offset syn keyword mpVariable chart_align chart_category chart_vertical syn keyword mpVariable line_distance line_height line_line_color syn keyword mpVariable line_line_width line_offset nofcells syn keyword mpVariable text_distance_set text_fill_color text_line_color syn keyword mpVariable text_line_width text_offset syn keyword mpConstant context_cell " mp-symb.mpiv syn keyword mpDef finishglyph prepareglyph syn keyword mpConstant lefttriangle midbar onebar righttriangle sidebar syn keyword mpConstant sublefttriangle subrighttriangle twobar " mp-text.mpiv syn keyword mpDef build_parshape syn keyword mpVardef found_point syn keyword mpVariable trace_parshape syn keyword mpConstant context_text " mp-tool.mpiv syn keyword mpCommand dump syn keyword mpDef addbackground b_color beginglyph break centerarrow syn keyword mpDef clearxy condition data_mpd_file detaileddraw syn keyword mpDef detailpaths dowithpath draw drawboundary syn keyword mpDef drawboundingbox drawcontrollines drawcontrolpoints syn keyword mpDef drawfill draworigin drawpath drawpathonly syn keyword mpDef drawpathwithpoints drawpoint drawpointlabels syn keyword mpDef drawpoints drawticks drawwholepath drawxticks syn keyword mpDef drawyticks endglyph fill finishsavingdata g_color syn keyword mpDef inner_boundingbox job_name leftarrow loadmodule syn keyword mpDef midarrowhead naturalizepaths newboolean newcolor syn keyword mpDef newnumeric newpair newpath newpicture newstring syn keyword mpDef newtransform normalcolors normaldraw normalfill syn keyword mpDef normalwithcolor outer_boundingbox pop_boundingbox syn keyword mpDef popboundingbox popcurrentpicture push_boundingbox syn keyword mpDef pushboundingbox pushcurrentpicture r_color readfile syn keyword mpDef recolor redraw refill register_dirty_chars syn keyword mpDef remapcolor remapcolors remappedcolor reprocess syn keyword mpDef resetarrows resetcolormap resetdrawoptions syn keyword mpDef resolvedcolor restroke retext rightarrow savedata syn keyword mpDef saveoptions scale_currentpicture set_ahlength syn keyword mpDef set_grid showgrid startplaincompatibility syn keyword mpDef startsavingdata stopplaincompatibility syn keyword mpDef stopsavingdata stripe_path_a stripe_path_n undashed syn keyword mpDef undrawfill untext visualizeddraw visualizedfill syn keyword mpDef visualizepaths withcolor withgray syn keyword mpDef xscale_currentpicture xshifted syn keyword mpDef xyscale_currentpicture yscale_currentpicture syn keyword mpDef yshifted syn keyword mpVardef acos acosh anglebetween area arrowhead syn keyword mpVardef arrowheadonpath arrowpath asciistring asin asinh syn keyword mpVardef atan basiccolors bbheight bbwidth bcomponent syn keyword mpVardef blackcolor bottomboundary boundingbox c_phantom syn keyword mpVardef ccomponent center cleanstring colorcircle syn keyword mpVardef colordecimals colordecimalslist colorlike colorpart syn keyword mpVardef colortype complementary complemented copylist cos syn keyword mpVardef cosh cot cotd curved ddddecimal dddecimal ddecimal syn keyword mpVardef decorated drawarrowpath epsed exp freedotlabel syn keyword mpVardef freelabel gcomponent getunstringed grayed greyed syn keyword mpVardef hsvtorgb infinite innerboundingbox interpolated inv syn keyword mpVardef invcos inverted invsin invtan laddered leftboundary syn keyword mpVardef leftpath leftrightpath listsize listtocurves syn keyword mpVardef listtolines ln log mcomponent new_on_grid syn keyword mpVardef outerboundingbox paired pen_size penpoint phantom syn keyword mpVardef pointarrow pow punked rangepath rcomponent syn keyword mpVardef redecorated repathed rightboundary rightpath syn keyword mpVardef rotation roundedsquare set_inner_boundingbox syn keyword mpVardef set_outer_boundingbox setunstringed shapedlist syn keyword mpVardef simplified sin sinh sortlist sqr straightpath tan syn keyword mpVardef tand tanh tensecircle thefreelabel topboundary syn keyword mpVardef tripled undecorated unitvector unspiked unstringed syn keyword mpVardef whitecolor ycomponent syn keyword mpPrimaryDef along blownup bottomenlarged cornered crossed syn keyword mpPrimaryDef enlarged enlonged leftenlarged llenlarged llmoved syn keyword mpPrimaryDef lrenlarged lrmoved on paralleled randomized syn keyword mpPrimaryDef randomizedcontrols randomshifted rightenlarged syn keyword mpPrimaryDef shortened sized smoothed snapped softened squeezed syn keyword mpPrimaryDef stretched superellipsed topenlarged ulenlarged syn keyword mpPrimaryDef ulmoved uncolored urenlarged urmoved xsized syn keyword mpPrimaryDef xstretched xyscaled xysized ysized ystretched zmod syn keyword mpSecondaryDef anglestriped intersection_point numberstriped syn keyword mpSecondaryDef peepholed syn keyword mpTertiaryDef cutends syn keyword mpNewInternal ahdimple ahvariant anglelength anglemethod syn keyword mpNewInternal angleoffset charscale cmykcolormodel graycolormodel syn keyword mpNewInternal greycolormodel maxdimensions metapostversion syn keyword mpNewInternal nocolormodel rgbcolormodel striped_normal_inner syn keyword mpNewInternal striped_normal_outer striped_reverse_inner syn keyword mpNewInternal striped_reverse_outer syn keyword mpType grayscale greyscale quadruplet triplet syn keyword mpVariable ahfactor collapse_data color_map drawoptionsfactor syn keyword mpVariable freedotlabelsize freelabeloffset grid grid_full syn keyword mpVariable grid_h grid_left grid_nx grid_ny grid_w grid_x syn keyword mpVariable grid_y intersection_found originlength syn keyword mpVariable plain_compatibility_data pointlabelfont syn keyword mpVariable pointlabelscale refillbackground savingdata syn keyword mpVariable savingdatadone swappointlabels ticklength tickstep syn keyword mpConstant CRLF DQUOTE PERCENT SPACE bcircle context_tool crlf syn keyword mpConstant darkblue darkcyan darkgray darkgreen darkmagenta syn keyword mpConstant darkred darkyellow downtriangle dquote freesquare syn keyword mpConstant fulldiamond fullsquare fulltriangle lcircle syn keyword mpConstant lefttriangle lightgray llcircle lltriangle lrcircle syn keyword mpConstant lrtriangle mpversion nocolor noline oddly syn keyword mpConstant originpath percent rcircle righttriangle space syn keyword mpConstant tcircle triangle ulcircle ultriangle unitcircle syn keyword mpConstant unitdiamond unittriangle uptriangle urcircle syn keyword mpConstant urtriangle endif " MetaFun macros " Define the default highlighting hi def link mpTeXdelim mpPrimitive hi def link mpBoolExp mfBoolExp hi def link mpNumExp mfNumExp hi def link mpPairExp mfPairExp hi def link mpPathExp mfPathExp hi def link mpPenExp mfPenExp hi def link mpPicExp mfPicExp hi def link mpStringExp mfStringExp hi def link mpInternal mfInternal hi def link mpCommand mfCommand hi def link mpType mfType hi def link mpPrimitive mfPrimitive hi def link mpDef mfDef hi def link mpVardef mpDef hi def link mpPrimaryDef mpDef hi def link mpSecondaryDef mpDef hi def link mpTertiaryDef mpDef hi def link mpNewInternal mpInternal hi def link mpVariable mfVariable hi def link mpConstant mfConstant hi def link mpOnOff mpPrimitive hi def link mpDash mpPrimitive hi def link mpTeXKeyword Identifier let b:current_syntax = "mp" let &cpo = s:cpo_sav unlet! s:cpo_sav " vim:sw=2 PK&] wdvim80/syntax/snnspat.vimnu[" Vim syntax file " Language: SNNS pattern file " Maintainer: Davide Alberani " Last Change: 2012 Feb 03 by Thilo Six " Version: 0.2 " URL: http://digilander.iol.it/alberanid/vim/syntax/snnspat.vim " " SNNS http://www-ra.informatik.uni-tuebingen.de/SNNS/ " is a simulator for neural networks. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " anything that isn't part of the header, a comment or a number " is wrong syn match snnspatError ".*" " hoping that matches any kind of notation... syn match snnspatAccepted "\([-+]\=\(\d\+\.\|\.\)\=\d\+\([Ee][-+]\=\d\+\)\=\)" syn match snnspatAccepted "\s" syn match snnspatBrac "\[\s*\d\+\(\s\|\d\)*\]" contains=snnspatNumbers " the accepted fields in the header syn match snnspatNoHeader "No\. of patterns\s*:\s*" contained syn match snnspatNoHeader "No\. of input units\s*:\s*" contained syn match snnspatNoHeader "No\. of output units\s*:\s*" contained syn match snnspatNoHeader "No\. of variable input dimensions\s*:\s*" contained syn match snnspatNoHeader "No\. of variable output dimensions\s*:\s*" contained syn match snnspatNoHeader "Maximum input dimensions\s*:\s*" contained syn match snnspatNoHeader "Maximum output dimensions\s*:\s*" contained syn match snnspatGen "generated at.*" contained contains=snnspatNumbers syn match snnspatGen "SNNS pattern definition file [Vv]\d\.\d" contained contains=snnspatNumbers " the header, what is not an accepted field, is an error syn region snnspatHeader start="^SNNS" end="^\s*[-+\.]\=[0-9#]"me=e-2 contains=snnspatNoHeader,snnspatNumbers,snnspatGen,snnspatBrac " numbers inside the header syn match snnspatNumbers "\d" contained syn match snnspatComment "#.*$" contains=snnspatTodo syn keyword snnspatTodo TODO XXX FIXME contained hi def link snnspatGen Statement hi def link snnspatHeader Error hi def link snnspatNoHeader Define hi def link snnspatNumbers Number hi def link snnspatComment Comment hi def link snnspatError Error hi def link snnspatTodo Todo hi def link snnspatAccepted NONE hi def link snnspatBrac NONE let b:current_syntax = "snnspat" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 sw=2 PK&]*vim80/syntax/occam.vimnu[" Vim syntax file " Language: occam " Copyright: Fred Barnes , Mario Schweigler " Maintainer: Mario Schweigler " Last Change: 24 May 2003 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif "{{{ Settings " Set shift width for indent setlocal shiftwidth=2 " Set the tab key size to two spaces setlocal softtabstop=2 " Let tab keys always be expanded to spaces setlocal expandtab " Dots are valid in occam identifiers setlocal iskeyword+=. "}}} syn case match syn keyword occamType BYTE BOOL INT INT16 INT32 INT64 REAL32 REAL64 ANY syn keyword occamType CHAN DATA OF TYPE TIMER INITIAL VAL PORT MOBILE PLACED syn keyword occamType PROCESSOR PACKED RECORD PROTOCOL SHARED ROUND TRUNC syn keyword occamStructure SEQ PAR IF ALT PRI FORKING PLACE AT syn keyword occamKeyword PROC IS TRUE FALSE SIZE RECURSIVE REC syn keyword occamKeyword RETYPES RESHAPES STEP FROM FOR RESCHEDULE STOP SKIP FORK syn keyword occamKeyword FUNCTION VALOF RESULT ELSE CLONE CLAIM syn keyword occamBoolean TRUE FALSE syn keyword occamRepeat WHILE syn keyword occamConditional CASE syn keyword occamConstant MOSTNEG MOSTPOS syn match occamBrackets /\[\|\]/ syn match occamParantheses /(\|)/ syn keyword occamOperator AFTER TIMES MINUS PLUS INITIAL REM AND OR XOR NOT syn keyword occamOperator BITAND BITOR BITNOT BYTESIN OFFSETOF syn match occamOperator /::\|:=\|?\|!/ syn match occamOperator /<\|>\|+\|-\|\*\|\/\|\\\|=\|\~/ syn match occamOperator /@\|\$\$\|%\|&&\|<&\|&>\|<\]\|\[>\|\^/ syn match occamSpecialChar /\M**\|*'\|*"\|*#\(\[0-9A-F\]\+\)/ contained syn match occamChar /\M\L\='\[^*\]'/ syn match occamChar /L'[^']*'/ contains=occamSpecialChar syn case ignore syn match occamTodo /\:\=/ contained syn match occamNote /\:\=/ contained syn case match syn keyword occamNote NOT contained syn match occamComment /--.*/ contains=occamCommentTitle,occamTodo,occamNote syn match occamCommentTitle /--\s*\u\a*\(\s\+\u\a*\)*:/hs=s+2 contained contains=occamTodo,occamNote syn match occamCommentTitle /--\s*KROC-LIBRARY\(\.so\|\.a\)\=\s*$/hs=s+2 contained syn match occamCommentTitle /--\s*\(KROC-OPTIONS:\|RUN-PARAMETERS:\)/hs=s+2 contained syn match occamIdentifier /\<[A-Z.][A-Z.0-9]*\>/ syn match occamFunction /\<[A-Za-z.][A-Za-z0-9.]*\>/ contained syn match occamPPIdentifier /##.\{-}\>/ syn region occamString start=/"/ skip=/\M*"/ end=/"/ contains=occamSpecialChar syn region occamCharString start=/'/ end=/'/ contains=occamSpecialChar syn match occamNumber /\<\d\+\(\.\d\+\(E\(+\|-\)\d\+\)\=\)\=/ syn match occamNumber /-\d\+\(\.\d\+\(E\(+\|-\)\d\+\)\=\)\=/ syn match occamNumber /#\(\d\|[A-F]\)\+/ syn match occamNumber /-#\(\d\|[A-F]\)\+/ syn keyword occamCDString SHARED EXTERNAL DEFINED NOALIAS NOUSAGE NOT contained syn keyword occamCDString FILE LINE PROCESS.PRIORITY OCCAM2.5 contained syn keyword occamCDString USER.DEFINED.OPERATORS INITIAL.DECL MOBILES contained syn keyword occamCDString BLOCKING.SYSCALLS VERSION NEED.QUAD.ALIGNMENT contained syn keyword occamCDString TARGET.CANONICAL TARGET.CPU TARGET.OS TARGET.VENDOR contained syn keyword occamCDString TRUE FALSE AND OR contained syn match occamCDString /<\|>\|=\|(\|)/ contained syn region occamCDirective start=/#\(USE\|INCLUDE\|PRAGMA\|DEFINE\|UNDEFINE\|UNDEF\|IF\|ELIF\|ELSE\|ENDIF\|WARNING\|ERROR\|RELAX\)\>/ end=/$/ contains=occamString,occamComment,occamCDString hi def link occamType Type hi def link occamKeyword Keyword hi def link occamComment Comment hi def link occamCommentTitle PreProc hi def link occamTodo Todo hi def link occamNote Todo hi def link occamString String hi def link occamCharString String hi def link occamNumber Number hi def link occamCDirective PreProc hi def link occamCDString String hi def link occamPPIdentifier PreProc hi def link occamBoolean Boolean hi def link occamSpecialChar SpecialChar hi def link occamChar Character hi def link occamStructure Structure hi def link occamIdentifier Identifier hi def link occamConstant Constant hi def link occamOperator Operator hi def link occamFunction Ignore hi def link occamRepeat Repeat hi def link occamConditional Conditional hi def link occamBrackets Type hi def link occamParantheses Delimiter let b:current_syntax = "occam" PK&]V vim80/syntax/slpreg.vimnu[" Vim syntax file " Language: RFC 2614 - An API for Service Location registration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword slpregTodo contained TODO FIXME XXX NOTE syn region slpregComment display oneline start='^[#;]' end='$' \ contains=slpregTodo,@Spell syn match slpregBegin display '^' \ nextgroup=slpregServiceURL, \ slpregComment syn match slpregServiceURL contained display 'service:' \ nextgroup=slpregServiceType syn match slpregServiceType contained display '\a[[:alpha:][:digit:]+-]*\%(\.\a[[:alpha:][:digit:]+-]*\)\=\%(:\a[[:alpha:][:digit:]+-]*\)\=' \ nextgroup=slpregServiceSAPCol syn match slpregServiceSAPCol contained display ':' \ nextgroup=slpregSAP syn match slpregSAP contained '[^,]\+' \ nextgroup=slpregLangSep "syn match slpregSAP contained display '\%(//\%(\%([[:alpha:][:digit:]$-_.~!*\'(),+;&=]*@\)\=\%([[:alnum:]][[:alnum:]-]*[[:alnum:]]\|[[:alnum:]]\.\)*\%(\a[[:alnum:]-]*[[:alnum:]]\|\a\)\%(:\d\+\)\=\)\=\|/at/\%([[:alpha:][:digit:]$-_.~]\|\\\x\x\)\{1,31}:\%([[:alpha:][:digit:]$-_.~]\|\\\x\x\)\{1,31}\%([[:alpha:][:digit:]$-_.~]\|\\\x\x\)\{1,31}\|/ipx/\x\{8}:\x\{12}:\x\{4}\)\%(/\%([[:alpha:][:digit:]$-_.~!*\'()+;?:@&=+]\|\\\x\x\)*\)*\%(;[^()\\!<=>~[:cntrl:]* \t_]\+\%(=[^()\\!<=>~[:cntrl:] ]\+\)\=\)*' syn match slpregLangSep contained display ',' \ nextgroup=slpregLang syn match slpregLang contained display '\a\{1,8}\%(-\a\{1,8\}\)\=' \ nextgroup=slpregLTimeSep syn match slpregLTimeSep contained display ',' \ nextgroup=slpregLTime syn match slpregLTime contained display '\d\{1,5}' \ nextgroup=slpregType,slpregUNewline syn match slpregType contained display '\a[[:alpha:][:digit:]+-]*' \ nextgroup=slpregUNewLine syn match slpregUNewLine contained '\s*\n' \ nextgroup=slpregScopes,slpregAttrList skipnl syn keyword slpregScopes contained scopes \ nextgroup=slpregScopesEq syn match slpregScopesEq contained '=' nextgroup=slpregScopeName syn match slpregScopeName contained '[^(),\\!<=>[:cntrl:];*+ ]\+' \ nextgroup=slpregScopeNameSep, \ slpregScopeNewline syn match slpregScopeNameSep contained ',' \ nextgroup=slpregScopeName syn match slpregScopeNewline contained '\s*\n' \ nextgroup=slpregAttribute skipnl syn match slpregAttribute contained '[^(),\\!<=>[:cntrl:]* \t_]\+' \ nextgroup=slpregAttributeEq, \ slpregScopeNewline syn match slpregAttributeEq contained '=' \ nextgroup=@slpregAttrValue syn cluster slpregAttrValueCon contains=slpregAttribute,slpregAttrValueSep syn cluster slpregAttrValue contains=slpregAttrIValue,slpregAttrSValue, \ slpregAttrBValue,slpregAttrSSValue syn match slpregAttrSValue contained display '[^(),\\!<=>~[:cntrl:]]\+' \ nextgroup=@slpregAttrValueCon skipwhite skipnl syn match slpregAttrSSValue contained display '\\FF\%(\\\x\x\)\+' \ nextgroup=@slpregAttrValueCon skipwhite skipnl syn match slpregAttrIValue contained display '[-]\=\d\+\>' \ nextgroup=@slpregAttrValueCon skipwhite skipnl syn keyword slpregAttrBValue contained true false \ nextgroup=@slpregAttrValueCon skipwhite skipnl syn match slpregAttrValueSep contained display ',' \ nextgroup=@slpregAttrValue skipwhite skipnl hi def link slpregTodo Todo hi def link slpregComment Comment hi def link slpregServiceURL Type hi def link slpregServiceType slpregServiceURL hi def link slpregServiceSAPCol slpregServiceURL hi def link slpregSAP slpregServiceURL hi def link slpregDelimiter Delimiter hi def link slpregLangSep slpregDelimiter hi def link slpregLang String hi def link slpregLTimeSep slpregDelimiter hi def link slpregLTime Number hi def link slpregType Type hi def link slpregScopes Identifier hi def link slpregScopesEq Operator hi def link slpregScopeName String hi def link slpregScopeNameSep slpregDelimiter hi def link slpregAttribute Identifier hi def link slpregAttributeEq Operator hi def link slpregAttrSValue String hi def link slpregAttrSSValue slpregAttrSValue hi def link slpregAttrIValue Number hi def link slpregAttrBValue Boolean hi def link slpregAttrValueSep slpregDelimiter let b:current_syntax = "slpreg" let &cpo = s:cpo_save unlet s:cpo_save PK&].xv v vim80/syntax/jsp.vimnu[" Vim syntax file " Language: JSP (Java Server Pages) " Maintainer: Rafael Garcia-Suarez " URL: http://rgarciasuarez.free.fr/vim/syntax/jsp.vim " Last change: 2004 Feb 02 " Credits : Patch by Darren Greaves (recognizes tags) " Patch by Thomas Kimpton (recognizes jspExpr inside HTML tags) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'jsp' endif " Source HTML syntax runtime! syntax/html.vim unlet b:current_syntax " Next syntax items are case-sensitive syn case match " Include Java syntax syn include @jspJava syntax/java.vim syn region jspScriptlet matchgroup=jspTag start=/<%/ keepend end=/%>/ contains=@jspJava syn region jspComment start=/<%--/ end=/--%>/ syn region jspDecl matchgroup=jspTag start=/<%!/ keepend end=/%>/ contains=@jspJava syn region jspExpr matchgroup=jspTag start=/<%=/ keepend end=/%>/ contains=@jspJava syn region jspDirective start=/<%@/ end=/%>/ contains=htmlString,jspDirName,jspDirArg syn keyword jspDirName contained include page taglib syn keyword jspDirArg contained file uri prefix language extends import session buffer autoFlush syn keyword jspDirArg contained isThreadSafe info errorPage contentType isErrorPage syn region jspCommand start=// end=/\/>/ contains=htmlString,jspCommandName,jspCommandArg syn keyword jspCommandName contained include forward getProperty plugin setProperty useBean param params fallback syn keyword jspCommandArg contained id scope class type beanName page flush name value property syn keyword jspCommandArg contained code codebase name archive align height syn keyword jspCommandArg contained width hspace vspace jreversion nspluginurl iepluginurl " Redefine htmlTag so that it can contain jspExpr syn clear htmlTag syn region htmlTag start=+<[^/%]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster,jspExpr,javaScript " Define the default highlighting. " Only when an item doesn't have highlighting yet " java.vim has redefined htmlComment highlighting hi def link htmlComment Comment hi def link htmlCommentPart Comment " Be consistent with html highlight settings hi def link jspComment htmlComment hi def link jspTag htmlTag hi def link jspDirective jspTag hi def link jspDirName htmlTagName hi def link jspDirArg htmlArg hi def link jspCommand jspTag hi def link jspCommandName htmlTagName hi def link jspCommandArg htmlArg if main_syntax == 'jsp' unlet main_syntax endif let b:current_syntax = "jsp" " vim: ts=8 PK&]Cvim80/syntax/rebol.vimnu[" Vim syntax file " Language: Rebol " Maintainer: Mike Williams " Filenames: *.r " Last Change: 27th June 2002 " URL: http://www.eandem.co.uk/mrw/vim " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Rebol is case insensitive syn case ignore " As per current users documentation setlocal isk=@,48-57,?,!,.,',+,-,*,&,\|,=,_,~ " Yer TODO highlighter syn keyword rebolTodo contained TODO " Comments syn match rebolComment ";.*$" contains=rebolTodo " Words syn match rebolWord "\a\k*" syn match rebolWordPath "[^[:space:]]/[^[:space]]"ms=s+1,me=e-1 " Booleans syn keyword rebolBoolean true false on off yes no " Values " Integers syn match rebolInteger "\<[+-]\=\d\+\('\d*\)*\>" " Decimals syn match rebolDecimal "[+-]\=\(\d\+\('\d*\)*\)\=[,.]\d*\(e[+-]\=\d\+\)\=" syn match rebolDecimal "[+-]\=\d\+\('\d*\)*\(e[+-]\=\d\+\)\=" " Time syn match rebolTime "[+-]\=\(\d\+\('\d*\)*\:\)\{1,2}\d\+\('\d*\)*\([.,]\d\+\)\=\([AP]M\)\=\>" syn match rebolTime "[+-]\=:\d\+\([.,]\d*\)\=\([AP]M\)\=\>" " Dates " DD-MMM-YY & YYYY format syn match rebolDate "\d\{1,2}\([/-]\)\(Jan\|Feb\|Mar\|Apr\|May\|Jun\|Jul\|Aug\|Sep\|Oct\|Nov\|Dec\)\1\(\d\{2}\)\{1,2}\>" " DD-month-YY & YYYY format syn match rebolDate "\d\{1,2}\([/-]\)\(January\|February\|March\|April\|May\|June\|July\|August\|September\|October\|November\|December\)\1\(\d\{2}\)\{1,2}\>" " DD-MM-YY & YY format syn match rebolDate "\d\{1,2}\([/-]\)\d\{1,2}\1\(\d\{2}\)\{1,2}\>" " YYYY-MM-YY format syn match rebolDate "\d\{4}-\d\{1,2}-\d\{1,2}\>" " DD.MM.YYYY format syn match rebolDate "\d\{1,2}\.\d\{1,2}\.\d\{4}\>" " Money syn match rebolMoney "\a*\$\d\+\('\d*\)*\([,.]\d\+\)\=" " Strings syn region rebolString oneline start=+"+ skip=+^"+ end=+"+ contains=rebolSpecialCharacter syn region rebolString start=+[^#]{+ end=+}+ skip=+{[^}]*}+ contains=rebolSpecialCharacter " Binary syn region rebolBinary start=+\d*#{+ end=+}+ contains=rebolComment " Email syn match rebolEmail "\<\k\+@\(\k\+\.\)*\k\+\>" " File syn match rebolFile "%\(\k\+/\)*\k\+[/]\=" contains=rebolSpecialCharacter syn region rebolFile oneline start=+%"+ end=+"+ contains=rebolSpecialCharacter " URLs syn match rebolURL "http://\k\+\(\.\k\+\)*\(:\d\+\)\=\(/\(\k\+/\)*\(\k\+\)\=\)*" syn match rebolURL "file://\k\+\(\.\k\+\)*/\(\k\+/\)*\k\+" syn match rebolURL "ftp://\(\k\+:\k\+@\)\=\k\+\(\.\k\+\)*\(:\d\+\)\=/\(\k\+/\)*\k\+" syn match rebolURL "mailto:\k\+\(\.\k\+\)*@\k\+\(\.\k\+\)*" " Issues syn match rebolIssue "#\(\d\+-\)*\d\+" " Tuples syn match rebolTuple "\(\d\+\.\)\{2,}" " Characters syn match rebolSpecialCharacter contained "\^[^[:space:][]" syn match rebolSpecialCharacter contained "%\d\+" " Operators " Math operators syn match rebolMathOperator "\(\*\{1,2}\|+\|-\|/\{1,2}\)" syn keyword rebolMathFunction abs absolute add arccosine arcsine arctangent cosine syn keyword rebolMathFunction divide exp log-10 log-2 log-e max maximum min syn keyword rebolMathFunction minimum multiply negate power random remainder sine syn keyword rebolMathFunction square-root subtract tangent " Binary operators syn keyword rebolBinaryOperator complement and or xor ~ " Logic operators syn match rebolLogicOperator "[<>=]=\=" syn match rebolLogicOperator "<>" syn keyword rebolLogicOperator not syn keyword rebolLogicFunction all any syn keyword rebolLogicFunction head? tail? syn keyword rebolLogicFunction negative? positive? zero? even? odd? syn keyword rebolLogicFunction binary? block? char? date? decimal? email? empty? syn keyword rebolLogicFunction file? found? function? integer? issue? logic? money? syn keyword rebolLogicFunction native? none? object? paren? path? port? series? syn keyword rebolLogicFunction string? time? tuple? url? word? syn keyword rebolLogicFunction exists? input? same? value? " Datatypes syn keyword rebolType binary! block! char! date! decimal! email! file! syn keyword rebolType function! integer! issue! logic! money! native! syn keyword rebolType none! object! paren! path! port! string! time! syn keyword rebolType tuple! url! word! syn keyword rebolTypeFunction type? " Control statements syn keyword rebolStatement break catch exit halt reduce return shield syn keyword rebolConditional if else syn keyword rebolRepeat for forall foreach forskip loop repeat while until do " Series statements syn keyword rebolStatement change clear copy fifth find first format fourth free syn keyword rebolStatement func function head insert last match next parse past syn keyword rebolStatement pick remove second select skip sort tail third trim length? " Context syn keyword rebolStatement alias bind use " Object syn keyword rebolStatement import make make-object rebol info? " I/O statements syn keyword rebolStatement delete echo form format import input load mold prin syn keyword rebolStatement print probe read save secure send write syn keyword rebolOperator size? modified? " Debug statement syn keyword rebolStatement help probe trace " Misc statements syn keyword rebolStatement func function free " Constants syn keyword rebolConstant none " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link rebolTodo Todo hi def link rebolStatement Statement hi def link rebolLabel Label hi def link rebolConditional Conditional hi def link rebolRepeat Repeat hi def link rebolOperator Operator hi def link rebolLogicOperator rebolOperator hi def link rebolLogicFunction rebolLogicOperator hi def link rebolMathOperator rebolOperator hi def link rebolMathFunction rebolMathOperator hi def link rebolBinaryOperator rebolOperator hi def link rebolBinaryFunction rebolBinaryOperator hi def link rebolType Type hi def link rebolTypeFunction rebolOperator hi def link rebolWord Identifier hi def link rebolWordPath rebolWord hi def link rebolFunction Function hi def link rebolCharacter Character hi def link rebolSpecialCharacter SpecialChar hi def link rebolString String hi def link rebolNumber Number hi def link rebolInteger rebolNumber hi def link rebolDecimal rebolNumber hi def link rebolTime rebolNumber hi def link rebolDate rebolNumber hi def link rebolMoney rebolNumber hi def link rebolBinary rebolNumber hi def link rebolEmail rebolString hi def link rebolFile rebolString hi def link rebolURL rebolString hi def link rebolIssue rebolNumber hi def link rebolTuple rebolNumber hi def link rebolFloat Float hi def link rebolBoolean Boolean hi def link rebolConstant Constant hi def link rebolComment Comment hi def link rebolError Error if exists("my_rebol_file") if file_readable(expand(my_rebol_file)) execute "source " . my_rebol_file endif endif let b:current_syntax = "rebol" " vim: ts=8 PK&]||vim80/syntax/css.vimnu[" Vim syntax file " Language: Cascading Style Sheets " Previous Contributor List: " Claudio Fleiner (Maintainer) " Yeti (Add full CSS2, HTML4 support) " Nikolai Weibull (Add CSS2 support) " URL: https://github.com/JulesWang/css.vim " Maintainer: Jules Wang " Last Change: 2018 Feb. 27 " cssClassName updated by Ryuichi Hayashida Jan 2016 " quit when a syntax file was already loaded if !exists("main_syntax") if exists("b:current_syntax") finish endif let main_syntax = 'css' elseif exists("b:current_syntax") && b:current_syntax == "css" finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore " HTML4 tags syn keyword cssTagName abbr address area a b base syn keyword cssTagName bdo blockquote body br button syn keyword cssTagName caption cite code col colgroup dd del syn keyword cssTagName dfn div dl dt em fieldset form syn keyword cssTagName h1 h2 h3 h4 h5 h6 head hr html img i syn keyword cssTagName iframe input ins isindex kbd label legend li syn keyword cssTagName link map menu meta noscript ol optgroup syn keyword cssTagName option p param pre q s samp script small syn keyword cssTagName span strong sub sup tbody td syn keyword cssTagName textarea tfoot th thead title tr ul u var syn keyword cssTagName object svg syn match cssTagName /\\|\\|\/ " 34 HTML5 tags syn keyword cssTagName article aside audio bdi canvas command data syn keyword cssTagName datalist details dialog embed figcaption figure footer syn keyword cssTagName header hgroup keygen main mark menuitem meter nav syn keyword cssTagName output progress rt rp ruby section syn keyword cssTagName source summary time track video wbr " Tags not supported in HTML5 " acronym applet basefont big center dir " font frame frameset noframes strike tt syn match cssTagName "\*" " selectors syn match cssSelectorOp "[,>+~]" syn match cssSelectorOp2 "[~|^$*]\?=" contained syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ " .class and #id syn match cssClassName "\.-\=[A-Za-z_][A-Za-z0-9_-]*" contains=cssClassNameDot syn match cssClassNameDot contained '\.' try syn match cssIdentifier "#[A-Za-z-_@][A-Za-z-0-9_@-]*" catch /^.*/ syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*" endtry " digits syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)\>" contains=cssUnitDecorators syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=%" contains=cssUnitDecorators syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)\>" contains=cssUnitDecorators " The 16 basic color names syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow " 130 more color names syn keyword cssColor contained aliceblue antiquewhite aquamarine azure syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan syn match cssColor contained /\/ syn match cssColor contained /\/ syn match cssColor contained /\/ syn match cssColor contained /\/ syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen syn keyword cssColor contained lemonchiffon limegreen linen magenta syn match cssColor contained /\/ syn match cssColor contained /\/ syn match cssColor contained /\/ syn match cssColor contained /\/ syn match cssColor contained /\/ syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite syn keyword cssColor contained oldlace olivedrab orange orangered orchid syn match cssColor contained /\/ syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue syn keyword cssColor contained rosybrown royalblue rebeccapurple saddlebrown salmon syn keyword cssColor contained sandybrown seagreen seashell sienna skyblue slateblue syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan syn keyword cssColor contained thistle tomato turquoise violet wheat syn keyword cssColor contained whitesmoke yellowgreen " FIXME: These are actually case-insensitive too, but (a) specs recommend using " mixed-case (b) it's hard to highlight the word `Background' correctly in " all situations syn case match syn keyword cssColor contained ActiveBorder ActiveCaption AppWorkspace ButtonFace ButtonHighlight ButtonShadow ButtonText CaptionText GrayText Highlight HighlightText InactiveBorder InactiveCaption InactiveCaptionText InfoBackground InfoText Menu MenuText Scrollbar ThreeDDarkShadow ThreeDFace ThreeDHighlight ThreeDLightShadow ThreeDShadow Window WindowFrame WindowText Background syn case ignore syn match cssImportant contained "!\s*important\>" syn match cssColor contained "\" syn match cssColor contained "\" syn match cssColor contained "\" syn match cssColor contained "#\x\{3,4\}\>" contains=cssUnitDecorators syn match cssColor contained "#\x\{6\}\>" contains=cssUnitDecorators syn match cssColor contained "#\x\{8\}\>" contains=cssUnitDecorators syn region cssURL contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at syn match cssFunctionComma contained "," " Common Prop and Attr syn keyword cssCommonAttr contained auto none inherit all default normal syn keyword cssCommonAttr contained top bottom center stretch hidden visible "------------------------------------------------ " CSS Animations " http://www.w3.org/TR/css3-animations/ syn match cssAnimationProp contained "\" " animation-direction attributes syn keyword cssAnimationAttr contained alternate reverse syn match cssAnimationAttr contained "\" " animation-fill-mode attributes syn keyword cssAnimationAttr contained forwards backwards both " animation-play-state attributes syn keyword cssAnimationAttr contained running paused " animation-iteration-count attributes syn keyword cssAnimationAttr contained infinite "------------------------------------------------ " CSS Backgrounds and Borders Module Level 3 " http://www.w3.org/TR/css3-background/ syn match cssBackgroundProp contained "\" " background-attachment attributes syn keyword cssBackgroundAttr contained scroll fixed local " background-position attributes syn keyword cssBackgroundAttr contained left center right top bottom " background-repeat attributes syn match cssBackgroundAttr contained "\" syn match cssBackgroundAttr contained "\" " background-size attributes syn keyword cssBackgroundAttr contained cover contain syn match cssBorderProp contained "\" syn match cssBorderProp contained "\" syn match cssBorderProp contained "\" syn match cssBorderProp contained "\" syn match cssBorderProp contained "\" " border-image attributes syn keyword cssBorderAttr contained stretch round fill " border-style attributes syn keyword cssBorderAttr contained dotted dashed solid double groove ridge inset outset " border-width attributes syn keyword cssBorderAttr contained thin thick medium " box-decoration-break attributes syn keyword cssBorderAttr contained clone slice "------------------------------------------------ syn match cssBoxProp contained "\" syn match cssBoxProp contained "\" syn match cssBoxProp contained "\" syn match cssBoxProp contained "\" syn keyword cssBoxAttr contained visible hidden scroll auto syn match cssBoxAttr contained "\" syn keyword cssColorProp contained opacity syn match cssColorProp contained "\" syn match cssColorProp contained "\" syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>" syn keyword cssDimensionProp contained height syn keyword cssDimensionProp contained width " 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 "\" 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 "\" syn match cssFlexibleBoxAttr contained "\" " CSS Fonts Module Level 3 " http://www.w3.org/TR/css-fonts-3/ syn match cssFontProp contained "\" " font attributes syn keyword cssFontAttr contained icon menu caption syn match cssFontAttr contained "\" syn match cssFontAttr contained "\" syn keyword cssFontAttr contained larger smaller syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>" syn match cssFontAttr contained "\" " font-family attributes syn match cssFontAttr contained "\<\(sans-\)\=serif\>" syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Verdana Webdings Wingdings York Zapf syn keyword cssFontAttr contained cursive fantasy monospace " font-feature-settings attributes syn keyword cssFontAttr contained on off " font-stretch attributes syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>" " font-style attributes syn keyword cssFontAttr contained italic oblique " font-synthesis attributes syn keyword cssFontAttr contained weight style " font-weight attributes syn keyword cssFontAttr contained bold bolder lighter " TODO: font-variant-* attributes "------------------------------------------------ " Webkit specific property/attributes syn match cssFontProp contained "\" syn match cssFontAttr contained "\<\(subpixel-\)\=\antialiased\>" " CSS Multi-column Layout Module " http://www.w3.org/TR/css3-multicol/ syn match cssMultiColumnProp contained "\" syn match cssMultiColumnProp contained "\" syn keyword cssMultiColumnProp contained columns syn keyword cssMultiColumnAttr contained balance medium syn keyword cssMultiColumnAttr contained always left right page column syn match cssMultiColumnAttr contained "\" " http://www.w3.org/TR/css3-break/#page-break syn match cssMultiColumnProp contained "\" " http://www.w3.org/TR/SVG11/interact.html syn match cssInteractProp contained "\" 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 "\" syn match cssGeneratedContentProp contained "\" syn match cssGeneratedContentProp contained "\" syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>" " https://www.w3.org/TR/css-grid-1/ syn match cssGridProp contained "\" syn match cssGridProp contained "\" syn match cssGridProp contained "\" syn match cssGridProp contained "\" syn match cssGridProp contained "\" syn match cssHyerlinkProp contained "\" syn match cssListProp contained "\" syn match cssListAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>" syn match cssListAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>" syn match cssListAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>" syn keyword cssListAttr contained disc circle square hebrew armenian georgian syn keyword cssListAttr contained inside outside syn keyword cssPositioningProp contained bottom clear clip display float left syn keyword cssPositioningProp contained position right top visibility syn match cssPositioningProp contained "\" syn keyword cssPositioningAttr contained block compact grid syn match cssPositioningAttr contained "\" syn keyword cssPositioningAttr contained left right both syn match cssPositioningAttr contained "\" syn match cssPositioningAttr contained "\" syn keyword cssPositioningAttr contained static relative absolute fixed subgrid syn keyword cssPrintAttr contained landscape portrait crop cross always syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\)\>" syn keyword cssTableAttr contained fixed collapse separate show hide once always syn keyword cssTextProp contained color direction syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>" syn match cssTextProp contained "\" syn match cssTextProp contained "\" syn match cssTextProp contained "\" syn match cssTextProp contained "\" syn match cssTextProp contained "\" syn match cssTextAttr contained "\" syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>" syn keyword cssTextAttr contained ltr rtl embed nowrap syn keyword cssTextAttr contained underline overline blink sub super middle syn keyword cssTextAttr contained capitalize uppercase lowercase syn keyword cssTextAttr contained justify baseline sub super syn keyword cssTextAttr contained optimizeLegibility optimizeSpeed syn match cssTextAttr contained "\" syn match cssTextAttr contained "\<\(allow\|force\)-end\>" syn keyword cssTextAttr contained start end adjacent syn match cssTextAttr contained "\" syn keyword cssTextAttr contained distribute kashida first last syn keyword cssTextAttr contained clip ellipsis unrestricted suppress syn match cssTextAttr contained "\" syn match cssTextAttr contained "\" syn keyword cssTextAttr contained hyphenate syn match cssTextAttr contained "\" syn match cssTransformProp contained "\" syn match cssTransformProp contained "\" syn match cssTransformProp contained "\" " CSS Transitions " http://www.w3.org/TR/css3-transitions/ syn match cssTransitionProp contained "\" " transition-time-function attributes syn match cssTransitionAttr contained "\" syn match cssTransitionAttr contained "\" syn match cssTransitionAttr contained "\" "------------------------------------------------ " CSS Basic User Interface Module Level 3 (CSS3 UI) " http://www.w3.org/TR/css3-ui/ syn match cssUIProp contained "\" syn match cssUIAttr contained "\<\(content\|padding\|border\)\(-box\)\=\>" syn keyword cssUIProp contained cursor syn match cssUIAttr contained "\<\(\([ns]\=[ew]\=\)\|col\|row\|nesw\|nwse\)-resize\>" syn keyword cssUIAttr contained crosshair help move pointer alias copy syn keyword cssUIAttr contained progress wait text cell move syn match cssUIAttr contained "\" syn match cssUIAttr contained "\" syn match cssUIAttr contained "\" syn match cssUIAttr contained "\" syn match cssUIAttr contained "\<\(vertical-\)\=text\>" syn match cssUIAttr contained "\" syn match cssUIProp contained "\" syn keyword cssUIAttr contained active inactive disabled syn match cssUIProp contained "\" syn match cssUIProp contained "\" syn keyword cssUIAttr contained invert syn keyword cssUIProp contained icon resize syn keyword cssUIAttr contained both horizontal vertical syn match cssUIProp contained "\" syn keyword cssUIAttr contained clip ellipsis syn match cssUIProp contained "\" syn keyword cssUIAttr contained pixellated syn match cssUIAttr contained "\" "------------------------------------------------ " Webkit/iOS specific attributes syn match cssUIAttr contained '\' " IE specific attributes syn match cssIEUIAttr contained '\' " Webkit/iOS specific properties syn match cssUIProp contained '\' " IE specific properties syn match cssIEUIProp contained '\' " Webkit/Firebox specific properties/attributes syn keyword cssUIProp contained appearance syn keyword cssUIAttr contained window button field icon document menu syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>" syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numeral\|header\)\)\=\)\>" syn keyword cssAuralProp contained volume during azimuth elevation stress richness syn match cssAuralAttr contained "\<\(x-\)\=\(soft\|loud\)\>" syn keyword cssAuralAttr contained silent syn match cssAuralAttr contained "\" syn keyword cssAuralAttr contained non mix syn match cssAuralAttr contained "\<\(left\|right\)-side\>" syn match cssAuralAttr contained "\<\(far\|center\)-\(left\|center\|right\)\>" syn keyword cssAuralAttr contained leftwards rightwards behind syn keyword cssAuralAttr contained below level above lower higher syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\|low\|high\)\>" syn keyword cssAuralAttr contained faster slower syn keyword cssAuralAttr contained male female child code digits continuous " mobile text syn match cssMobileTextProp contained "\" syn keyword cssMediaProp contained width height orientation scan grid syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(\(device\)-\)\=aspect-ratio/ syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/ syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/ syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/ syn keyword cssMediaAttr contained portrait landscape progressive interlace syn match cssKeyFrameProp /\d*%\|from\|to/ contained nextgroup=cssDefinition syn match cssPageMarginProp /@\(\(top\|left\|right\|bottom\)-\(left\|center\|right\|middle\|bottom\)\)\(-corner\)\=/ contained nextgroup=cssDefinition syn keyword cssPageProp contained content size syn keyword cssPageProp contained orphans widows syn keyword cssFontDescriptorProp contained src syn match cssFontDescriptorProp contained "\" " unicode-range attributes syn match cssFontDescriptorAttr contained "U+[0-9A-Fa-f?]\+" syn match cssFontDescriptorAttr contained "U+\x\+-\x\+" syn match cssBraces contained "[{}]" syn match cssError contained "{@<>" syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssTagName,cssAttributeSelector,cssClassName,cssIdentifier,cssAtRule,cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise fold syn match cssBraceError "}" syn match cssAttrComma "," " Pseudo class " http://www.w3.org/TR/css3-selectors/ syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssNoise,cssPseudoClassId,cssUnicodeEscape,cssVendor,cssPseudoClassFn syn keyword cssPseudoClassId contained link visited active hover before after left right syn keyword cssPseudoClassId contained root empty target enable disabled checked invalid syn match cssPseudoClassId contained "\" syn match cssPseudoClassId contained "\<\(first\|last\|only\)-\(of-type\|child\)\>" syn region cssPseudoClassFn contained matchgroup=cssFunctionName start="\<\(not\|lang\|\(nth\|nth-last\)-\(of-type\|child\)\)(" end=")" " ------------------------------------ " Vendor specific properties syn match cssPseudoClassId contained "\" syn match cssPseudoClassId contained "\" syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>" " Misc highlight groups syntax match cssUnitDecorators /\(#\|-\|+\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|ch\|rem\|vh\|vw\|vmin\|vmax\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained syntax match cssNoise contained /\(:\|;\|\/\)/ " Comment syn region cssComment start="/\*" end="\*/" contains=@Spell fold syn match cssUnicodeEscape "\\\x\{1,6}\s\?" syn match cssSpecialCharQQ +\\\\\|\\"+ contained syn match cssSpecialCharQ +\\\\\|\\'+ contained syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ " Vendor Prefix syn match cssVendor contained "-\(webkit\|moz\|o\|ms\)-" " Various CSS Hack characters " In earlier versions of IE (6 and 7), one can prefix property names " with a _ or * to isolate those definitions to particular versions of IE " This is purely decorative and therefore we assign to the same highlight " group to cssVendor, for more information: " http://www.paulirish.com/2009/browser-specific-css-hacks/ syn match cssHacks contained /\(_\|*\)/ " Attr Enhance " Some keywords are both Prop and Attr, so we have to handle them syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise " Hack for transition " 'transition' has Props after ':'. syn region cssAttrRegion start=/transition\s*:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise syn match cssAtKeyword /@\(font-face\|media\|keyframes\|import\|charset\|namespace\|page\|supports\)/ contained syn keyword cssAtRuleLogical only not and contained " @media " Reference: http://www.w3.org/TR/css3-mediaqueries/ syn region cssAtRule start=/@media\>/ end=/\ze{/ skipwhite skipnl matchgroup=cssAtKeyword contains=cssMediaProp,cssValueLength,cssAtRuleLogical,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssComment nextgroup=cssDefinition syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained " @page " http://www.w3.org/TR/css3-page/ syn region cssAtRule start=/@page\>/ end=/\ze{/ skipwhite skipnl matchgroup=cssAtKeyword contains=cssPagePseudo,cssComment nextgroup=cssDefinition syn match cssPagePseudo /:\(left\|right\|first\|blank\)/ contained skipwhite skipnl " @keyframe " http://www.w3.org/TR/css3-animations/#keyframes syn region cssAtRule start=/@\(-[a-z]\+-\)\=keyframes\>/ end=/\ze{/ skipwhite skipnl matchgroup=cssAtKeyword contains=cssVendor,cssComment nextgroup=cssDefinition syn region cssAtRule start=/@import\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssAtKeyword,cssURL,cssMediaProp,cssValueLength,cssAtRuleLogical,cssValueInteger,cssMediaAttr,cssMediaType syn region cssAtRule start=/@charset\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssAtKeyword syn region cssAtRule start=/@namespace\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssAtKeyword " @font-face " http://www.w3.org/TR/css3-fonts/#at-font-face-rule syn match cssAtRule "@font-face\>" nextgroup=cssFontDescriptorBlock " @supports " https://www.w3.org/TR/css3-conditional/#at-supports syn region cssAtRule start=/@supports\>/ end=/\ze{/ skipwhite skipnl contains=cssAtRuleLogical,cssAttrRegion,css.*Prop,cssValue.*,cssVendor,cssAtKeyword,cssComment nextgroup=cssDefinition if main_syntax == "css" syn sync minlines=10 endif " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link cssComment Comment hi def link cssVendor Comment hi def link cssHacks Comment hi def link cssTagName Statement hi def link cssDeprecated Error hi def link cssSelectorOp Special hi def link cssSelectorOp2 Special hi def link cssAttrComma Special hi def link cssAnimationProp cssProp hi def link cssBackgroundProp cssProp hi def link cssBorderProp cssProp hi def link cssBoxProp cssProp hi def link cssColorProp cssProp hi def link cssContentForPagedMediaProp cssProp hi def link cssDimensionProp cssProp hi def link cssFlexibleBoxProp cssProp hi def link cssFontProp cssProp hi def link cssGeneratedContentProp cssProp hi def link cssGridProp cssProp hi def link cssHyerlinkProp cssProp hi def link cssInteractProp cssProp hi def link cssLineboxProp cssProp hi def link cssListProp cssProp hi def link cssMarqueeProp cssProp hi def link cssMultiColumnProp cssProp hi def link cssPagedMediaProp cssProp hi def link cssPositioningProp cssProp hi def link cssPrintProp cssProp hi def link cssRubyProp cssProp hi def link cssSpeechProp cssProp hi def link cssTableProp cssProp hi def link cssTextProp cssProp hi def link cssTransformProp cssProp hi def link cssTransitionProp cssProp hi def link cssUIProp cssProp hi def link cssIEUIProp cssProp hi def link cssAuralProp cssProp hi def link cssRenderProp cssProp hi def link cssMobileTextProp cssProp hi def link cssAnimationAttr cssAttr hi def link cssBackgroundAttr cssAttr hi def link cssBorderAttr cssAttr hi def link cssBoxAttr cssAttr hi def link cssContentForPagedMediaAttr cssAttr hi def link cssDimensionAttr cssAttr hi def link cssFlexibleBoxAttr cssAttr hi def link cssFontAttr cssAttr hi def link cssGeneratedContentAttr cssAttr hi def link cssGridAttr cssAttr hi def link cssHyerlinkAttr cssAttr hi def link cssInteractAttr cssAttr hi def link cssLineboxAttr cssAttr hi def link cssListAttr cssAttr hi def link cssMarginAttr cssAttr hi def link cssMarqueeAttr cssAttr hi def link cssMultiColumnAttr cssAttr hi def link cssPaddingAttr cssAttr hi def link cssPagedMediaAttr cssAttr hi def link cssPositioningAttr cssAttr hi def link cssGradientAttr cssAttr hi def link cssPrintAttr cssAttr hi def link cssRubyAttr cssAttr hi def link cssSpeechAttr cssAttr hi def link cssTableAttr cssAttr hi def link cssTextAttr cssAttr hi def link cssTransformAttr cssAttr hi def link cssTransitionAttr cssAttr hi def link cssUIAttr cssAttr hi def link cssIEUIAttr cssAttr hi def link cssAuralAttr cssAttr hi def link cssRenderAttr cssAttr hi def link cssCommonAttr cssAttr hi def link cssPseudoClassId PreProc hi def link cssPseudoClassLang Constant hi def link cssValueLength Number hi def link cssValueInteger Number hi def link cssValueNumber Number hi def link cssValueAngle Number hi def link cssValueTime Number hi def link cssValueFrequency Number hi def link cssFunction Constant hi def link cssURL String hi def link cssFunctionName Function hi def link cssFunctionComma Function hi def link cssColor Constant hi def link cssIdentifier Function hi def link cssAtRule Include hi def link cssAtKeyword PreProc hi def link cssImportant Special hi def link cssBraces Function hi def link cssBraceError Error hi def link cssError Error hi def link cssUnicodeEscape Special hi def link cssStringQQ String hi def link cssStringQ String hi def link cssAttributeSelector String hi def link cssMediaType Special hi def link cssMediaComma Normal hi def link cssAtRuleLogical Statement hi def link cssMediaProp cssProp hi def link cssMediaAttr cssAttr hi def link cssPagePseudo PreProc hi def link cssPageMarginProp cssAtKeyword hi def link cssPageProp cssProp hi def link cssKeyFrameProp Constant hi def link cssFontDescriptor Special hi def link cssFontDescriptorProp cssProp hi def link cssFontDescriptorAttr cssAttr hi def link cssUnicodeRange Constant hi def link cssClassName Function hi def link cssClassNameDot Function hi def link cssProp StorageClass hi def link cssAttr Constant hi def link cssUnitDecorators Number hi def link cssNoise Noise let b:current_syntax = "css" if main_syntax == 'css' unlet main_syntax endif let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]Ovim80/syntax/smil.vimnu[" Vim syntax file " Language: SMIL (Synchronized Multimedia Integration Language) " Maintainer: Herve Foucher " URL: http://www.helio.org/vim/syntax/smil.vim " Last Change: 2012 Feb 03 by Thilo Six " To learn more about SMIL, please refer to http://www.w3.org/AudioVideo/ " and to http://www.helio.org/products/smil/tutorial/ " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " SMIL is case sensitive syn case match " illegal characters syn match smilError "[<>&]" syn match smilError "[()&]" if !exists("main_syntax") let main_syntax = 'smil' endif " tags syn match smilSpecial contained "\\\d\d\d\|\\." syn match smilSpecial contained "(" syn match smilSpecial contained "id(" syn match smilSpecial contained ")" syn keyword smilSpecial contained remove freeze true false on off overdub caption new pause replace syn keyword smilSpecial contained first last syn keyword smilSpecial contained fill meet slice scroll hidden syn region smilString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=smilSpecial syn region smilString contained start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=smilSpecial syn match smilValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 syn region smilEndTag start=++ contains=smilTagN,smilTagError syn region smilTag start=+<[^/]+ end=+>+ contains=smilTagN,smilString,smilArg,smilValue,smilTagError,smilEvent,smilCssDefinition syn match smilTagN contained +<\s*[-a-zA-Z0-9]\++ms=s+1 contains=smilTagName,smilSpecialTagName syn match smilTagN contained +]<"ms=s+1 " tag names syn keyword smilTagName contained smil head body anchor a switch region layout meta syn match smilTagName contained "root-layout" syn keyword smilTagName contained par seq syn keyword smilTagName contained animation video img audio ref text textstream syn match smilTagName contained "\<\(head\|body\)\>" " legal arg names syn keyword smilArg contained dur begin end href target id coords show title abstract author copyright alt syn keyword smilArg contained left top width height fit src name content fill longdesc repeat type syn match smilArg contained "z-index" syn match smilArg contained " end-sync" syn match smilArg contained " region" syn match smilArg contained "background-color" syn match smilArg contained "system-bitrate" syn match smilArg contained "system-captions" syn match smilArg contained "system-overdub-or-caption" syn match smilArg contained "system-language" syn match smilArg contained "system-required" syn match smilArg contained "system-screen-depth" syn match smilArg contained "system-screen-size" syn match smilArg contained "clip-begin" syn match smilArg contained "clip-end" syn match smilArg contained "skip-content" " SMIL Boston ext. " This are new SMIL functionnalities seen on www.w3.org on August 3rd 1999 " Animation syn keyword smilTagName contained animate set move syn keyword smilArg contained calcMode from to by additive values origin path syn keyword smilArg contained accumulate hold attribute syn match smilArg contained "xml:link" syn keyword smilSpecial contained discrete linear spline parent layout syn keyword smilSpecial contained top left simple " Linking syn keyword smilTagName contained area syn keyword smilArg contained actuate behavior inline sourceVolume syn keyword smilArg contained destinationVolume destinationPlaystate tabindex syn keyword smilArg contained class style lang dir onclick ondblclick onmousedown onmouseup onmouseover onmousemove onmouseout onkeypress onkeydown onkeyup shape nohref accesskey onfocus onblur syn keyword smilSpecial contained play pause stop rect circ poly child par seq " Media Object syn keyword smilTagName contained rtpmap syn keyword smilArg contained port transport encoding payload clipBegin clipEnd syn match smilArg contained "fmt-list" " Timing and Synchronization syn keyword smilTagName contained excl syn keyword smilArg contained beginEvent endEvent eventRestart endSync repeatCount repeatDur syn keyword smilArg contained syncBehavior syncTolerance syn keyword smilSpecial contained canSlip locked " special characters syn match smilSpecialChar "&[^;]*;" if exists("smil_wrong_comments") syn region smilComment start=++ else syn region smilComment start=++ contains=smilCommentPart,smilCommentError syn match smilCommentError contained "[^>+ " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link smilTag Function hi def link smilEndTag Identifier hi def link smilArg Type hi def link smilTagName smilStatement hi def link smilSpecialTagName Exception hi def link smilValue Value hi def link smilSpecialChar Special hi def link smilSpecial Special hi def link smilSpecialChar Special hi def link smilString String hi def link smilStatement Statement hi def link smilComment Comment hi def link smilCommentPart Comment hi def link smilPreProc PreProc hi def link smilValue String hi def link smilCommentError smilError hi def link smilTagError smilError hi def link smilError Error let b:current_syntax = "smil" if main_syntax == 'smil' unlet main_syntax endif let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]Еvim80/syntax/asm.vimnu[" Vim syntax file " Language: GNU Assembler " Maintainer: Erik Wognsen " Previous maintainer: " Kevin Dahlhausen " Last Change: 2014 Feb 04 " Thanks to Ori Avtalion for feedback on the comment markers! " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore " storage types syn match asmType "\.long" syn match asmType "\.ascii" syn match asmType "\.asciz" syn match asmType "\.byte" syn match asmType "\.double" syn match asmType "\.float" syn match asmType "\.hword" syn match asmType "\.int" syn match asmType "\.octa" syn match asmType "\.quad" syn match asmType "\.short" syn match asmType "\.single" syn match asmType "\.space" syn match asmType "\.string" syn match asmType "\.word" syn match asmLabel "[a-z_][a-z0-9_]*:"he=e-1 syn match asmIdentifier "[a-z_][a-z0-9_]*" " Various #'s as defined by GAS ref manual sec 3.6.2.1 " Technically, the first decNumber def is actually octal, " since the value of 0-7 octal is the same as 0-7 decimal, " I (Kevin) prefer to map it as decimal: syn match decNumber "0\+[1-7]\=[\t\n$,; ]" syn match decNumber "[1-9]\d*" syn match octNumber "0[0-7][0-7]\+" syn match hexNumber "0[xX][0-9a-fA-F]\+" syn match binNumber "0[bB][0-1]*" syn keyword asmTodo contained TODO " GAS supports one type of multi line comments: syn region asmComment start="/\*" end="\*/" contains=asmTodo " GAS (undocumentedly?) supports C++ style comments. Unlike in C/C++ however, " a backslash ending a C++ style comment does not extend the comment to the " next line (hence the syntax region does not define 'skip="\\$"') syn region asmComment start="//" end="$" keepend contains=asmTodo " Line comment characters depend on the target architecture and command line " options and some comments may double as logical line number directives or " preprocessor commands. This situation is described at " http://sourceware.org/binutils/docs-2.22/as/Comments.html " Some line comment characters have other meanings for other targets. For " example, .type directives may use the `@' character which is also an ARM " comment marker. " As a compromise to accommodate what I arbitrarily assume to be the most " frequently used features of the most popular architectures (and also the " non-GNU assembly languages that use this syntax file because their asm files " are also named *.asm), the following are used as line comment characters: syn match asmComment "[#;!|].*" contains=asmTodo " Side effects of this include: " - When `;' is used to separate statements on the same line (many targets " support this), all statements except the first get highlighted as " comments. As a remedy, remove `;' from the above. " - ARM comments are not highlighted correctly. For ARM, uncomment the " following two lines and comment the one above. "syn match asmComment "@.*" contains=asmTodo "syn match asmComment "^#.*" contains=asmTodo " Advanced users of specific architectures will probably want to change the " comment highlighting or use a specific, more comprehensive syntax file. syn match asmInclude "\.include" syn match asmCond "\.if" syn match asmCond "\.else" syn match asmCond "\.endif" syn match asmMacro "\.macro" syn match asmMacro "\.endm" " Assembler directives start with a '.' and may contain upper case (e.g., " .ABORT), numbers (e.g., .p2align), dash (e.g., .app-file) and underscore in " CFI directives (e.g., .cfi_startproc). This will also match labels starting " with '.', including the GCC auto-generated '.L' labels. syn match asmDirective "\.[A-Za-z][0-9A-Za-z-_]*" syn case match " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later hi def link asmSection Special hi def link asmLabel Label hi def link asmComment Comment hi def link asmTodo Todo hi def link asmDirective Statement hi def link asmInclude Include hi def link asmCond PreCondit hi def link asmMacro Macro hi def link hexNumber Number hi def link decNumber Number hi def link octNumber Number hi def link binNumber Number hi def link asmIdentifier Identifier hi def link asmType Type let b:current_syntax = "asm" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&] bvim80/syntax/sdl.vimnu[" Vim syntax file " Language: SDL " Maintainer: Michael Piefel " Last Change: 2 May 2001 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("sdl_2000") syntax case ignore endif " A bunch of useful SDL keywords syn keyword sdlStatement task else nextstate syn keyword sdlStatement in out with from interface syn keyword sdlStatement to via env and use syn keyword sdlStatement process procedure block system service type syn keyword sdlStatement endprocess endprocedure endblock endsystem syn keyword sdlStatement package endpackage connection endconnection syn keyword sdlStatement channel endchannel connect syn keyword sdlStatement synonym dcl signal gate timer signallist signalset syn keyword sdlStatement create output set reset call syn keyword sdlStatement operators literals syn keyword sdlStatement active alternative any as atleast constants syn keyword sdlStatement default endalternative endmacro endoperator syn keyword sdlStatement endselect endsubstructure external syn keyword sdlStatement if then fi for import macro macrodefinition syn keyword sdlStatement macroid mod nameclass nodelay not operator or syn keyword sdlStatement parent provided referenced rem syn keyword sdlStatement select spelling substructure xor syn keyword sdlNewState state endstate syn keyword sdlInput input start stop return none save priority syn keyword sdlConditional decision enddecision join syn keyword sdlVirtual virtual redefined finalized adding inherits syn keyword sdlExported remote exported export if !exists("sdl_no_96") syn keyword sdlStatement all axioms constant endgenerator endrefinement endservice syn keyword sdlStatement error fpar generator literal map noequality ordering syn keyword sdlStatement refinement returns revealed reverse service signalroute syn keyword sdlStatement view viewed syn keyword sdlExported imported endif if exists("sdl_2000") syn keyword sdlStatement abstract aggregation association break choice composition syn keyword sdlStatement continue endmethod handle method syn keyword sdlStatement ordered private protected public syn keyword sdlException exceptionhandler endexceptionhandler onexception syn keyword sdlException catch new raise " The same in uppercase syn keyword sdlStatement TASK ELSE NEXTSTATE syn keyword sdlStatement IN OUT WITH FROM INTERFACE syn keyword sdlStatement TO VIA ENV AND USE syn keyword sdlStatement PROCESS PROCEDURE BLOCK SYSTEM SERVICE TYPE syn keyword sdlStatement ENDPROCESS ENDPROCEDURE ENDBLOCK ENDSYSTEM syn keyword sdlStatement PACKAGE ENDPACKAGE CONNECTION ENDCONNECTION syn keyword sdlStatement CHANNEL ENDCHANNEL CONNECT syn keyword sdlStatement SYNONYM DCL SIGNAL GATE TIMER SIGNALLIST SIGNALSET syn keyword sdlStatement CREATE OUTPUT SET RESET CALL syn keyword sdlStatement OPERATORS LITERALS syn keyword sdlStatement ACTIVE ALTERNATIVE ANY AS ATLEAST CONSTANTS syn keyword sdlStatement DEFAULT ENDALTERNATIVE ENDMACRO ENDOPERATOR syn keyword sdlStatement ENDSELECT ENDSUBSTRUCTURE EXTERNAL syn keyword sdlStatement IF THEN FI FOR IMPORT MACRO MACRODEFINITION syn keyword sdlStatement MACROID MOD NAMECLASS NODELAY NOT OPERATOR OR syn keyword sdlStatement PARENT PROVIDED REFERENCED REM syn keyword sdlStatement SELECT SPELLING SUBSTRUCTURE XOR syn keyword sdlNewState STATE ENDSTATE syn keyword sdlInput INPUT START STOP RETURN NONE SAVE PRIORITY syn keyword sdlConditional DECISION ENDDECISION JOIN syn keyword sdlVirtual VIRTUAL REDEFINED FINALIZED ADDING INHERITS syn keyword sdlExported REMOTE EXPORTED EXPORT syn keyword sdlStatement ABSTRACT AGGREGATION ASSOCIATION BREAK CHOICE COMPOSITION syn keyword sdlStatement CONTINUE ENDMETHOD ENDOBJECT ENDVALUE HANDLE METHOD OBJECT syn keyword sdlStatement ORDERED PRIVATE PROTECTED PUBLIC syn keyword sdlException EXCEPTIONHANDLER ENDEXCEPTIONHANDLER ONEXCEPTION syn keyword sdlException CATCH NEW RAISE endif " String and Character contstants " Highlight special characters (those which have a backslash) differently syn match sdlSpecial contained "\\\d\d\d\|\\." syn region sdlString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial syn region sdlString start=+'+ skip=+''+ end=+'+ " No, this doesn't happen, I just wanted to scare you. SDL really allows all " these characters for identifiers; fortunately, keywords manage without them. " set iskeyword=@,48-57,_,192-214,216-246,248-255,- syn region sdlComment start="/\*" end="\*/" syn region sdlComment start="comment" end=";" syn region sdlComment start="--" end="--\|$" syn match sdlCommentError "\*/" syn keyword sdlOperator present syn keyword sdlType integer real natural duration pid boolean time syn keyword sdlType character charstring ia5string syn keyword sdlType self now sender offspring syn keyword sdlStructure asntype endasntype syntype endsyntype struct if !exists("sdl_no_96") syn keyword sdlStructure newtype endnewtype endif if exists("sdl_2000") syn keyword sdlStructure object endobject value endvalue " The same in uppercase syn keyword sdlStructure OBJECT ENDOBJECT VALUE ENDVALUE syn keyword sdlOperator PRESENT syn keyword sdlType INTEGER NATURAL DURATION PID BOOLEAN TIME syn keyword sdlType CHARSTRING IA5STRING syn keyword sdlType SELF NOW SENDER OFFSPRING syn keyword sdlStructure ASNTYPE ENDASNTYPE SYNTYPE ENDSYNTYPE STRUCT endif " ASN.1 in SDL syn case match syn keyword sdlType SET OF BOOLEAN INTEGER REAL BIT OCTET syn keyword sdlType SEQUENCE CHOICE syn keyword sdlType STRING OBJECT IDENTIFIER NULL syn sync ccomment sdlComment " Define the default highlighting. " Only when an item doesn't have highlighting yet command -nargs=+ Hi hi def hi def link sdlException Label hi def link sdlConditional sdlStatement hi def link sdlVirtual sdlStatement hi def link sdlExported sdlFlag hi def link sdlCommentError sdlError hi def link sdlOperator Operator hi def link sdlStructure sdlType Hi sdlStatement term=bold ctermfg=4 guifg=Blue Hi sdlFlag term=bold ctermfg=4 guifg=Blue gui=italic Hi sdlNewState term=italic ctermfg=2 guifg=Magenta gui=underline Hi sdlInput term=bold guifg=Red hi def link sdlType Type hi def link sdlString String hi def link sdlComment Comment hi def link sdlSpecial Special hi def link sdlError Error delcommand Hi let b:current_syntax = "sdl" " vim: ts=8 PK&]X<<vim80/syntax/gitrebase.vimnu[" Vim syntax file " Language: git rebase --interactive " Maintainer: Tim Pope " Filenames: git-rebase-todo " Last Change: 2016 Aug 29 if exists("b:current_syntax") finish endif syn case match syn match gitrebaseHash "\v<\x{7,40}>" contained syn match gitrebaseCommit "\v<\x{7,40}>" nextgroup=gitrebaseSummary skipwhite syn match gitrebasePick "\v^p%(ick)=>" nextgroup=gitrebaseCommit skipwhite syn match gitrebaseReword "\v^r%(eword)=>" nextgroup=gitrebaseCommit skipwhite syn match gitrebaseEdit "\v^e%(dit)=>" nextgroup=gitrebaseCommit skipwhite syn match gitrebaseSquash "\v^s%(quash)=>" nextgroup=gitrebaseCommit skipwhite syn match gitrebaseFixup "\v^f%(ixup)=>" nextgroup=gitrebaseCommit skipwhite syn match gitrebaseExec "\v^%(x|exec)>" nextgroup=gitrebaseCommand skipwhite syn match gitrebaseDrop "\v^d%(rop)=>" nextgroup=gitrebaseCommit skipwhite syn match gitrebaseSummary ".*" contains=gitrebaseHash contained syn match gitrebaseCommand ".*" contained syn match gitrebaseComment "^#.*" contains=gitrebaseHash syn match gitrebaseSquashError "\v%^%(s%(quash)=>|f%(ixup)=>)" nextgroup=gitrebaseCommit skipwhite hi def link gitrebaseCommit gitrebaseHash hi def link gitrebaseHash Identifier hi def link gitrebasePick Statement hi def link gitrebaseReword Number hi def link gitrebaseEdit PreProc hi def link gitrebaseSquash Type hi def link gitrebaseFixup Special hi def link gitrebaseExec Function hi def link gitrebaseDrop Comment hi def link gitrebaseSummary String hi def link gitrebaseComment Comment hi def link gitrebaseSquashError Error let b:current_syntax = "gitrebase" PK&]ʋ9 9 vim80/syntax/lotos.vimnu[" Vim syntax file " Language: LOTOS (Language Of Temporal Ordering Specifications, IS8807) " Maintainer: Daniel Amyot " Last Change: Wed Aug 19 1998 " URL: http://lotos.csi.uottawa.ca/~damyot/vim/lotos.vim " This file is an adaptation of pascal.vim by Mario Eusebio " I'm not sure I understand all of the syntax highlight language, " but this file seems to do the job for standard LOTOS. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore "Comments in LOTOS are between (* and *) syn region lotosComment start="(\*" end="\*)" contains=lotosTodo "Operators [], [...], >>, ->, |||, |[...]|, ||, ;, !, ?, :, =, ,, := syn match lotosDelimiter "[][]" syn match lotosDelimiter ">>" syn match lotosDelimiter "->" syn match lotosDelimiter "\[>" syn match lotosDelimiter "[|;!?:=,]" "Regular keywords syn keyword lotosStatement specification endspec process endproc syn keyword lotosStatement where behaviour behavior syn keyword lotosStatement any let par accept choice hide of in syn keyword lotosStatement i stop exit noexit "Operators from the Abstract Data Types in IS8807 syn keyword lotosOperator eq ne succ and or xor implies iff syn keyword lotosOperator not true false syn keyword lotosOperator Insert Remove IsIn NotIn Union Ints syn keyword lotosOperator Minus Includes IsSubsetOf syn keyword lotosOperator lt le ge gt 0 "Sorts in IS8807 syn keyword lotosSort Boolean Bool FBoolean FBool Element syn keyword lotosSort Set String NaturalNumber Nat HexString syn keyword lotosSort HexDigit DecString DecDigit syn keyword lotosSort OctString OctDigit BitString Bit syn keyword lotosSort Octet OctetString "Keywords for ADTs syn keyword lotosType type endtype library endlib sorts formalsorts syn keyword lotosType eqns formaleqns opns formalopns forall ofsort is syn keyword lotosType for renamedby actualizedby sortnames opnnames syn keyword lotosType using syn sync lines=250 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link lotosStatement Statement hi def link lotosProcess Label hi def link lotosOperator Operator hi def link lotosSort Function hi def link lotosType Type hi def link lotosComment Comment hi def link lotosDelimiter String let b:current_syntax = "lotos" " vim: ts=8 PK&]3SKKvim80/syntax/sqloracle.vimnu[" Vim syntax file " Language: SQL, PL/SQL (Oracle 11g) " Maintainer: Christian Brabandt " Repository: https://github.com/chrisbra/vim-sqloracle-syntax " License: Vim " Previous Maintainer: Paul Moore " Last Change: 2016 Jul 22 " Changes: " 02.04.2016: Support for when keyword " 03.04.2016: Support for join related keywords " 22.07.2016: Support Oracle Q-Quote-Syntax if exists("b:current_syntax") finish endif syn case ignore " The SQL reserved words, defined as keywords. syn keyword sqlSpecial false null true syn keyword sqlKeyword access add as asc begin by case check cluster column syn keyword sqlKeyword cache compress connect current cursor decimal default desc syn keyword sqlKeyword else elsif end exception exclusive file for from syn keyword sqlKeyword function group having identified if immediate increment syn keyword sqlKeyword index initial initrans into is level link logging loop syn keyword sqlKeyword maxextents maxtrans mode modify monitoring syn keyword sqlKeyword nocache nocompress nologging noparallel nowait of offline on online start syn keyword sqlKeyword parallel successful synonym table tablespace then to trigger uid syn keyword sqlKeyword unique user validate values view when whenever syn keyword sqlKeyword where with option order pctfree pctused privileges procedure syn keyword sqlKeyword public resource return row rowlabel rownum rows syn keyword sqlKeyword session share size smallint type using syn keyword sqlKeyword join cross inner outer left right syn keyword sqlOperator not and or syn keyword sqlOperator in any some all between exists syn keyword sqlOperator like escape syn keyword sqlOperator union intersect minus syn keyword sqlOperator prior distinct syn keyword sqlOperator sysdate out syn keyword sqlStatement analyze audit comment commit syn keyword sqlStatement delete drop execute explain grant lock noaudit syn keyword sqlStatement rename revoke rollback savepoint set syn keyword sqlStatement truncate " next ones are contained, so folding works. syn keyword sqlStatement create update alter select insert contained syn keyword sqlType boolean char character date float integer long syn keyword sqlType mlslabel number raw rowid varchar varchar2 varray " Strings: syn region sqlString matchgroup=Quote start=+"+ skip=+\\\\\|\\"+ end=+"+ syn region sqlString matchgroup=Quote start=+'+ skip=+\\\\\|\\'+ end=+'+ syn region sqlString matchgroup=Quote start=+n\?q'\z([^[(<{]\)+ end=+\z1'+ syn region sqlString matchgroup=Quote start=+n\?q'<+ end=+>'+ syn region sqlString matchgroup=Quote start=+n\?q'{+ end=+}'+ syn region sqlString matchgroup=Quote start=+n\?q'(+ end=+)'+ syn region sqlString matchgroup=Quote start=+n\?q'\[+ end=+]'+ " Numbers: syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>" " Comments: syn region sqlComment start="/\*" end="\*/" contains=sqlTodo,@Spell fold syn match sqlComment "--.*$" contains=sqlTodo,@Spell " Setup Folding: " this is a hack, to get certain statements folded. " the keywords create/update/alter/select/insert need to " have contained option. syn region sqlFold start='^\s*\zs\c\(Create\|Update\|Alter\|Select\|Insert\)' end=';$\|^$' transparent fold contains=ALL syn sync ccomment sqlComment " Functions: " (Oracle 11g) " Aggregate Functions syn keyword sqlFunction avg collect corr corr_s corr_k count covar_pop covar_samp cume_dist dense_rank first syn keyword sqlFunction group_id grouping grouping_id last max median min percentile_cont percentile_disc percent_rank rank syn keyword sqlFunction regr_slope regr_intercept regr_count regr_r2 regr_avgx regr_avgy regr_sxx regr_syy regr_sxy syn keyword sqlFunction stats_binomial_test stats_crosstab stats_f_test stats_ks_test stats_mode stats_mw_test syn keyword sqlFunction stats_one_way_anova stats_t_test_one stats_t_test_paired stats_t_test_indep stats_t_test_indepu syn keyword sqlFunction stats_wsr_test stddev stddev_pop stddev_samp sum syn keyword sqlFunction sys_xmlagg var_pop var_samp variance xmlagg " Char Functions syn keyword sqlFunction ascii chr concat initcap instr length lower lpad ltrim syn keyword sqlFunction nls_initcap nls_lower nlssort nls_upper regexp_instr regexp_replace syn keyword sqlFunction regexp_substr replace rpad rtrim soundex substr translate treat trim upper " Comparison Functions syn keyword sqlFunction greatest least " Conversion Functions syn keyword sqlFunction asciistr bin_to_num cast chartorowid compose convert syn keyword sqlFunction decompose hextoraw numtodsinterval numtoyminterval rawtohex rawtonhex rowidtochar syn keyword sqlFunction rowidtonchar scn_to_timestamp timestamp_to_scn to_binary_double to_binary_float syn keyword sqlFunction to_char to_char to_char to_clob to_date to_dsinterval to_lob to_multi_byte syn keyword sqlFunction to_nchar to_nchar to_nchar to_nclob to_number to_dsinterval to_single_byte syn keyword sqlFunction to_timestamp to_timestamp_tz to_yminterval to_yminterval translate unistr " DataMining Functions syn keyword sqlFunction cluster_id cluster_probability cluster_set feature_id feature_set syn keyword sqlFunction feature_value prediction prediction_bounds prediction_cost syn keyword sqlFunction prediction_details prediction_probability prediction_set " Datetime Functions syn keyword sqlFunction add_months current_date current_timestamp dbtimezone extract syn keyword sqlFunction from_tz last_day localtimestamp months_between new_time syn keyword sqlFunction next_day numtodsinterval numtoyminterval round sessiontimezone syn keyword sqlFunction sys_extract_utc sysdate systimestamp to_char to_timestamp syn keyword sqlFunction to_timestamp_tz to_dsinterval to_yminterval trunc tz_offset " Numeric Functions syn keyword sqlFunction abs acos asin atan atan2 bitand ceil cos cosh exp syn keyword sqlFunction floor ln log mod nanvl power remainder round sign syn keyword sqlFunction sin sinh sqrt tan tanh trunc width_bucket " NLS Functions syn keyword sqlFunction ls_charset_decl_len nls_charset_id nls_charset_name " Various Functions syn keyword sqlFunction bfilename cardin coalesce collect decode dump empty_blob empty_clob syn keyword sqlFunction lnnvl nullif nvl nvl2 ora_hash powermultiset powermultiset_by_cardinality syn keyword sqlFunction sys_connect_by_path sys_context sys_guid sys_typeid uid user userenv vsizeality " XML Functions syn keyword sqlFunction appendchildxml deletexml depth extract existsnode extractvalue insertchildxml syn keyword sqlFunction insertxmlbefore path sys_dburigen sys_xmlagg sys_xmlgen updatexml xmlagg xmlcast syn keyword sqlFunction xmlcdata xmlcolattval xmlcomment xmlconcat xmldiff xmlelement xmlexists xmlforest syn keyword sqlFunction xmlparse xmlpatch xmlpi xmlquery xmlroot xmlsequence xmlserialize xmltable xmltransform " Todo: syn keyword sqlTodo TODO FIXME XXX DEBUG NOTE contained " Define the default highlighting. hi def link Quote Special hi def link sqlComment Comment hi def link sqlFunction Function hi def link sqlKeyword sqlSpecial hi def link sqlNumber Number hi def link sqlOperator sqlStatement hi def link sqlSpecial Special hi def link sqlStatement Statement hi def link sqlString String hi def link sqlType Type hi def link sqlTodo Todo let b:current_syntax = "sql" " vim: ts=8 PK&]A~vim80/syntax/tt2html.vimnu[" Language: TT2 embedded with HTML " Maintainer: vim-perl " Author: Moriki, Atsushi <4woods+vim@gmail.com> " Homepage: http://github.com/vim-perl/vim-perl " Bugs/requests: http://github.com/vim-perl/vim-perl/issues " Last Change: 2013-07-21 if exists("b:current_syntax") finish endif runtime! syntax/html.vim unlet b:current_syntax runtime! syntax/tt2.vim unlet b:current_syntax syn cluster htmlPreProc add=@tt2_top_cluster let b:current_syntax = "tt2html" PK&]>tvim80/syntax/modula3.vimnu[" Vim syntax file " Language: Modula-3 " Maintainer: Timo Pedersen " Last Change: 2001 May 10 " Basic things only... " Based on the modula 2 syntax file " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Modula-3 is case-sensitive " syn case ignore " Modula-3 keywords syn keyword modula3Keyword ABS ADDRES ADR ADRSIZE AND ANY syn keyword modula3Keyword ARRAY AS BITS BITSIZE BOOLEAN BRANDED BY BYTESIZE syn keyword modula3Keyword CARDINAL CASE CEILING CHAR CONST DEC DEFINITION syn keyword modula3Keyword DISPOSE DIV syn keyword modula3Keyword EVAL EXIT EXCEPT EXCEPTION syn keyword modula3Keyword EXIT EXPORTS EXTENDED FALSE FINALLY FIRST FLOAT syn keyword modula3Keyword FLOOR FROM GENERIC IMPORT syn keyword modula3Keyword IN INC INTEGER ISTYPE LAST LOCK syn keyword modula3Keyword LONGREAL LOOPHOLE MAX METHOD MIN MOD MUTEX syn keyword modula3Keyword NARROW NEW NIL NOT NULL NUMBER OF OR ORD RAISE syn keyword modula3Keyword RAISES READONLY REAL RECORD REF REFANY syn keyword modula3Keyword RETURN ROOT syn keyword modula3Keyword ROUND SET SUBARRAY TEXT TRUE TRUNC TRY TYPE syn keyword modula3Keyword TYPECASE TYPECODE UNSAFE UNTRACED VAL VALUE VAR WITH " Special keywords, block delimiters etc syn keyword modula3Block PROCEDURE FUNCTION MODULE INTERFACE REPEAT THEN syn keyword modula3Block BEGIN END OBJECT METHODS OVERRIDES RECORD REVEAL syn keyword modula3Block WHILE UNTIL DO TO IF FOR ELSIF ELSE LOOP " Comments syn region modula3Comment start="(\*" end="\*)" " Strings syn region modula3String start=+"+ end=+"+ syn region modula3String start=+'+ end=+'+ " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later hi def link modula3Keyword Statement hi def link modula3Block PreProc hi def link modula3Comment Comment hi def link modula3String String let b:current_syntax = "modula3" "I prefer to use this... "set ai "vim: ts=8 PK&]QKك%%vim80/syntax/mrxvtrc.vimnu[" Description : Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up) " Created : Wed 26 Apr 2006 01:20:53 AM CDT " Modified : Thu 02 Feb 2012 08:37:45 PM EST " Maintainer : GI , where a='gi1242+vim', b='gmail', c='com' " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case match " Errors syn match mrxvtrcError contained '\v\S+' " Comments syn match mrxvtrcComment contains=@Spell '^\s*[!#].*$' syn match mrxvtrcComment '\v^\s*[#!]\s*\w+[.*]\w+.*:.*' " " Options. " syn match mrxvtrcClass '\v^\s*\w+[.*]' \ nextgroup=mrxvtrcOptions,mrxvtrcProfile,@mrxvtrcPOpts,mrxvtrcError " Boolean options syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError \ highlightTabOnBell syncTabTitle hideTabbar \ autohideTabbar bottomTabbar hideButtons \ syncTabIcon veryBoldFont maximized \ fullscreen reverseVideo loginShell \ jumpScroll scrollBar scrollbarRight \ scrollbarFloating scrollTtyOutputInhibit \ scrollTtyKeypress transparentForce \ transparentScrollbar transparentMenubar \ transparentTabbar tabUsePixmap utmpInhibit \ visualBell mapAlert meta8 \ mouseWheelScrollPage multibyte_cursor \ tripleclickwords showMenu xft xftNomFont \ xftSlowOutput xftAntialias xftHinting \ xftAutoHint xftGlobalAdvance cmdAllTabs \ protectSecondary thai borderLess \ overrideRedirect broadcast smartResize \ pointerBlank cursorBlink noSysConfig \ disableMacros linuxHomeEndKey sessionMgt \ boldColors smoothResize useFifo veryBright syn match mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError \ '\v' syn match mrxvtrcBColon contained skipwhite \ nextgroup=mrxvtrcBoolVal,mrxvtrcError ':' syn case ignore syn keyword mrxvtrcBoolVal contained skipwhite nextgroup=mrxvtrcError \ 0 1 yes no on off true false syn case match " Color options syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError \ ufBackground textShadow tabForeground \ itabForeground tabBackground itabBackground \ scrollColor troughColor highlightColor \ cursorColor cursorColor2 pointerColor \ borderColor tintColor syn match mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError \ '\v' syn match mrxvtrcCColon contained skipwhite \ nextgroup=mrxvtrcColorVal ':' syn match mrxvtrcColorVal contained skipwhite nextgroup=mrxvtrcError \ '\v#[0-9a-fA-F]{6}' " Numeric options syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcNColon,mrxvtrcError \ maxTabWidth minVisibleTabs \ scrollbarThickness xftmSize xftSize desktop \ externalBorder internalBorder lineSpace \ pointerBlankDelay cursorBlinkInterval \ shading backgroundFade bgRefreshInterval \ fading opacity opacityDegree xftPSize syn match mrxvtrcNColon contained skipwhite \ nextgroup=mrxvtrcNumVal,mrxvtrcError ':' syn match mrxvtrcNumVal contained skipwhite nextgroup=mrxvtrcError \ '\v[+-]?<(0[0-7]+|\d+|0x[0-9a-f]+)>' " String options syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError \ tabTitle termName title clientName iconName \ bellCommand backspaceKey deleteKey \ printPipe cutChars answerbackString \ smClientID geometry path boldFont xftFont \ xftmFont xftPFont inputMethod \ greektoggle_key menu menubarPixmap \ scrollbarPixmap tabbarPixmap appIcon \ multichar_encoding initProfileList syn match mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError \ '\v' syn match mrxvtrcSColon contained skipwhite nextgroup=mrxvtrcStrVal ':' syn match mrxvtrcStrVal contained '\v\S.*' " Profile options syn cluster mrxvtrcPOpts contains=mrxvtrcPSOpts,mrxvtrcPCOpts,mrxvtrcPNOpts syn match mrxvtrcProfile contained nextgroup=@mrxvtrcPOpts,mrxvtrcError \ '\vprofile\d+\.' syn keyword mrxvtrcPSOpts contained nextgroup=mrxvtrcSColon,mrxvtrcError \ tabTitle command holdExitText holdExitTitle \ Pixmap workingDirectory titleFormat \ winTitleFormat syn keyword mrxvtrcPCOpts contained nextgroup=mrxvtrcCColon,mrxvtrcError \ background foreground syn keyword mrxvtrcPNOpts contained nextgroup=mrxvtrcNColon,mrxvtrcError \ holdExit saveLines " scrollbarStyle syn match mrxvtrcOptions contained skipwhite \ nextgroup=mrxvtrcSBstyle,mrxvtrcError \ '\v' " " Highlighting groups " hi def link mrxvtrcError Error hi def link mrxvtrcComment Comment hi def link mrxvtrcClass Statement hi def link mrxvtrcOptions mrxvtrcClass hi def link mrxvtrcBColon mrxvtrcClass hi def link mrxvtrcCColon mrxvtrcClass hi def link mrxvtrcNColon mrxvtrcClass hi def link mrxvtrcSColon mrxvtrcClass hi def link mrxvtrcProfile mrxvtrcClass hi def link mrxvtrcPSOpts mrxvtrcClass hi def link mrxvtrcPCOpts mrxvtrcClass hi def link mrxvtrcPNOpts mrxvtrcClass hi def link mrxvtrcBoolVal Boolean hi def link mrxvtrcStrVal String hi def link mrxvtrcColorVal Constant hi def link mrxvtrcNumVal Number hi def link mrxvtrcSBstyle mrxvtrcStrVal hi def link mrxvtrcSBalign mrxvtrcStrVal hi def link mrxvtrcTSmode mrxvtrcStrVal hi def link mrxvtrcGrkKbd mrxvtrcStrVal hi def link mrxvtrcXftWt mrxvtrcStrVal hi def link mrxvtrcXftSl mrxvtrcStrVal hi def link mrxvtrcXftWd mrxvtrcStrVal hi def link mrxvtrcXftHt mrxvtrcStrVal hi def link mrxvtrcPedit mrxvtrcStrVal hi def link mrxvtrcMod mrxvtrcStrVal hi def link mrxvtrcSelSty mrxvtrcStrVal hi def link mrxvtrcMacro Identifier hi def link mrxvtrcKey mrxvtrcClass hi def link mrxvtrcTitle mrxvtrcStrVal hi def link mrxvtrcShell Special hi def link mrxvtrcCmd PreProc hi def link mrxvtrcSubwin mrxvtrcStrVal let b:current_syntax = "mrxvtrc" let &cpo = s:cpo_save unlet s:cpo_save PK&]Pd vim80/syntax/pilrc.vimnu[" Vim syntax file " Language: pilrc - a resource compiler for Palm OS development " Maintainer: Brian Schau " Last change: 2003 May 11 " Available on: http://www.schau.com/pilrcvim/pilrc.vim " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " Notes: TRANSPARENT, FONT and FONT ID are defined in the specials " section below. Beware of the order of the specials! " Look in the syntax.txt and usr_27.txt files in vim\vim{version}\doc " directory for regexps etc. " Keywords - basic syn keyword pilrcKeyword ALERT APPLICATION APPLICATIONICONNAME AREA syn keyword pilrcKeyword BITMAP BITMAPCOLOR BITMAPCOLOR16 BITMAPCOLOR16K syn keyword pilrcKeyword BITMAPFAMILY BITMAPFAMILYEX BITMAPFAMILYSPECIAL syn keyword pilrcKeyword BITMAPGREY BITMAPGREY16 BITMAPSCREENFAMILY syn keyword pilrcKeyword BOOTSCREENFAMILY BUTTON BUTTONS BYTELIST syn keyword pilrcKeyword CATEGORIES CHECKBOX COUNTRYLOCALISATION syn keyword pilrcKeyword DATA syn keyword pilrcKeyword FEATURE FIELD FONTINDEX FORM FORMBITMAP syn keyword pilrcKeyword GADGET GENERATEHEADER syn keyword pilrcKeyword GRAFFITIINPUTAREA GRAFFITISTATEINDICATOR syn keyword pilrcKeyword HEX syn keyword pilrcKeyword ICON ICONFAMILY ICONFAMILYEX INTEGER syn keyword pilrcKeyword KEYBOARD syn keyword pilrcKeyword LABEL LAUNCHERCATEGORY LIST LONGWORDLIST syn keyword pilrcKeyword MENU MENUITEM MESSAGE MIDI syn keyword pilrcKeyword PALETTETABLE POPUPLIST POPUPTRIGGER syn keyword pilrcKeyword PULLDOWN PUSHBUTTON syn keyword pilrcKeyword REPEATBUTTON RESETAUTOID syn keyword pilrcKeyword SCROLLBAR SELECTORTRIGGER SLIDER SMALLICON syn keyword pilrcKeyword SMALLICONFAMILY SMALLICONFAMILYEX STRING STRINGTABLE syn keyword pilrcKeyword TABLE TITLE TRANSLATION TRAP syn keyword pilrcKeyword VERSION syn keyword pilrcKeyword WORDLIST " Types syn keyword pilrcType AT AUTOSHIFT syn keyword pilrcType BACKGROUNDID BITMAPID BOLDFRAME BPP syn keyword pilrcType CHECKED COLORTABLE COLUMNS COLUMNWIDTHS COMPRESS syn keyword pilrcType COMPRESSBEST COMPRESSPACKBITS COMPRESSRLE COMPRESSSCANLINE syn keyword pilrcType CONFIRMATION COUNTRY CREATOR CURRENCYDECIMALPLACES syn keyword pilrcType CURRENCYNAME CURRENCYSYMBOL CURRENCYUNIQUESYMBOL syn keyword pilrcType DATEFORMAT DAYLIGHTSAVINGS DEFAULTBTNID DEFAULTBUTTON syn keyword pilrcType DENSITY DISABLED DYNAMICSIZE syn keyword pilrcType EDITABLE ENTRY ERROR EXTENDED syn keyword pilrcType FEEDBACK FILE FONTID FORCECOMPRESS FRAME syn keyword pilrcType GRAFFITI GRAPHICAL GROUP syn keyword pilrcType HASSCROLLBAR HELPID syn keyword pilrcType ID INDEX INFORMATION syn keyword pilrcType KEYDOWNCHR KEYDOWNKEYCODE KEYDOWNMODIFIERS syn keyword pilrcType LANGUAGE LEFTALIGN LEFTANCHOR LONGDATEFORMAT syn keyword pilrcType MAX MAXCHARS MEASUREMENTSYSTEM MENUID MIN LOCALE syn keyword pilrcType MINUTESWESTOFGMT MODAL MULTIPLELINES syn keyword pilrcType NAME NOCOLORTABLE NOCOMPRESS NOFRAME NONEDITABLE syn keyword pilrcType NONEXTENDED NONUSABLE NOSAVEBEHIND NUMBER NUMBERFORMAT syn keyword pilrcType NUMERIC syn keyword pilrcType PAGESIZE syn keyword pilrcType RECTFRAME RIGHTALIGN RIGHTANCHOR ROWS syn keyword pilrcType SAVEBEHIND SEARCH SCREEN SELECTEDBITMAPID SINGLELINE syn keyword pilrcType THUMBID TRANSPARENTINDEX TIMEFORMAT syn keyword pilrcType UNDERLINED USABLE syn keyword pilrcType VALUE VERTICAL VISIBLEITEMS syn keyword pilrcType WARNING WEEKSTARTDAY " Country syn keyword pilrcCountry Australia Austria Belgium Brazil Canada Denmark syn keyword pilrcCountry Finland France Germany HongKong Iceland Indian syn keyword pilrcCountry Indonesia Ireland Italy Japan Korea Luxembourg Malaysia syn keyword pilrcCountry Mexico Netherlands NewZealand Norway Philippines syn keyword pilrcCountry RepChina Singapore Spain Sweden Switzerland Thailand syn keyword pilrcCountry Taiwan UnitedKingdom UnitedStates " Language syn keyword pilrcLanguage English French German Italian Japanese Spanish " String syn match pilrcString "\"[^"]*\"" " Number syn match pilrcNumber "\<0x\x\+\>" syn match pilrcNumber "\<\d\+\>" " Comment syn region pilrcComment start="/\*" end="\*/" syn region pilrcComment start="//" end="$" " Constants syn keyword pilrcConstant AUTO AUTOID BOTTOM CENTER PREVBOTTOM PREVHEIGHT syn keyword pilrcConstant PREVLEFT PREVRIGHT PREVTOP PREVWIDTH RIGHT syn keyword pilrcConstant SEPARATOR " Identifier syn match pilrcIdentifier "\<\h\w*\>" " Specials syn match pilrcType "\" syn match pilrcKeyword "\\s*\" syn match pilrcType "\" " Function syn keyword pilrcFunction BEGIN END " Include syn match pilrcInclude "\#include" syn match pilrcInclude "\#define" syn keyword pilrcInclude equ syn keyword pilrcInclude package syn region pilrcInclude start="public class" end="}" syn sync ccomment pilrcComment " The default methods for highlighting hi def link pilrcKeyword Statement hi def link pilrcType Type hi def link pilrcError Error hi def link pilrcCountry SpecialChar hi def link pilrcLanguage SpecialChar hi def link pilrcString SpecialChar hi def link pilrcNumber Number hi def link pilrcComment Comment hi def link pilrcConstant Constant hi def link pilrcFunction Function hi def link pilrcInclude SpecialChar hi def link pilrcIdentifier Number let b:current_syntax = "pilrc" PK&]{%; ; vim80/syntax/inittab.vimnu[" Vim syntax file " This is a GENERATED FILE. Please always refer to source file at the URI below. " Language: SysV-compatible init process control file `inittab' " Maintainer: David Ne\v{c}as (Yeti) " Last Change: 2002-09-13 " URL: http://physics.muni.cz/~yeti/download/syntax/inittab.vim " Setup " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case match " Base constructs syn match inittabError "[^:]\+:"me=e-1 contained syn match inittabError "[^:]\+$" contained syn match inittabComment "^[#:].*$" contains=inittabFixme syn match inittabComment "#.*$" contained contains=inittabFixme syn keyword inittabFixme FIXME TODO XXX NOT " Shell syn region inittabShString start=+"+ end=+"+ skip=+\\\\\|\\\"+ contained syn region inittabShString start=+'+ end=+'+ contained syn match inittabShOption "\s[-+][[:alnum:]]\+"ms=s+1 contained syn match inittabShOption "\s--[:alnum:][-[:alnum:]]*"ms=s+1 contained syn match inittabShCommand "/\S\+" contained syn cluster inittabSh add=inittabShOption,inittabShString,inittabShCommand " Keywords syn keyword inittabActionName respawn wait once boot bootwait off ondemand sysinit powerwait powerfail powerokwait powerfailnow ctrlaltdel kbrequest initdefault contained " Line parser syn match inittabId "^[[:alnum:]~]\{1,4}" nextgroup=inittabColonRunLevels,inittabError syn match inittabColonRunLevels ":" contained nextgroup=inittabRunLevels,inittabColonAction,inittabError syn match inittabRunLevels "[0-6A-Ca-cSs]\+" contained nextgroup=inittabColonAction,inittabError syn match inittabColonAction ":" contained nextgroup=inittabAction,inittabError syn match inittabAction "\w\+" contained nextgroup=inittabColonProcess,inittabError contains=inittabActionName syn match inittabColonProcess ":" contained nextgroup=inittabProcessPlus,inittabProcess,inittabError syn match inittabProcessPlus "+" contained nextgroup=inittabProcess,inittabError syn region inittabProcess start="/" end="$" transparent oneline contained contains=@inittabSh,inittabComment " Define the default highlighting hi def link inittabComment Comment hi def link inittabFixme Todo hi def link inittabActionName Type hi def link inittabError Error hi def link inittabId Identifier hi def link inittabRunLevels Special hi def link inittabColonProcess inittabColon hi def link inittabColonAction inittabColon hi def link inittabColonRunLevels inittabColon hi def link inittabColon PreProc hi def link inittabShString String hi def link inittabShOption Special hi def link inittabShCommand Statement let b:current_syntax = "inittab" PK&]QZR  vim80/syntax/ampl.vimnu[" Language: ampl (A Mathematical Programming Language) " Maintainer: Krief David or " Last Change: 2003 May 11 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif "-- syn match amplEntityKeyword "\(subject to\)\|\(subj to\)\|\(s\.t\.\)" syn keyword amplEntityKeyword minimize maximize objective syn keyword amplEntityKeyword coeff coef cover obj default syn keyword amplEntityKeyword from to to_come net_in net_out syn keyword amplEntityKeyword dimen dimension "-- syn keyword amplType integer binary set param var syn keyword amplType node ordered circular reversed symbolic syn keyword amplType arc "-- syn keyword amplStatement check close \display drop include syn keyword amplStatement print printf quit reset restore syn keyword amplStatement solve update write shell model syn keyword amplStatement data option let solution fix syn keyword amplStatement unfix end function pipe format "-- syn keyword amplConditional if then else and or syn keyword amplConditional exists forall in not within "-- syn keyword amplRepeat while repeat for "-- syn keyword amplOperators union diff difference symdiff sum syn keyword amplOperators inter intersect intersection cross setof syn keyword amplOperators by less mod div product "syn keyword amplOperators min max "conflict between functions max, min and operators max, min syn match amplBasicOperators "||\|<=\|==\|\^\|<\|=\|!\|-\|\.\.\|:=" syn match amplBasicOperators "&&\|>=\|!=\|\*\|>\|:\|/\|+\|\*\*" "-- syn match amplComment "\#.*" syn region amplComment start=+\/\*+ end=+\*\/+ syn region amplStrings start=+\'+ skip=+\\'+ end=+\'+ syn region amplStrings start=+\"+ skip=+\\"+ end=+\"+ syn match amplNumerics "[+-]\=\<\d\+\(\.\d\+\)\=\([dDeE][-+]\=\d\+\)\=\>" syn match amplNumerics "[+-]\=Infinity" "-- syn keyword amplSetFunction card next nextw prev prevw syn keyword amplSetFunction first last member ord ord0 syn keyword amplBuiltInFunction abs acos acosh alias asin syn keyword amplBuiltInFunction asinh atan atan2 atanh ceil syn keyword amplBuiltInFunction cos exp floor log log10 syn keyword amplBuiltInFunction max min precision round sin syn keyword amplBuiltInFunction sinh sqrt tan tanh trunc syn keyword amplRandomGenerator Beta Cauchy Exponential Gamma Irand224 syn keyword amplRandomGenerator Normal Poisson Uniform Uniform01 "-- to highlight the 'dot-suffixes' syn match amplDotSuffix "\h\w*\.\(lb\|ub\)"hs=e-2 syn match amplDotSuffix "\h\w*\.\(lb0\|lb1\|lb2\|lrc\|ub0\)"hs=e-3 syn match amplDotSuffix "\h\w*\.\(ub1\|ub2\|urc\|val\|lbs\|ubs\)"hs=e-3 syn match amplDotSuffix "\h\w*\.\(init\|body\|dinit\|dual\)"hs=e-4 syn match amplDotSuffix "\h\w*\.\(init0\|ldual\|slack\|udual\)"hs=e-5 syn match amplDotSuffix "\h\w*\.\(lslack\|uslack\|dinit0\)"hs=e-6 "-- syn match amplPiecewise "<<\|>>" "-- Todo. syn keyword amplTodo contained TODO FIXME XXX " The default methods for highlighting. Can be overridden later. hi def link amplEntityKeyword Keyword hi def link amplType Type hi def link amplStatement Statement hi def link amplOperators Operator hi def link amplBasicOperators Operator hi def link amplConditional Conditional hi def link amplRepeat Repeat hi def link amplStrings String hi def link amplNumerics Number hi def link amplSetFunction Function hi def link amplBuiltInFunction Function hi def link amplRandomGenerator Function hi def link amplComment Comment hi def link amplDotSuffix Special hi def link amplPiecewise Special let b:current_syntax = "ampl" " vim: ts=8 PK&]4zZ''vim80/syntax/modsim3.vimnu[" Vim syntax file " Language: Modsim III, by compuware corporation (www.compuware.com) " Maintainer: Philipp Jocham " Extension: *.mod " Last Change: 2001 May 10 " " 2001 March 24: " - Modsim III is a registered trademark from compuware corporation " - made compatible with Vim 6.0 " " 1999 Apr 22 : Changed modsim3Literal from region to match " " very basic things only (based on the modula2 and c files). " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " syn case match " case sensitiv match is default " A bunch of keywords syn keyword modsim3Keyword ACTID ALL AND AS ASK syn keyword modsim3Keyword BY CALL CASE CLASS CONST DIV syn keyword modsim3Keyword DOWNTO DURATION ELSE ELSIF EXIT FALSE FIXED FOR syn keyword modsim3Keyword FOREACH FORWARD IF IN INHERITED INOUT syn keyword modsim3Keyword INTERRUPT LOOP syn keyword modsim3Keyword MOD MONITOR NEWVALUE syn keyword modsim3Keyword NONMODSIM NOT OBJECT OF ON OR ORIGINAL OTHERWISE OUT syn keyword modsim3Keyword OVERRIDE PRIVATE PROTO REPEAT syn keyword modsim3Keyword RETURN REVERSED SELF STRERR TELL syn keyword modsim3Keyword TERMINATE THISMETHOD TO TRUE TYPE UNTIL VALUE VAR syn keyword modsim3Keyword WAIT WAITFOR WHEN WHILE WITH " Builtin functions and procedures syn keyword modsim3Builtin ABS ACTIVATE ADDMONITOR CAP CHARTOSTR CHR CLONE syn keyword modsim3Builtin DEACTIVATE DEC DISPOSE FLOAT GETMONITOR HIGH INC syn keyword modsim3Builtin INPUT INSERT INTTOSTR ISANCESTOR LOW LOWER MAX MAXOF syn keyword modsim3Builtin MIN MINOF NEW OBJTYPEID OBJTYPENAME OBJVARID ODD syn keyword modsim3Builtin ONERROR ONEXIT ORD OUTPUT POSITION PRINT REALTOSTR syn keyword modsim3Builtin REPLACE REMOVEMONITOR ROUND SCHAR SIZEOF SPRINT syn keyword modsim3Builtin STRLEN STRTOCHAR STRTOINT STRTOREAL SUBSTR TRUNC syn keyword modsim3Builtin UPDATEVALUE UPPER VAL syn keyword modsim3BuiltinNoParen HALT TRACE " Special keywords syn keyword modsim3Block PROCEDURE METHOD MODULE MAIN DEFINITION IMPLEMENTATION syn keyword modsim3Block BEGIN END syn keyword modsim3Include IMPORT FROM syn keyword modsim3Type ANYARRAY ANYOBJ ANYREC ARRAY BOOLEAN CHAR INTEGER syn keyword modsim3Type LMONITORED LRMONITORED NILARRAY NILOBJ NILREC REAL syn keyword modsim3Type RECORD RMONITOR RMONITORED STRING " catch errros cause by wrong parenthesis " slight problem with "( *)" or "(* )". Hints? syn region modsim3Paren transparent start='(' end=')' contains=ALLBUT,modsim3ParenError syn match modsim3ParenError ")" " Comments syn region modsim3Comment1 start="{" end="}" contains=modsim3Comment1,modsim3Comment2 syn region modsim3Comment2 start="(\*" end="\*)" contains=modsim3Comment1,modsim3Comment2 " highlighting is wrong for constructs like "{ (* } *)", " which are allowed in Modsim III, but " I think something like that shouldn't be used anyway. " Strings syn region modsim3String start=+"+ end=+"+ " Literals "syn region modsim3Literal start=+'+ end=+'+ syn match modsim3Literal "'[^']'\|''''" " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later hi def link modsim3Keyword Statement hi def link modsim3Block Statement hi def link modsim3Comment1 Comment hi def link modsim3Comment2 Comment hi def link modsim3String String hi def link modsim3Literal Character hi def link modsim3Include Statement hi def link modsim3Type Type hi def link modsim3ParenError Error hi def link modsim3Builtin Function hi def link modsim3BuiltinNoParen Function let b:current_syntax = "modsim3" " vim: ts=8 sw=2 PK&]Q4y66vim80/syntax/rmd.vimnu[" markdown Text with R statements " Language: markdown with R code chunks " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Sat Jan 28, 2017 10:06PM " " CONFIGURATION: " To highlight chunk headers as R code, put in your vimrc (e.g. .config/nvim/init.vim): " let rmd_syn_hl_chunk = 1 " " For highlighting pandoc extensions to markdown like citations and TeX and " many other advanced features like folding of markdown sections, it is " recommended to install the vim-pandoc filetype plugin as well as the " vim-pandoc-syntax filetype plugin from https://github.com/vim-pandoc. " " TODO: " - Provide highlighting for rmarkdown parameters in yaml header if exists("b:current_syntax") finish endif " load all of pandoc info, e.g. from " https://github.com/vim-pandoc/vim-pandoc-syntax runtime syntax/pandoc.vim if exists("b:current_syntax") let rmdIsPandoc = 1 unlet b:current_syntax else let rmdIsPandoc = 0 runtime syntax/markdown.vim if exists("b:current_syntax") unlet b:current_syntax endif " load all of the yaml syntax highlighting rules into @yaml syntax include @yaml syntax/yaml.vim if exists("b:current_syntax") unlet b:current_syntax endif " highlight yaml block commonly used for front matter syntax region rmdYamlBlock matchgroup=rmdYamlBlockDelim start="^---" matchgroup=rmdYamlBlockDelim end="^---" contains=@yaml keepend fold endif if !exists("g:rmd_syn_langs") let g:rmd_syn_langs = ["r"] else let s:hasr = 0 for s:lng in g:rmd_syn_langs if s:lng == "r" let s:hasr = 1 endif endfor if s:hasr == 0 let g:rmd_syn_langs += ["r"] endif endif for s:lng in g:rmd_syn_langs exe 'syntax include @' . toupper(s:lng) . ' syntax/'. s:lng . '.vim' if exists("b:current_syntax") unlet b:current_syntax endif exe 'syntax region rmd' . toupper(s:lng) . 'Chunk start="^[ \t]*``` *{\(' . s:lng . '\|r.*engine\s*=\s*["' . "']" . s:lng . "['" . '"]\).*}$" end="^[ \t]*```$" contains=@' . toupper(s:lng) . ',rmd' . toupper(s:lng) . 'ChunkDelim keepend fold' if exists("g:rmd_syn_hl_chunk") && s:lng == "r" " highlight R code inside chunk header syntax match rmdRChunkDelim "^[ \t]*```{r" contained syntax match rmdRChunkDelim "}$" contained else exe 'syntax match rmd' . toupper(s:lng) . 'ChunkDelim "^[ \t]*```{\(' . s:lng . '\|r.*engine\s*=\s*["' . "']" . s:lng . "['" . '"]\).*}$" contained' endif exe 'syntax match rmd' . toupper(s:lng) . 'ChunkDelim "^[ \t]*```$" contained' endfor " also match and syntax highlight in-line R code syntax region rmdrInline matchgroup=rmdInlineDelim start="`r " end="`" contains=@R containedin=pandocLaTeXRegion,yamlFlowString keepend " I was not able to highlight rmdrInline inside a pandocLaTeXCommand, although " highlighting works within pandocLaTeXRegion and yamlFlowString. syntax cluster texMathZoneGroup add=rmdrInline " match slidify special marker syntax match rmdSlidifySpecial "\*\*\*" if rmdIsPandoc == 0 syn match rmdBlockQuote /^\s*>.*\n\(.*\n\@" contains=@texMathZoneGroup " Region syntax match rmdLaTeXRegDelim "\$\$" contained syntax match rmdLaTeXRegDelim "\$\$latex$" contained syntax match rmdLaTeXSt "\\[a-zA-Z]\+" syntax region rmdLaTeXRegion start="^\$\$" skip="\\\$" end="\$\$$" contains=@LaTeX,rmdLaTeXRegDelim keepend syntax region rmdLaTeXRegion2 start="^\\\[" end="\\\]" contains=@LaTeX,rmdLaTeXRegDelim keepend hi def link rmdBlockQuote Comment hi def link rmdLaTeXSt Statement hi def link rmdLaTeXInlDelim Special hi def link rmdLaTeXRegDelim Special endif for s:lng in g:rmd_syn_langs exe 'syn sync match rmd' . toupper(s:lng) . 'SyncChunk grouphere rmd' . toupper(s:lng) . 'Chunk /^[ \t]*``` *{\(' . s:lng . '\|r.*engine\s*=\s*["' . "']" . s:lng . "['" . '"]\)/' endfor hi def link rmdYamlBlockDelim Delim for s:lng in g:rmd_syn_langs exe 'hi def link rmd' . toupper(s:lng) . 'ChunkDelim Special' endfor hi def link rmdInlineDelim Special hi def link rmdSlidifySpecial Special let b:current_syntax = "rmd" " vim: ts=8 sw=2 PK&]%ddvim80/syntax/ppd.vimnu[" Vim syntax file " Language: PPD (PostScript printer description) file " Maintainer: Bjoern Jacke " Last Change: 2001-10-06 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn match ppdComment "^\*%.*" syn match ppdDef "\*[a-zA-Z0-9]\+" syn match ppdDefine "\*[a-zA-Z0-9\-_]\+:" syn match ppdUI "\*[a-zA-Z]*\(Open\|Close\)UI" syn match ppdUIGroup "\*[a-zA-Z]*\(Open\|Close\)Group" syn match ppdGUIText "/.*:" syn match ppdContraints "^*UIConstraints:" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link ppdComment Comment hi def link ppdDefine Statement hi def link ppdUI Function hi def link ppdUIGroup Function hi def link ppdDef String hi def link ppdGUIText Type hi def link ppdContraints Special let b:current_syntax = "ppd" " vim: ts=8 PK&]/M>vim80/syntax/xhtml.vimnu[" Vim syntax file " Language: XHTML " Maintainer: noone " Last Change: 2003 Feb 04 " Load the HTML syntax for now. runtime! syntax/html.vim let b:current_syntax = "xhtml" " vim: ts=8 PK&]+F#F#vim80/syntax/abap.vimnu[" Vim ABAP syntax file " Language: SAP - ABAP/R4 " Revision: 2.1 " Maintainer: Marius Piedallu van Wyk " Last Change: 2013 Jun 13 " Comment: Thanks to EPI-USE Labs for all your assistance. :) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Always ignore case syn case ignore " Symbol Operators (space delimited) syn match abapSymbolOperator "\W+\W" syn match abapSymbolOperator "\W-\W" syn match abapSymbolOperator "\W/\W" syn match abapSymbolOperator "\W%\W" syn match abapSymbolOperator "\W=\W" syn match abapSymbolOperator "\W<\W" syn match abapSymbolOperator "\W>\W" syn match abapSymbolOperator "\W\*\W" syn match abapSymbolOperator "\W[<>]=\W" syn match abapSymbolOperator "\W<>\W" syn match abapSymbolOperator "\W\*\*\W" syn match abapSymbolOperator "\[\]" syn match abapSymbolOperator "->\*\?" syn match abapSymbolOperator "=>" syn match abapSymbolOperator "[()~:,\.&$]" " Literals syn region abapCharString matchgroup=abapCharString start="'" end="'" contains=abapCharStringEscape syn match abapCharStringEscape contained "''" syn region abapString matchgroup=abapString start="`" end="`" contains=abapStringEscape syn match abapStringEscape contained "``" syn match abapNumber "\-\=\<\d\+\>" syn region abapHex matchgroup=abapHex start="X'" end="'" setlocal iskeyword=48-57,_,A-Z,a-z,/ syn match abapNamespace "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\<\(EXIT\W\+FROM\W\+STEP\W\+LOOP\|EXIT\)\>" syn match abapComplexStatement "\<\(BEGIN\W\+OF\W\+\(BLOCK\|LINE\)\|BEGIN\W\+OF\)\>" syn match abapComplexStatement "\<\(END\W\+OF\W\+\(BLOCK\|LINE\)\|END\W\+OF\)\>" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\<\(PUBLIC\|PRIVATE\|PROTECTED\)\(\W\+SECTION\)\?\>" syn match abapComplexStatement "\" syn match abapComplexStatement "\<\(ALL\W\+OCCURRENCES\)\|\(\(FIRST\|LAST\)\W\+OCCURRENCE\)\>" syn match abapComplexStatement "\" syn match abapComplexStatement "\<\(UP\W\+\)\?TO\>" " hyphenated-word statements syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" syn match abapComplexStatement "\" " ABAP statements syn keyword abapStatement ADD ALIAS ALIASES ASSERT ASSIGN ASSIGNING AT syn keyword abapStatement BACK syn keyword abapStatement CALL CASE CATCH CHECK CLASS CLEAR CLOSE CNT COLLECT COMMIT COMMUNICATION COMPUTE CONCATENATE CONDENSE CONSTANTS CONTINUE CONTROLS CONVERT CREATE CURRENCY syn keyword abapStatement DATA DEFINE DEFINITION DEFERRED DELETE DESCRIBE DETAIL DIVIDE DO syn keyword abapStatement ELSE ELSEIF ENDAT ENDCASE ENDCLASS ENDDO ENDEXEC ENDFORM ENDFUNCTION ENDIF ENDIFEND ENDINTERFACE ENDLOOP ENDMETHOD ENDMODULE ENDON ENDPROVIDE ENDSELECT ENDTRY ENDWHILE EVENT EVENTS EXEC EXIT EXPORT EXPORTING EXTRACT syn keyword abapStatement FETCH FIELDS FORM FORMAT FREE FROM FUNCTION syn keyword abapStatement GENERATE GET syn keyword abapStatement HIDE syn keyword abapStatement IF IMPORT IMPORTING INDEX INFOTYPES INITIALIZATION INTERFACE INTERFACES INPUT INSERT IMPLEMENTATION syn keyword abapStatement LEAVE LIKE LINE LOAD LOCAL LOOP syn keyword abapStatement MESSAGE METHOD METHODS MODIFY MODULE MOVE MULTIPLY syn keyword abapStatement ON OVERLAY OPTIONAL OTHERS syn keyword abapStatement PACK PARAMETERS PERFORM POSITION PROGRAM PROVIDE PUT syn keyword abapStatement RAISE RANGES RECEIVE RECEIVING REDEFINITION REFERENCE REFRESH REJECT REPLACE REPORT RESERVE RESTORE RETURNING ROLLBACK syn keyword abapStatement SCAN SCROLL SEARCH SELECT SET SHIFT SKIP SORT SORTED SPLIT STANDARD STATICS STEP STOP SUBMIT SUBTRACT SUM SUMMARY SUPPRESS syn keyword abapStatement TABLES TIMES TRANSFER TRANSLATE TRY TYPE TYPES syn keyword abapStatement UNASSIGN ULINE UNPACK UPDATE syn keyword abapStatement WHEN WHILE WINDOW WRITE " More statemets syn keyword abapStatement LINES syn keyword abapStatement INTO GROUP BY HAVING ORDER BY SINGLE syn keyword abapStatement APPENDING CORRESPONDING FIELDS OF TABLE syn keyword abapStatement LEFT RIGHT OUTER INNER JOIN AS CLIENT SPECIFIED BYPASSING BUFFER ROWS CONNECTING syn keyword abapStatement OCCURS STRUCTURE OBJECT PROPERTY syn keyword abapStatement CASTING APPEND RAISING VALUE COLOR syn keyword abapStatement CHANGING EXCEPTION EXCEPTIONS DEFAULT CHECKBOX COMMENT syn keyword abapStatement ID NUMBER FOR TITLE OUTPUT " Special ABAP specific tables: syn match abapSpecialTables "\<\(sy\|\(hrp\|p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained syn match abapStructure "\<\w\+-[^\>]"me=e-2 contains=abapSpecialTables,abapStatement,abapComplexStatement syn match abapField "-\w\+"ms=s+1 " Pointer syn match abapSpecial "<\w\+>" " Abap common constants: syn keyword abapSpecial TRUE FALSE NULL SPACE " Includes syn region abapInclude start="include" end="." contains=abapComment " Types syn keyword abapTypes c n i p f d t x string xstring decfloat16 decfloat34 " Atritmitic operators syn keyword abapOperator abs sign ceil floor trunc frac acos asin atan cos sin tan syn keyword abapOperator cosh sinh tanh exp log log10 sqrt " String operators syn keyword abapStatement strlen xstrlen charlen numofchar dbmaxlen syn keyword abapOperator EQ NE LT LE GT GE NOT AND OR XOR IN LIKE BETWEEN " An error? Not strictly... but cannot think of reason this is intended. syn match abapError "\.\." " Comments syn region abapComment start="^\*" end="$" contains=abapTodo syn match abapComment "\".*" contains=abapTodo syn keyword abapTodo contained TODO NOTE syn match abapTodo "\#EC\W\+\w\+" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link abapError Error hi def link abapComment Comment hi def link abapInclude Include hi def link abapStatement Statement hi def link abapComplexStatement Statement hi def link abapSpecial Special hi def link abapNamespace Special hi def link abapSpecialTables Special hi def link abapSymbolOperator abapOperator hi def link abapOperator Operator hi def link abapCharString String hi def link abapString String hi def link abapFloat Float hi def link abapTypes Type hi def link abapSymbol Structure hi def link abapStructure Structure hi def link abapField Variable hi def link abapNumber Number hi def link abapHex Number let b:current_syntax = "abap" " vim: ts=8 sw=2 PK&]78!8!vim80/syntax/nastran.vimnu[" Vim syntax file " Language: NASTRAN input/DMAP " Maintainer: Tom Kowalski " Last change: April 27, 2001 " Thanks to the authors and maintainers of fortran.vim. " Since DMAP shares some traits with fortran, this syntax file " is based on the fortran.vim syntax file. "---------------------------------------------------------------------- " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " DMAP is not case dependent syn case ignore " "--------------------DMAP SYNTAX--------------------------------------- " " -------Executive Modules and Statements " syn keyword nastranDmapexecmod call dbview delete end equiv equivx exit syn keyword nastranDmapexecmod file message purge purgex return subdmap syn keyword nastranDmapType type syn keyword nastranDmapLabel go to goto syn keyword nastranDmapRepeat if else elseif endif then syn keyword nastranDmapRepeat do while syn region nastranDmapString start=+"+ end=+"+ oneline syn region nastranDmapString start=+'+ end=+'+ oneline " If you don't like initial tabs in dmap (or at all) "syn match nastranDmapIniTab "^\t.*$" "syn match nastranDmapTab "\t" " Any integer syn match nastranDmapNumber "-\=\<[0-9]\+\>" " floating point number, with dot, optional exponent syn match nastranDmapFloat "\<[0-9]\+\.[0-9]*\([edED][-+]\=[0-9]\+\)\=\>" " floating point number, starting with a dot, optional exponent syn match nastranDmapFloat "\.[0-9]\+\([edED][-+]\=[0-9]\+\)\=\>" " floating point number, without dot, with exponent syn match nastranDmapFloat "\<[0-9]\+[edED][-+]\=[0-9]\+\>" syn match nastranDmapLogical "\(true\|false\)" syn match nastranDmapPreCondit "^#define\>" syn match nastranDmapPreCondit "^#include\>" " " -------Comments may be contained in another line. " syn match nastranDmapComment "^[\$].*$" syn match nastranDmapComment "\$.*$" syn match nastranDmapComment "^[\$].*$" contained syn match nastranDmapComment "\$.*$" contained " Treat all past 72nd column as a comment. Do not work with tabs! " Breaks down when 72-73rd column is in another match (eg number or keyword) syn match nastranDmapComment "^.\{-72}.*$"lc=72 contained " " -------Utility Modules " syn keyword nastranDmapUtilmod append copy dbc dbdict dbdir dmin drms1 syn keyword nastranDmapUtilmod dtiin eltprt ifp ifp1 inputt2 inputt4 lamx syn keyword nastranDmapUtilmod matgen matgpr matmod matpch matprn matprt syn keyword nastranDmapUtilmod modtrl mtrxin ofp output2 output4 param syn keyword nastranDmapUtilmod paraml paramr prtparam pvt scalar syn keyword nastranDmapUtilmod seqp setval tabedit tabprt tabpt vec vecplot syn keyword nastranDmapUtilmod xsort " " -------Matrix Modules " syn keyword nastranDmapMatmod add add5 cead dcmp decomp diagonal fbs merge syn keyword nastranDmapMatmod mpyad norm read reigl smpyad solve solvit syn keyword nastranDmapMatmod trnsp umerge umerge1 upartn dmiin partn syn region nastranDmapMatmod start=+^ *[Dd][Mm][Ii]+ end=+[\/]+ " " -------Implicit Functions " syn keyword nastranDmapImplicit abs acos acosh andl asin asinh atan atan2 syn keyword nastranDmapImplicit atanh atanh2 char clen clock cmplx concat1 syn keyword nastranDmapImplicit concat2 concat3 conjg cos cosh dble diagoff syn keyword nastranDmapImplicit diagon dim dlablank dlxblank dprod eqvl exp syn keyword nastranDmapImplicit getdiag getsys ichar imag impl index indexstr syn keyword nastranDmapImplicit int itol leq lge lgt lle llt lne log log10 syn keyword nastranDmapImplicit logx ltoi mcgetsys mcputsys max min mod neqvl syn keyword nastranDmapImplicit nint noop normal notl numeq numge numgt numle syn keyword nastranDmapImplicit numlt numne orl pi precison putdiag putsys syn keyword nastranDmapImplicit rand rdiagon real rtimtogo setcore sign sin syn keyword nastranDmapImplicit sinh sngl sprod sqrt substrin tan tanh syn keyword nastranDmapImplicit timetogo wlen xorl " " "--------------------INPUT FILE SYNTAX--------------------------------------- " " " -------Nastran Statement " syn keyword nastranNastranCard nastran " " -------The File Management Section (FMS) " syn region nastranFMSCard start=+^ *[Aa][Cc][Qq][Uu][Ii]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Aa][Ss][Ss][Ii][Gg]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Cc][oO][Nn][Nn][Ee]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Cc][Ll][Ee]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Dd][Ii][Cc]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Dd][Ii][Rr]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Ff][Ii][Xx]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Ll][Oo][Aa]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Ll][Oo][Cc]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Ss][Ee][Tt]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Uu][Nn][Ll]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Bb][Uu][Pp][Dd]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Dd][Ee][Ff][Ii][Nn]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Ee][Nn][Dd][Jj][Oo]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Ee][Xx][Pp][Aa][Nn]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Ii][Nn][Cc][Ll][Uu]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Ii][Nn][Ii][Tt]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Pp][Rr][Oo][Jj]+ end=+$+ oneline syn region nastranFMSCard start=+^ *[Rr][Ee][Ss][Tt]+ end=+$+ oneline syn match nastranDmapUtilmod "^ *[Rr][Ee][Ss][Tt][Aa].*,.*," contains=nastranDmapComment " " -------Executive Control Section " syn region nastranECSCard start=+^ *[Aa][Ll][Tt][Ee][Rr]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Aa][Pp][Pp]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Cc][Oo][Mm][Pp][Ii]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Dd][Ii][Aa][Gg] + end=+$+ oneline syn region nastranECSCard start=+^ *[Ee][Cc][Hh][Oo]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Ee][Nn][Dd][Aa][Ll]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Ii][Dd]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Ii][Nn][Cc][Ll][Uu]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Ll][Ii][Nn][Kk]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Mm][Aa][Ll][Tt][Ee]+ end=+$+ oneline syn region nastranECSCard start=+^ *[Ss][Oo][Ll] + end=+$+ oneline syn region nastranECSCard start=+^ *[Tt][Ii][Mm][Ee]+ end=+$+ oneline " " -------Delimiters " syn match nastranDelimiter "[Cc][Ee][Nn][Dd]" contained syn match nastranDelimiter "[Bb][Ee][Gg][Ii][Nn]" contained syn match nastranDelimiter " *[Bb][Uu][Ll][Kk]" contained syn match nastranDelimiter "[Ee][Nn][Dd] *[dD][Aa][Tt][Aa]" contained " " -------Case Control section " syn region nastranCC start=+^ *[Cc][Ee][Nn][Dd]+ end=+^ *[Bb][Ee][Gg][Ii][Nn]+ contains=nastranDelimiter,nastranBulkData,nastranDmapComment " " -------Bulk Data section " syn region nastranBulkData start=+ *[Bb][Uu][Ll][Kk] *$+ end=+^ [Ee][Nn][Dd] *[Dd]+ contains=nastranDelimiter,nastranDmapComment " " -------The following cards may appear in multiple sections of the file " syn keyword nastranUtilCard ECHOON ECHOOFF INCLUDE PARAM " The default methods for highlighting. Can be overridden later hi def link nastranDmapexecmod Statement hi def link nastranDmapType Type hi def link nastranDmapPreCondit Error hi def link nastranDmapUtilmod PreProc hi def link nastranDmapMatmod nastranDmapUtilmod hi def link nastranDmapString String hi def link nastranDmapNumber Constant hi def link nastranDmapFloat nastranDmapNumber hi def link nastranDmapInitTab nastranDmapNumber hi def link nastranDmapTab nastranDmapNumber hi def link nastranDmapLogical nastranDmapExecmod hi def link nastranDmapImplicit Identifier hi def link nastranDmapComment Comment hi def link nastranDmapRepeat nastranDmapexecmod hi def link nastranNastranCard nastranDmapPreCondit hi def link nastranECSCard nastranDmapUtilmod hi def link nastranFMSCard nastranNastranCard hi def link nastranCC nastranDmapexecmod hi def link nastranDelimiter Special hi def link nastranBulkData nastranDmapType hi def link nastranUtilCard nastranDmapexecmod let b:current_syntax = "nastran" "EOF vim: ts=8 noet tw=120 sw=8 sts=0 PK&]2.y2y2vim80/syntax/cmusrc.vimnu[" Vim syntax file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-06-17 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn keyword cmusrcTodo contained TODO FIXME XXX NOTE syn match cmusrcComment contained display '^\s*#.*$' syn match cmusrcBegin display '^' \ nextgroup=cmusrcKeyword,cmusrcComment \ skipwhite syn keyword cmusrcKeyword contained add \ nextgroup=cmusrcAddSwitches,cmusrcURI \ skipwhite syn match cmusrcAddSwitches contained display '-[lpqQ]' \ nextgroup=cmusrcURI \ skipwhite syn match cmusrcURI contained display '.\+' syn keyword cmusrcKeyword contained bind \ nextgroup=cmusrcBindSwitches, \ cmusrcBindContext \ skipwhite syn match cmusrcBindSwitches contained display '-[f]' \ nextgroup=cmusrcBindContext \ skipwhite syn keyword cmusrcBindContext contained common library playlist queue \ browser filters \ nextgroup=cmusrcBindKey \ skipwhite syn match cmusrcBindKey contained display '\S\+' \ nextgroup=cmusrcKeyword \ skipwhite syn keyword cmusrcKeyword contained browser-up colorscheme echo factivate \ filter invert player-next player-pause \ player-play player-prev player-stop quit \ refresh run search-next search-prev shuffle \ unmark win-activate win-add-l win-add-p \ win-add-Q win-add-q win-bottom win-down \ win-mv-after win-mv-before win-next \ win-page-down win-page-up win-remove \ win-sel-cur win-toggle win-top win-up \ win-update syn keyword cmusrcKeyword contained cd \ nextgroup=cmusrcDirectory \ skipwhite syn match cmusrcDirectory contained display '.\+' syn keyword cmusrcKeyword contained clear \ nextgroup=cmusrcClearSwitches syn match cmusrcClearSwitches contained display '-[lpq]' syn keyword cmusrcKeyword contained fset \ nextgroup=cmusrcFSetName \ skipwhite syn match cmusrcFSetName contained display '[^=]\+' \ nextgroup=cmusrcFSetEq syn match cmusrcFSetEq contained display '=' \ nextgroup=cmusrcFilterExpr syn match cmusrcFilterExpr contained display '.\+' syn keyword cmusrcKeyword contained load \ nextgroup=cmusrcLoadSwitches,cmusrcURI \ skipwhite syn match cmusrcLoadSwitches contained display '-[lp]' \ nextgroup=cmusrcURI \ skipwhite syn keyword cmusrcKeyword contained mark \ nextgroup=cmusrcFilterExpr syn keyword cmusrcKeyword contained save \ nextgroup=cmusrcSaveSwitches,cmusrcFile \ skipwhite syn match cmusrcSaveSwitches contained display '-[lp]' \ nextgroup=cmusrcFile \ skipwhite syn match cmusrcFile contained display '.\+' syn keyword cmusrcKeyword contained seek \ nextgroup=cmusrcSeekOffset \ skipwhite syn match cmusrcSeekOffset contained display \ '[+-]\=\%(\d\+[mh]\=\|\%(\%(0\=\d\|[1-5]\d\):\)\=\%(0\=\d\|[1-5]\d\):\%(0\=\d\|[1-5]\d\)\)' syn keyword cmusrcKeyword contained set \ nextgroup=cmusrcOption \ skipwhite syn keyword cmusrcOption contained auto_reshuffle confirm_run \ continue play_library play_sorted repeat \ show_hidden show_remaining_time shuffle \ nextgroup=cmusrcSetTest,cmusrcOptEqBoolean syn match cmusrcSetTest contained display '?' syn match cmusrcOptEqBoolean contained display '=' \ nextgroup=cmusrcOptBoolean syn keyword cmusrcOptBoolean contained true false syn keyword cmusrcOption contained aaa_mode \ nextgroup=cmusrcOptEqAAA syn match cmusrcOptEqAAA contained display '=' \ nextgroup=cmusrcOptAAA syn keyword cmusrcOptAAA contained all artist album syn keyword cmusrcOption contained buffer_seconds \ nextgroup=cmusrcOptEqNumber syn match cmusrcOptEqNumber contained display '=' \ nextgroup=cmusrcOptNumber syn match cmusrcOptNumber contained display '\d\+' syn keyword cmusrcOption contained altformat_current altformat_playlist \ altformat_title altformat_trackwin \ format_current format_playlist format_title \ format_trackwin \ nextgroup=cmusrcOptEqFormat syn match cmusrcOptEqFormat contained display '=' \ nextgroup=cmusrcOptFormat syn match cmusrcOptFormat contained display '.\+' \ contains=cmusrcFormatSpecial syn match cmusrcFormatSpecial contained display '%[0-]*\d*[alDntgydfF=%]' syn keyword cmusrcOption contained color_cmdline_bg color_cmdline_fg \ color_error color_info color_separator \ color_statusline_bg color_statusline_fg \ color_titleline_bg color_titleline_fg \ color_win_bg color_win_cur \ color_win_cur_sel_bg color_win_cur_sel_fg \ color_win_dir color_win_fg \ color_win_inactive_cur_sel_bg \ color_win_inactive_cur_sel_fg \ color_win_inactive_sel_bg \ color_win_inactive_sel_fg \ color_win_sel_bg color_win_sel_fg \ color_win_title_bg color_win_title_fg \ nextgroup=cmusrcOptEqColor syn match cmusrcOptEqColor contained display '=' \ nextgroup=@cmusrcOptColor syn cluster cmusrcOptColor contains=cmusrcOptColorName,cmusrcOptColorValue syn keyword cmusrcOptColorName contained default black red green yellow blue \ magenta cyan gray darkgray lightred lightred \ lightgreen lightyellow lightblue lightmagenta \ lightcyan white syn match cmusrcOptColorValue contained display \ '-1\|0*\%(\d\|[1-9]\d\|1\d\d\|2\%([0-4]\d\|5[0-5]\)\)' syn keyword cmusrcOption contained id3_default_charset output_plugin \ status_display_program \ nextgroup=cmusrcOptEqString syn match cmusrcOption contained \ '\%(dsp\|mixer\)\.\%(alsa\|oss\|sun\)\.\%(channel\|device\)' \ nextgroup=cmusrcOptEqString syn match cmusrcOption contained \ 'dsp\.ao\.\%(buffer_size\|driver\|wav_counter\|wav_dir\)' \ nextgroup=cmusrcOptEqString syn match cmusrcOptEqString contained display '=' \ nextgroup=cmusrcOptString syn match cmusrcOptString contained display '.\+' syn keyword cmusrcOption contained lib_sort pl_sort \ nextgroup=cmusrcOptEqSortKeys syn match cmusrcOptEqSortKeys contained display '=' \ nextgroup=cmusrcOptSortKeys syn keyword cmusrcOptSortKeys contained artist album title tracknumber \ discnumber date genre filename \ nextgroup=cmusrcOptSortKeys \ skipwhite syn keyword cmusrcKeyword contained showbind \ nextgroup=cmusrcSBindContext \ skipwhite syn keyword cmusrcSBindContext contained common library playlist queue \ browser filters \ nextgroup=cmusrcSBindKey \ skipwhite syn match cmusrcSBindKey contained display '\S\+' syn keyword cmusrcKeyword contained toggle \ nextgroup=cmusrcTogglableOpt \ skipwhite syn keyword cmusrcTogglableOpt contained auto_reshuffle aaa_mode \ confirm_run continue play_library play_sorted \ repeat show_hidden show_remaining_time shuffle syn keyword cmusrcKeyword contained unbind \ nextgroup=cmusrcUnbindSwitches, \ cmusrcSBindContext \ skipwhite syn match cmusrcUnbindSwitches contained display '-[f]' \ nextgroup=cmusrcSBindContext \ skipwhite syn keyword cmusrcKeyword contained view \ nextgroup=cmusrcView \ skipwhite syn keyword cmusrcView contained library playlist queue browser filters syn match cmusrcView contained display '[1-6]' syn keyword cmusrcKeyword contained vol \ nextgroup=cmusrcVolume1 \ skipwhite syn match cmusrcVolume1 contained display '[+-]\=\d\+%' \ nextgroup=cmusrcVolume2 \ skipwhite syn match cmusrcVolume2 contained display '[+-]\=\d\+%' hi def link cmusrcTodo Todo hi def link cmusrcComment Comment hi def link cmusrcKeyword Keyword hi def link cmusrcSwitches Special hi def link cmusrcAddSwitches cmusrcSwitches hi def link cmusrcURI Normal hi def link cmusrcBindSwitches cmusrcSwitches hi def link cmusrcContext Type hi def link cmusrcBindContext cmusrcContext hi def link cmusrcKey String hi def link cmusrcBindKey cmusrcKey hi def link cmusrcDirectory Normal hi def link cmusrcClearSwitches cmusrcSwitches hi def link cmusrcFSetName PreProc hi def link cmusrcEq Normal hi def link cmusrcFSetEq cmusrcEq hi def link cmusrcFilterExpr Normal hi def link cmusrcLoadSwitches cmusrcSwitches hi def link cmusrcSaveSwitches cmusrcSwitches hi def link cmusrcFile Normal hi def link cmusrcSeekOffset Number hi def link cmusrcOption PreProc hi def link cmusrcSetTest Normal hi def link cmusrcOptBoolean Boolean hi def link cmusrcOptEqAAA cmusrcEq hi def link cmusrcOptAAA Identifier hi def link cmusrcOptEqNumber cmusrcEq hi def link cmusrcOptNumber Number hi def link cmusrcOptEqFormat cmusrcEq hi def link cmusrcOptFormat String hi def link cmusrcFormatSpecial SpecialChar hi def link cmusrcOptEqColor cmusrcEq hi def link cmusrcOptColor Normal hi def link cmusrcOptColorName cmusrcOptColor hi def link cmusrcOptColorValue cmusrcOptColor hi def link cmusrcOptEqString cmusrcEq hi def link cmusrcOptString Normal hi def link cmusrcOptEqSortKeys cmusrcEq hi def link cmusrcOptSortKeys Identifier hi def link cmusrcSBindContext cmusrcContext hi def link cmusrcSBindKey cmusrcKey hi def link cmusrcTogglableOpt cmusrcOption hi def link cmusrcUnbindSwitches cmusrcSwitches hi def link cmusrcView Normal hi def link cmusrcVolume1 Number hi def link cmusrcVolume2 Number let b:current_syntax = "cmusrc" let &cpo = s:cpo_save unlet s:cpo_save PK&]vim80/syntax/antlr.vimnu[" Vim syntax file " Antlr: ANTLR, Another Tool For Language Recognition " Maintainer: Mathieu Clabaut " LastChange: 02 May 2001 " Original: Comes from JavaCC.vim " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " This syntac file is a first attempt. It is far from perfect... " Uses java.vim, and adds a few special things for JavaCC Parser files. " Those files usually have the extension *.jj " source the java.vim file runtime! syntax/java.vim unlet b:current_syntax "remove catching errors caused by wrong parenthesis (does not work in antlr "files) (first define them in case they have not been defined in java) syn match javaParen "--" syn match javaParenError "--" syn match javaInParen "--" syn match javaError2 "--" syn clear javaParen syn clear javaParenError syn clear javaInParen syn clear javaError2 " remove function definitions (they look different) (first define in " in case it was not defined in java.vim) "syn match javaFuncDef "--" "syn clear javaFuncDef "syn match javaFuncDef "[a-zA-Z][a-zA-Z0-9_. \[\]]*([^-+*/()]*)[ \t]*:" contains=javaType " syn region javaFuncDef start=+t[a-zA-Z][a-zA-Z0-9_. \[\]]*([^-+*/()]*,[ ]*+ end=+)[ \t]*:+ syn keyword antlrPackages options language buildAST syn match antlrPackages "PARSER_END([^)]*)" syn match antlrPackages "PARSER_BEGIN([^)]*)" syn match antlrSpecToken "" " the dot is necessary as otherwise it will be matched as a keyword. syn match antlrSpecToken ".LOOKAHEAD("ms=s+1,me=e-1 syn match antlrSep "[|:]\|\.\." syn keyword antlrActionToken TOKEN SKIP MORE SPECIAL_TOKEN syn keyword antlrError DEBUG IGNORE_IN_BNF hi def link antlrSep Statement hi def link antlrPackages Statement let b:current_syntax = "antlr" " vim: ts=8 PK&]$s  vim80/syntax/dsl.vimnu[" Vim syntax file " Language: DSSSL " Maintainer: Johannes Zellner " Last Change: Tue, 27 Apr 2004 14:54:59 CEST " Filenames: *.dsl " $Id: dsl.vim,v 1.1 2004/06/13 19:13:31 vimboss Exp $ if exists("b:current_syntax") | finish | endif runtime syntax/xml.vim syn cluster xmlRegionHook add=dslRegion,dslComment syn cluster xmlCommentHook add=dslCond " EXAMPLE: " " (define html-manifest #f) " ]]> " " NOTE: 'contains' the same as xmlRegion, except xmlTag / xmlEndTag syn region dslCond matchgroup=dslCondDelim start="\[\_[^[]\+\[" end="]]" contains=xmlCdata,@xmlRegionCluster,xmlComment,xmlEntity,xmlProcessing,@xmlRegionHook " NOTE, that dslRegion and dslComment do both NOT have a 'contained' " argument, so this will also work in plain dsssl documents. syn region dslRegion matchgroup=Delimiter start=+(+ end=+)+ contains=dslRegion,dslString,dslComment syn match dslString +"\_[^"]*"+ contained syn match dslComment +;.*$+ contains=dslTodo syn keyword dslTodo contained TODO FIXME XXX display " The default highlighting. hi def link dslTodo Todo hi def link dslString String hi def link dslComment Comment " compare the following with xmlCdataStart / xmlCdataEnd hi def link dslCondDelim Type let b:current_syntax = "dsl" PK&]^ **vim80/syntax/asciidoc.vimnu[" Vim syntax file " Language: AsciiDoc " Author: Stuart Rackham (inspired by Felix " Obenhuber's original asciidoc.vim script). " URL: http://asciidoc.org/ " Licence: GPL (http://www.gnu.org) " Remarks: Vim 6 or greater " Last Update: 2014 Aug 29 (see Issue 240) " Limitations: " " - Nested quoted text formatting is highlighted according to the outer " format. " - If a closing Example Block delimiter may be mistaken for a title " underline. A workaround is to insert a blank line before the closing " delimiter. " - Lines within a paragraph starting with equals characters are " highlighted as single-line titles. " - Lines within a paragraph beginning with a period are highlighted as " block titles. if exists("b:current_syntax") finish endif syn clear syn sync fromstart syn sync linebreaks=100 " Run :help syn-priority to review syntax matching priority. syn keyword asciidocToDo TODO FIXME CHECK TEST XXX ZZZ DEPRECATED syn match asciidocBackslash /\\/ syn region asciidocIdMarker start=/^\$Id:\s/ end=/\s\$$/ syn match asciidocCallout /\\\@/ syn match asciidocOpenBlockDelimiter /^--$/ syn match asciidocLineBreak /[ \t]+$/ containedin=asciidocList syn match asciidocRuler /^'\{3,}$/ syn match asciidocPagebreak /^<\{3,}$/ syn match asciidocEntityRef /\\\@\?[0-9A-Za-z_]\@!/ syn match asciidocAttributeRef /\\\@.]\{,3}\)\?\([a-z]\)\?\)\?|/ containedin=asciidocTableBlock contained syn region asciidocTableBlock matchgroup=asciidocTableDelimiter start=/^|=\{3,}$/ end=/^|=\{3,}$/ keepend contains=ALL syn match asciidocTablePrefix /\(\S\@.]\{,3}\)\?\([a-z]\)\?\)\?!/ containedin=asciidocTableBlock contained syn region asciidocTableBlock2 matchgroup=asciidocTableDelimiter2 start=/^!=\{3,}$/ end=/^!=\{3,}$/ keepend contains=ALL syn match asciidocListContinuation /^+$/ syn region asciidocLiteralBlock start=/^\.\{4,}$/ end=/^\.\{4,}$/ contains=asciidocCallout,asciidocToDo keepend syn region asciidocListingBlock start=/^-\{4,}$/ end=/^-\{4,}$/ contains=asciidocCallout,asciidocToDo keepend syn region asciidocCommentBlock start="^/\{4,}$" end="^/\{4,}$" contains=asciidocToDo syn region asciidocPassthroughBlock start="^+\{4,}$" end="^+\{4,}$" " Allowing leading \w characters in the filter delimiter is to accomodate " the pre version 8.2.7 syntax and may be removed in future releases. syn region asciidocFilterBlock start=/^\w*\~\{4,}$/ end=/^\w*\~\{4,}$/ syn region asciidocMacroAttributes matchgroup=asciidocRefMacro start=/\\\@>\)\|^$/ contains=asciidocQuoted.* keepend syn region asciidocMacroAttributes matchgroup=asciidocAnchorMacro start=/\\\@ " Latest Revision: 2007-06-17 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn region lftpComment display oneline start='#' end='$' \ contains=lftpTodo,@Spell syn keyword lftpTodo contained TODO FIXME XXX NOTE syn region lftpString contained display \ start=+"+ skip=+\\$\|\\"+ end=+"+ end=+$+ syn match lftpNumber contained display '\<\d\+\(\.\d\+\)\=\>' syn keyword lftpBoolean contained yes no on off true false syn keyword lftpInterval contained infinity inf never forever syn match lftpInterval contained '\<\(\d\+\(\.\d\+\)\=[dhms]\)\+\>' syn keyword lftpKeywords alias anon at bookmark cache cat cd chmod close \ cls command debug du echo exit fg find get \ get1 glob help history jobs kill lcd lftp \ lpwd ls mget mirror mkdir module more mput \ mrm mv nlist open pget put pwd queue quote \ reget recls rels renlist repeat reput rm \ rmdir scache site source suspend user version \ wait zcat zmore syn region lftpSet matchgroup=lftpKeywords \ start="set" end=";" end="$" \ contains=lftpString,lftpNumber,lftpBoolean, \ lftpInterval,lftpSettingsPrefix,lftpSettings syn match lftpSettingsPrefix contained '\<\%(bmk\|cache\|cmd\|color\|dns\):' syn match lftpSettingsPrefix contained '\<\%(file\|fish\|ftp\|hftp\):' syn match lftpSettingsPrefix contained '\<\%(http\|https\|mirror\|module\):' syn match lftpSettingsPrefix contained '\<\%(net\|sftp\|ssl\|xfer\):' " bmk: syn keyword lftpSettings contained save-p[asswords] " cache: syn keyword lftpSettings contained cache-em[pty-listings] en[able] \ exp[ire] siz[e] " cmd: syn keyword lftpSettings contained at[-exit] cls-c[ompletion-default] \ cls-d[efault] cs[h-history] \ default-p[rotocol] default-t[itle] syn keyword lftpSettings contained fai[l-exit] in[teractive] \ lo[ng-running] ls[-default] mo[ve-background] \ prom[pt] \ rem[ote-completion] \ save-c[wd-history] save-r[l-history] \ set-t[erm-status] statu[s-interval] \ te[rm-status] verb[ose] verify-h[ost] \ verify-path verify-path[-cached] " color: syn keyword lftpSettings contained dir[-colors] use-c[olor] " dns: syn keyword lftpSettings contained S[RV-query] cache-en[able] \ cache-ex[pire] cache-s[ize] \ fat[al-timeout] o[rder] use-fo[rk] " file: syn keyword lftpSettings contained ch[arset] " fish: syn keyword lftpSettings contained connect[-program] sh[ell] " ftp: syn keyword lftpSettings contained acct anon-p[ass] anon-u[ser] \ au[to-sync-mode] b[ind-data-socket] \ ch[arset] cli[ent] dev[ice-prefix] \ fi[x-pasv-address] fxp-f[orce] \ fxp-p[assive-source] h[ome] la[ng] \ list-e[mpty-ok] list-o[ptions] \ nop[-interval] pas[sive-mode] \ port-i[pv4] port-r[ange] prox[y] \ rest-l[ist] rest-s[tor] \ retry-530 retry-530[-anonymous] \ sit[e-group] skey-a[llow] \ skey-f[orce] ssl-allow \ ssl-allow[-anonymous] ssl-au[th] \ ssl-f[orce] ssl-protect-d[ata] \ ssl-protect-l[ist] stat-[interval] \ sy[nc-mode] timez[one] use-a[bor] \ use-fe[at] use-fx[p] use-hf[tp] \ use-mdtm use-mdtm[-overloaded] \ use-ml[sd] use-p[ret] use-q[uit] \ use-site-c[hmod] use-site-i[dle] \ use-site-u[time] use-siz[e] \ use-st[at] use-te[lnet-iac] \ verify-a[ddress] verify-p[ort] \ w[eb-mode] " hftp: syn keyword lftpSettings contained w[eb-mode] cache prox[y] \ use-au[thorization] use-he[ad] use-ty[pe] " http: syn keyword lftpSettings contained accept accept-c[harset] \ accept-l[anguage] cache coo[kie] \ pos[t-content-type] prox[y] \ put-c[ontent-type] put-m[ethod] ref[erer] \ set-c[ookies] user[-agent] " https: syn keyword lftpSettings contained prox[y] " mirror: syn keyword lftpSettings contained exc[lude-regex] o[rder] \ parallel-d[irectories] \ parallel-t[ransfer-count] use-p[get-n] " module: syn keyword lftpSettings contained pat[h] " net: syn keyword lftpSettings contained connection-l[imit] \ connection-t[akeover] id[le] limit-m[ax] \ limit-r[ate] limit-total-m[ax] \ limit-total-r[ate] max-ret[ries] no-[proxy] \ pe[rsist-retries] reconnect-interval-b[ase] \ reconnect-interval-ma[x] \ reconnect-interval-mu[ltiplier] \ socket-bind-ipv4 socket-bind-ipv6 \ socket-bu[ffer] socket-m[axseg] timeo[ut] " sftp: syn keyword lftpSettings contained connect[-program] \ max-p[ackets-in-flight] prot[ocol-version] \ ser[ver-program] size-r[ead] size-w[rite] " ssl: syn keyword lftpSettings contained ca-f[ile] ca-p[ath] ce[rt-file] \ crl-f[ile] crl-p[ath] k[ey-file] \ verify-c[ertificate] " xfer: syn keyword lftpSettings contained clo[bber] dis[k-full-fatal] \ eta-p[eriod] eta-t[erse] mak[e-backup] \ max-red[irections] ra[te-period] hi def link lftpComment Comment hi def link lftpTodo Todo hi def link lftpString String hi def link lftpNumber Number hi def link lftpBoolean Boolean hi def link lftpInterval Number hi def link lftpKeywords Keyword hi def link lftpSettingsPrefix PreProc hi def link lftpSettings Type let b:current_syntax = "lftp" let &cpo = s:cpo_save unlet s:cpo_save PK&]-ùhhvim80/syntax/mmix.vimnu[" Vim syntax file " Language: MMIX " Maintainer: Dirk Hsken, " Last Change: 2012 Jun 01 " (Dominique Pelle added @Spell) " Filenames: *.mms " URL: http://homepages.uni-tuebingen.de/student/dirk.huesken/vim/syntax/mmix.vim " Limitations: Comments must start with either % or // " (preferably %, Knuth-Style) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " MMIX data types syn keyword mmixType byte wyde tetra octa " different literals... syn match decNumber "[0-9]*" syn match octNumber "0[0-7][0-7]\+" syn match hexNumber "#[0-9a-fA-F]\+" syn region mmixString start=+"+ skip=+\\"+ end=+"+ contains=@Spell syn match mmixChar "'.'" " ...and more special MMIX stuff syn match mmixAt "@" syn keyword mmixSegments Data_Segment Pool_Segment Stack_Segment syn match mmixIdentifier "[a-z_][a-z0-9_]*" " labels (for branches etc) syn match mmixLabel "^[a-z0-9_:][a-z0-9_]*" syn match mmixLabel "[0-9][HBF]" " pseudo-operations syn keyword mmixPseudo is loc greg " comments syn match mmixComment "%.*" contains=@Spell syn match mmixComment "//.*" contains=@Spell syn match mmixComment "^\*.*" contains=@Spell syn keyword mmixOpcode trap fcmp fun feql fadd fix fsub fixu syn keyword mmixOpcode fmul fcmpe fune feqle fdiv fsqrt frem fint syn keyword mmixOpcode floti flotui sfloti sflotui i syn keyword mmixOpcode muli mului divi divui syn keyword mmixOpcode addi addui subi subui syn keyword mmixOpcode 2addui 4addui 8addui 16addui syn keyword mmixOpcode cmpi cmpui negi negui syn keyword mmixOpcode sli slui sri srui syn keyword mmixOpcode bnb bzb bpb bodb syn keyword mmixOpcode bnnb bnzb bnpb bevb syn keyword mmixOpcode pbnb pbzb pbpb pbodb syn keyword mmixOpcode pbnnb pbnzb pbnpb pbevb syn keyword mmixOpcode csni cszi cspi csodi syn keyword mmixOpcode csnni csnzi csnpi csevi syn keyword mmixOpcode zsni zszi zspi zsodi syn keyword mmixOpcode zsnni zsnzi zsnpi zsevi syn keyword mmixOpcode ldbi ldbui ldwi ldwui syn keyword mmixOpcode ldti ldtui ldoi ldoui syn keyword mmixOpcode ldsfi ldhti cswapi ldunci syn keyword mmixOpcode ldvtsi preldi pregoi goi syn keyword mmixOpcode stbi stbui stwi stwui syn keyword mmixOpcode stti sttui stoi stoui syn keyword mmixOpcode stsfi sthti stcoi stunci syn keyword mmixOpcode syncdi presti syncidi pushgoi syn keyword mmixOpcode ori orni nori xori syn keyword mmixOpcode andi andni nandi nxori syn keyword mmixOpcode bdifi wdifi tdifi odifi syn keyword mmixOpcode muxi saddi mori mxori syn keyword mmixOpcode muli mului divi divui syn keyword mmixOpcode flot flotu sflot sflotu syn keyword mmixOpcode mul mulu div divu syn keyword mmixOpcode add addu sub subu syn keyword mmixOpcode 2addu 4addu 8addu 16addu syn keyword mmixOpcode cmp cmpu neg negu syn keyword mmixOpcode sl slu sr sru syn keyword mmixOpcode bn bz bp bod syn keyword mmixOpcode bnn bnz bnp bev syn keyword mmixOpcode pbn pbz pbp pbod syn keyword mmixOpcode pbnn pbnz pbnp pbev syn keyword mmixOpcode csn csz csp csod syn keyword mmixOpcode csnn csnz csnp csev syn keyword mmixOpcode zsn zsz zsp zsod syn keyword mmixOpcode zsnn zsnz zsnp zsev syn keyword mmixOpcode ldb ldbu ldw ldwu syn keyword mmixOpcode ldt ldtu ldo ldou syn keyword mmixOpcode ldsf ldht cswap ldunc syn keyword mmixOpcode ldvts preld prego go syn keyword mmixOpcode stb stbu stw stwu syn keyword mmixOpcode stt sttu sto stou syn keyword mmixOpcode stsf stht stco stunc syn keyword mmixOpcode syncd prest syncid pushgo syn keyword mmixOpcode or orn nor xor syn keyword mmixOpcode and andn nand nxor syn keyword mmixOpcode bdif wdif tdif odif syn keyword mmixOpcode mux sadd mor mxor syn keyword mmixOpcode seth setmh setml setl inch incmh incml incl syn keyword mmixOpcode orh ormh orml orl andh andmh andml andnl syn keyword mmixOpcode jmp pushj geta put syn keyword mmixOpcode pop resume save unsave sync swym get trip syn keyword mmixOpcode set lda " switch back to being case sensitive syn case match " general-purpose and special-purpose registers syn match mmixRegister "$[0-9]*" syn match mmixRegister "r[A-Z]" syn keyword mmixRegister rBB rTT rWW rXX rYY rZZ " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later hi def link mmixAt Type hi def link mmixPseudo Type hi def link mmixRegister Special hi def link mmixSegments Type hi def link mmixLabel Special hi def link mmixComment Comment hi def link mmixOpcode Keyword hi def link hexNumber Number hi def link decNumber Number hi def link octNumber Number hi def link mmixString String hi def link mmixChar String hi def link mmixType Type hi def link mmixIdentifier Normal hi def link mmixSpecialComment Comment " My default color overrides: " hi mmixSpecialComment ctermfg=red "hi mmixLabel ctermfg=lightcyan " hi mmixType ctermbg=black ctermfg=brown let b:current_syntax = "mmix" " vim: ts=8 PK&]Ɯ vim80/syntax/help.vimnu[" Vim syntax file " Language: Vim help file " Maintainer: Bram Moolenaar (Bram@vim.org) " Last Change: 2017 Oct 19 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()]*[ \t]\+\*"me=e-1 syn match helpSectionDelim "^===.*===$" syn match helpSectionDelim "^---.*--$" if has("conceal") syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<" concealends else syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<" endif if has("ebcdic") syn match helpHyperTextJump "\\\@" syn match helpSpecial "\"ms=s+1 syn match helpSpecial "\[N]" " avoid highlighting N N in help.txt syn match helpSpecial "N N"he=s+1 syn match helpSpecial "Nth"me=e-2 syn match helpSpecial "N-1"me=e-2 syn match helpSpecial "{[-a-zA-Z0-9'"*+/:%#=[\]<>.,]\+}" syn match helpSpecial "\s\[[-a-z^A-Z0-9_]\{2,}]"ms=s+1 syn match helpSpecial "<[-a-zA-Z0-9_]\+>" syn match helpSpecial "<[SCM]-.>" syn match helpNormal "<---*>" syn match helpSpecial "\[range]" syn match helpSpecial "\[line]" syn match helpSpecial "\[count]" syn match helpSpecial "\[offset]" syn match helpSpecial "\[cmd]" syn match helpSpecial "\[num]" syn match helpSpecial "\[+num]" syn match helpSpecial "\[-num]" syn match helpSpecial "\[+cmd]" syn match helpSpecial "\[++opt]" syn match helpSpecial "\[arg]" syn match helpSpecial "\[arguments]" syn match helpSpecial "\[ident]" syn match helpSpecial "\[addr]" syn match helpSpecial "\[group]" " Don't highlight [converted] and others that do not have a tag syn match helpNormal "\[\(readonly\|fifo\|socket\|converted\|crypted\)]" syn match helpSpecial "CTRL-." syn match helpSpecial "CTRL-Break" syn match helpSpecial "CTRL-PageUp" syn match helpSpecial "CTRL-PageDown" syn match helpSpecial "CTRL-Insert" syn match helpSpecial "CTRL-Del" syn match helpSpecial "CTRL-{char}" syn region helpNotVi start="{Vi[: ]" start="{not" start="{only" end="}" contains=helpLeadBlank,helpHyperTextJump syn match helpLeadBlank "^\s\+" contained " Highlight group items in their own color. syn match helpComment "\t[* ]Comment\t\+[a-z].*" syn match helpConstant "\t[* ]Constant\t\+[a-z].*" syn match helpString "\t[* ]String\t\+[a-z].*" syn match helpCharacter "\t[* ]Character\t\+[a-z].*" syn match helpNumber "\t[* ]Number\t\+[a-z].*" syn match helpBoolean "\t[* ]Boolean\t\+[a-z].*" syn match helpFloat "\t[* ]Float\t\+[a-z].*" syn match helpIdentifier "\t[* ]Identifier\t\+[a-z].*" syn match helpFunction "\t[* ]Function\t\+[a-z].*" syn match helpStatement "\t[* ]Statement\t\+[a-z].*" syn match helpConditional "\t[* ]Conditional\t\+[a-z].*" syn match helpRepeat "\t[* ]Repeat\t\+[a-z].*" syn match helpLabel "\t[* ]Label\t\+[a-z].*" syn match helpOperator "\t[* ]Operator\t\+["a-z].*" syn match helpKeyword "\t[* ]Keyword\t\+[a-z].*" syn match helpException "\t[* ]Exception\t\+[a-z].*" syn match helpPreProc "\t[* ]PreProc\t\+[a-z].*" syn match helpInclude "\t[* ]Include\t\+[a-z].*" syn match helpDefine "\t[* ]Define\t\+[a-z].*" syn match helpMacro "\t[* ]Macro\t\+[a-z].*" syn match helpPreCondit "\t[* ]PreCondit\t\+[a-z].*" syn match helpType "\t[* ]Type\t\+[a-z].*" syn match helpStorageClass "\t[* ]StorageClass\t\+[a-z].*" syn match helpStructure "\t[* ]Structure\t\+[a-z].*" syn match helpTypedef "\t[* ]Typedef\t\+[Aa-z].*" syn match helpSpecial "\t[* ]Special\t\+[a-z].*" syn match helpSpecialChar "\t[* ]SpecialChar\t\+[a-z].*" syn match helpTag "\t[* ]Tag\t\+[a-z].*" syn match helpDelimiter "\t[* ]Delimiter\t\+[a-z].*" syn match helpSpecialComment "\t[* ]SpecialComment\t\+[a-z].*" syn match helpDebug "\t[* ]Debug\t\+[a-z].*" syn match helpUnderlined "\t[* ]Underlined\t\+[a-z].*" syn match helpError "\t[* ]Error\t\+[a-z].*" syn match helpTodo "\t[* ]Todo\t\+[a-z].*" syn match helpURL `\v<(((https?|ftp|gopher)://|(mailto|file|news):)[^' <>"]+|(www|web|w3)[a-z0-9_-]*\.[a-z0-9._-]+\.[^' <>"]+)[a-zA-Z0-9/]` " Additionally load a language-specific syntax file "help_ab.vim". let s:i = match(expand("%"), '\.\a\ax$') if s:i > 0 exe "runtime syntax/help_" . strpart(expand("%"), s:i + 1, 2) . ".vim" endif " Italian if v:lang =~ '\' || v:lang =~ '_IT\>' || v:lang =~? "italian" syn keyword helpNote nota Nota NOTA nota: Nota: NOTA: notare Notare NOTARE notare: Notare: NOTARE: syn match helpSpecial "Nma"me=e-2 syn match helpSpecial "Nme"me=e-2 syn match helpSpecial "Nmi"me=e-2 syn match helpSpecial "Nmo"me=e-2 syn match helpSpecial "\[interv.]" syn region helpNotVi start="{non" start="{solo" start="{disponibile" end="}" contains=helpLeadBlank,helpHyperTextJump endif syn sync minlines=40 " Define the default highlighting. " Only used when an item doesn't have highlighting yet hi def link helpIgnore Ignore hi def link helpHyperTextJump Identifier hi def link helpBar Ignore hi def link helpBacktick Ignore hi def link helpStar Ignore hi def link helpHyperTextEntry String hi def link helpHeadline Statement hi def link helpHeader PreProc hi def link helpSectionDelim PreProc hi def link helpVim Identifier hi def link helpCommand Comment hi def link helpExample Comment hi def link helpOption Type hi def link helpNotVi Special hi def link helpSpecial Special hi def link helpNote Todo hi def link helpWarning Todo hi def link helpDeprecated Todo hi def link helpComment Comment hi def link helpConstant Constant hi def link helpString String hi def link helpCharacter Character hi def link helpNumber Number hi def link helpBoolean Boolean hi def link helpFloat Float hi def link helpIdentifier Identifier hi def link helpFunction Function hi def link helpStatement Statement hi def link helpConditional Conditional hi def link helpRepeat Repeat hi def link helpLabel Label hi def link helpOperator Operator hi def link helpKeyword Keyword hi def link helpException Exception hi def link helpPreProc PreProc hi def link helpInclude Include hi def link helpDefine Define hi def link helpMacro Macro hi def link helpPreCondit PreCondit hi def link helpType Type hi def link helpStorageClass StorageClass hi def link helpStructure Structure hi def link helpTypedef Typedef hi def link helpSpecialChar SpecialChar hi def link helpTag Tag hi def link helpDelimiter Delimiter hi def link helpSpecialComment SpecialComment hi def link helpDebug Debug hi def link helpUnderlined Underlined hi def link helpError Error hi def link helpTodo Todo hi def link helpURL String let b:current_syntax = "help" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 sw=2 PK&]!:vim80/syntax/strace.vimnu[" Vim syntax file " This is a GENERATED FILE. Please always refer to source file at the URI below. " Language: strace output " Maintainer: David Necas (Yeti) " Last Change: 2015-01-16 " Setup " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case match " Parse the line syn match straceSpecialChar "\\\o\{1,3}\|\\." contained syn region straceString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=straceSpecialChar oneline syn match straceNumber "\W[+-]\=\(\d\+\)\=\.\=\d\+\([eE][+-]\=\d\+\)\="lc=1 syn match straceNumber "\W0x\x\+"lc=1 syn match straceNumberRHS "\W\(0x\x\+\|-\=\d\+\)"lc=1 contained syn match straceOtherRHS "?" contained syn match straceConstant "[A-Z_]\{2,}" syn region straceVerbosed start="(" end=")" matchgroup=Normal contained oneline syn region straceReturned start="\s=\s" end="$" contains=StraceEquals,straceNumberRHS,straceOtherRHS,straceConstant,straceVerbosed oneline transparent syn match straceEquals "\s=\s"ms=s+1,me=e-1 syn match straceParenthesis "[][(){}]" syn match straceSysCall "^\w\+" syn match straceOtherPID "^\[[^]]*\]" contains=stracePID,straceNumber nextgroup=straceSysCallEmbed skipwhite syn match straceSysCallEmbed "\w\+" contained syn keyword stracePID pid contained syn match straceOperator "[-+=*/!%&|:,]" syn region straceComment start="/\*" end="\*/" oneline " Define the default highlighting hi def link straceComment Comment hi def link straceVerbosed Comment hi def link stracePID PreProc hi def link straceNumber Number hi def link straceNumberRHS Type hi def link straceOtherRHS Type hi def link straceString String hi def link straceConstant Function hi def link straceEquals Type hi def link straceSysCallEmbed straceSysCall hi def link straceSysCall Statement hi def link straceParenthesis Statement hi def link straceOperator Normal hi def link straceSpecialChar Special hi def link straceOtherPID PreProc let b:current_syntax = "strace" PK&]I|vim80/syntax/viminfo.vimnu[" Vim syntax file " Language: Vim .viminfo file " Maintainer: Bram Moolenaar " Last Change: 2016 Jun 05 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " The lines that are NOT recognized syn match viminfoError "^[^\t].*" " The one-character one-liners that are recognized syn match viminfoStatement "^[/&$@:?=%!<]" " The two-character one-liners that are recognized syn match viminfoStatement "^[-'>"]." syn match viminfoStatement +^"".+ syn match viminfoStatement "^\~[/&]" syn match viminfoStatement "^\~[hH]" syn match viminfoStatement "^\~[mM][sS][lL][eE]\d\+\~\=[/&]" syn match viminfoOption "^\*.*=" contains=viminfoOptionName syn match viminfoOptionName "\*\a*"ms=s+1 contained " Comments syn match viminfoComment "^#.*" " New style lines. TODO: highlight numbers and strings. syn match viminfoNew "^|.*" " Define the default highlighting. " Only used when an item doesn't have highlighting yet hi def link viminfoComment Comment hi def link viminfoError Error hi def link viminfoStatement Statement hi def link viminfoNew String let b:current_syntax = "viminfo" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 sw=2 PK&]fa2 vim80/syntax/cynlib.vimnu[" Vim syntax file " Language: Cynlib(C++) " Maintainer: Phil Derrick " Last change: 2001 Sep 02 " URL http://www.derrickp.freeserve.co.uk/vim/syntax/cynlib.vim " " Language Information " " Cynlib is a library of C++ classes to allow hardware " modelling in C++. Combined with a simulation kernel, " the compiled and linked executable forms a hardware " simulation of the described design. " " Further information can be found from www.forteds.com " Remove any old syntax stuff hanging around " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Read the C++ syntax to start with - this includes the C syntax runtime! syntax/cpp.vim unlet b:current_syntax " Cynlib extensions syn keyword cynlibMacro Default CYNSCON syn keyword cynlibMacro Case CaseX EndCaseX syn keyword cynlibType CynData CynSignedData CynTime syn keyword cynlibType In Out InST OutST syn keyword cynlibType Struct syn keyword cynlibType Int Uint Const syn keyword cynlibType Long Ulong syn keyword cynlibType OneHot syn keyword cynlibType CynClock Cynclock0 syn keyword cynlibFunction time configure my_name syn keyword cynlibFunction CynModule epilog execute_on syn keyword cynlibFunction my_name syn keyword cynlibFunction CynBind bind syn keyword cynlibFunction CynWait CynEvent syn keyword cynlibFunction CynSetName syn keyword cynlibFunction CynTick CynRun syn keyword cynlibFunction CynFinish syn keyword cynlibFunction Cynprintf CynSimTime syn keyword cynlibFunction CynVcdFile syn keyword cynlibFunction CynVcdAdd CynVcdRemove syn keyword cynlibFunction CynVcdOn CynVcdOff syn keyword cynlibFunction CynVcdScale syn keyword cynlibFunction CynBgnName CynEndName syn keyword cynlibFunction CynClock configure time syn keyword cynlibFunction CynRedAnd CynRedNand syn keyword cynlibFunction CynRedOr CynRedNor syn keyword cynlibFunction CynRedXor CynRedXnor syn keyword cynlibFunction CynVerify syn match cynlibOperator "<<=" syn keyword cynlibType In Out InST OutST Int Uint Const Cynclock " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link cynlibOperator Operator hi def link cynlibMacro Statement hi def link cynlibFunction Statement hi def link cynlibppMacro Statement hi def link cynlibType Type let b:current_syntax = "cynlib" PK&]i{@@vim80/syntax/dtml.vimnu[" DTML syntax file " Language: Zope's Dynamic Template Markup Language " Maintainer: Jean Jordaan (njj) " Last change: 2001 Sep 02 " These are used with Claudio Fleiner's html.vim in the standard distribution. " " Still very hackish. The 'dtml attributes' and 'dtml methods' have been " hacked out of the Zope Quick Reference in case someone finds something " sensible to do with them. I certainly haven't. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " First load the HTML syntax runtime! syntax/html.vim syn case match " This doesn't have any effect. Does it need to be moved to above/ " if !exists("main_syntax") " let main_syntax = 'dtml' " endif " dtml attributes syn keyword dtmlAttribute ac_inherited_permissions access_debug_info contained syn keyword dtmlAttribute acquiredRolesAreUsedBy all_meta_types assume_children AUTH_TYPE contained syn keyword dtmlAttribute AUTHENTICATED_USER AUTHENTICATION_PATH BASE0 batch-end-index batch-size contained syn keyword dtmlAttribute batch-start-index bobobase_modification_time boundary branches contained syn keyword dtmlAttribute branches_expr capitalize cb_dataItems cb_dataValid cb_isCopyable contained syn keyword dtmlAttribute cb_isMoveable changeClassId classDefinedAndInheritedPermissions contained syn keyword dtmlAttribute classDefinedPermissions classInheritedPermissions collapse-all column contained syn keyword dtmlAttribute connected connectionIsValid CONTENT_LENGTH CONTENT_TYPE cook cookies contained syn keyword dtmlAttribute COPY count- createInObjectManager da_has_single_argument dav__allprop contained syn keyword dtmlAttribute dav__init dav__propnames dav__propstat dav__validate default contained syn keyword dtmlAttribute delClassAttr DELETE Destination DestinationURL digits discard contained syn keyword dtmlAttribute disposition document_src e encode enter etc expand-all expr File contained syn keyword dtmlAttribute filtered_manage_options filtered_meta_types first- fmt footer form contained syn keyword dtmlAttribute GATEWAY_INTERFACE get_local_roles get_local_roles_for_userid contained syn keyword dtmlAttribute get_request_var_or_attr get_size get_size get_valid_userids getAttribute contained syn keyword dtmlAttribute getAttributeNode getAttributes getChildNodes getClassAttr getContentType contained syn keyword dtmlAttribute getData getDocType getDocumentElement getElementsByTagName getFirstChild contained syn keyword dtmlAttribute getImplementation getLastChild getLength getName getNextSibling contained syn keyword dtmlAttribute getNodeName getNodeType getNodeValue getOwnerDocument getParentNode contained syn keyword dtmlAttribute getPreviousSibling getProperty getPropertyType getSize getSize getSize contained syn keyword dtmlAttribute get_size getTagName getUser getUserName getUserNames getUsers contained syn keyword dtmlAttribute has_local_roles hasChildNodes hasProperty HEAD header hexdigits HTML contained syn keyword dtmlAttribute html_quote HTMLFile id index_html index_objects indexes contained syn keyword dtmlAttribute inheritedAttribute items last- leave leave_another leaves letters LOCK contained syn keyword dtmlAttribute locked_in_version lower lowercase mailfrom mailhost mailhost_list mailto contained syn keyword dtmlAttribute manage manage_ methods manage_access manage_acquiredPermissions contained syn keyword dtmlAttribute manage_addConferaTopic manage_addDocument manage_addDTMLDocument contained syn keyword dtmlAttribute manage_addDTMLMethod manage_addFile manage_addFolder manage_addImage contained syn keyword dtmlAttribute manage_addLocalRoles manage_addMailHost manage_addPermission contained syn keyword dtmlAttribute manage_addPrincipiaFactory manage_addProduct manage_addProperty contained syn keyword dtmlAttribute manage_addUserFolder manage_addZClass manage_addZGadflyConnection contained syn keyword dtmlAttribute manage_addZGadflyConnectionForm manage_advanced manage_afterAdd contained syn keyword dtmlAttribute manage_afterClone manage_beforeDelete manage_changePermissions contained syn keyword dtmlAttribute manage_changeProperties manage_clone manage_CopyContainerFirstItem contained syn keyword dtmlAttribute manage_copyObjects manage_cutObjects manage_defined_roles contained syn keyword dtmlAttribute manage_delLocalRoles manage_delObjects manage_delProperties contained syn keyword dtmlAttribute manage_distribute manage_edit manage_editedDialog manage_editProperties contained syn keyword dtmlAttribute manage_editRoles manage_exportObject manage_FTPget manage_FTPlist contained syn keyword dtmlAttribute manage_FTPstat manage_get_product_readme__ manage_getPermissionMapping contained syn keyword dtmlAttribute manage_haveProxy manage_help manage_importObject manage_listLocalRoles contained syn keyword dtmlAttribute manage_options manage_pasteObjects manage_permission contained syn keyword dtmlAttribute manage_propertiesForm manage_proxy manage_renameObject manage_role contained syn keyword dtmlAttribute manage_setLocalRoles manage_setPermissionMapping contained syn keyword dtmlAttribute manage_subclassableClassNames manage_test manage_testForm contained syn keyword dtmlAttribute manage_undo_transactions manage_upload manage_users manage_workspace contained syn keyword dtmlAttribute management_interface mapping math max- mean- median- meta_type min- contained syn keyword dtmlAttribute MKCOL modified_in_version MOVE multiple name navigate_filter new_version contained syn keyword dtmlAttribute newline_to_br next next-batches next-sequence next-sequence-end-index contained syn keyword dtmlAttribute next-sequence-size next-sequence-start-index no manage_access None contained syn keyword dtmlAttribute nonempty normalize nowrap null Object Manager objectIds objectItems contained syn keyword dtmlAttribute objectMap objectValues octdigits only optional OPTIONS orphan overlap contained syn keyword dtmlAttribute PARENTS PATH_INFO PATH_TRANSLATED permission_settings contained syn keyword dtmlAttribute permissionMappingPossibleValues permissionsOfRole pi port contained syn keyword dtmlAttribute possible_permissions previous previous-batches previous-sequence contained syn keyword dtmlAttribute previous-sequence-end-index previous-sequence-size contained syn keyword dtmlAttribute previous-sequence-start-index PrincipiaFind PrincipiaSearchSource contained syn keyword dtmlAttribute propdict propertyIds propertyItems propertyLabel propertyMap propertyMap contained syn keyword dtmlAttribute propertyValues PROPFIND PROPPATCH PUT query_day query_month QUERY_STRING contained syn keyword dtmlAttribute query_year quoted_input quoted_report raise_standardErrorMessage random contained syn keyword dtmlAttribute read read_raw REMOTE_ADDR REMOTE_HOST REMOTE_IDENT REMOTE_USER REQUEST contained syn keyword dtmlAttribute REQUESTED_METHOD required RESPONSE reverse rolesOfPermission save schema contained syn keyword dtmlAttribute SCRIPT_NAME sequence-end sequence-even sequence-index contained syn keyword dtmlAttribute sequence-index-var- sequence-item sequence-key sequence-Letter contained syn keyword dtmlAttribute sequence-letter sequence-number sequence-odd sequence-query contained syn keyword dtmlAttribute sequence-roman sequence-Roman sequence-start sequence-step-end-index contained syn keyword dtmlAttribute sequence-step-size sequence-step-start-index sequence-var- SERVER_NAME contained syn keyword dtmlAttribute SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE setClassAttr setName single contained syn keyword dtmlAttribute size skip_unauthorized smtphost sort spacify sql_quote SQLConnectionIDs contained syn keyword dtmlAttribute standard-deviation- standard-deviation-n- standard_html_footer contained syn keyword dtmlAttribute standard_html_header start String string subject SubTemplate superValues contained syn keyword dtmlAttribute tabs_path_info tag test_url_ text_content this thousands_commas title contained syn keyword dtmlAttribute title_and_id title_or_id total- tpURL tpValues TRACE translate tree-c contained syn keyword dtmlAttribute tree-colspan tree-e tree-item-expanded tree-item-url tree-level contained syn keyword dtmlAttribute tree-root-url tree-s tree-state type undoable_transactions UNLOCK contained syn keyword dtmlAttribute update_data upper uppercase url url_quote URLn user_names contained syn keyword dtmlAttribute userdefined_roles valid_property_id valid_roles validate_roles contained syn keyword dtmlAttribute validClipData validRoles values variance- variance-n- view_image_or_file contained syn keyword dtmlAttribute where whitespace whrandom xml_namespace zclass_candidate_view_actions contained syn keyword dtmlAttribute ZClassBaseClassNames ziconImage ZopeFind ZQueryIds contained syn keyword dtmlMethod abs absolute_url ac_inherited_permissions aCommon contained syn keyword dtmlMethod aCommonZ acos acquiredRolesAreUsedBy aDay addPropertySheet aMonth AMPM contained syn keyword dtmlMethod ampm AMPMMinutes appendChild appendData appendHeader asin atan atan2 contained syn keyword dtmlMethod atof atoi betavariate capatilize capwords catalog_object ceil center contained syn keyword dtmlMethod choice chr cloneNode COPY cos cosh count createInObjectManager contained syn keyword dtmlMethod createSQLInput cunifvariate Date DateTime Day day dayOfYear dd default contained syn keyword dtmlMethod DELETE deleteData delPropertySheet divmod document_id document_title dow contained syn keyword dtmlMethod earliestTime enter equalTo exp expireCookie expovariate fabs fCommon contained syn keyword dtmlMethod fCommonZ filtered_manage_options filtered_meta_types find float floor contained syn keyword dtmlMethod fmod frexp gamma gauss get get_local_roles_for_userid get_size getattr contained syn keyword dtmlMethod getAttribute getAttributeNode getClassAttr getDomains contained syn keyword dtmlMethod getElementsByTagName getHeader getitem getNamedItem getobject contained syn keyword dtmlMethod getObjectsInfo getpath getProperty getRoles getStatus getUser contained syn keyword dtmlMethod getUserName greaterThan greaterThanEqualTo h_12 h_24 has_key contained syn keyword dtmlMethod has_permission has_role hasattr hasFeature hash hasProperty HEAD hex contained syn keyword dtmlMethod hour hypot index index_html inheritedAttribute insertBefore insertData contained syn keyword dtmlMethod int isCurrentDay isCurrentHour isCurrentMinute isCurrentMonth contained syn keyword dtmlMethod isCurrentYear isFuture isLeadYear isPast item join latestTime ldexp contained syn keyword dtmlMethod leave leave_another len lessThan lessThanEqualTo ljust log log10 contained syn keyword dtmlMethod lognormvariate lower lstrip maketrans manage manage_access contained syn keyword dtmlMethod manage_acquiredPermissions manage_addColumn manage_addDocument contained syn keyword dtmlMethod manage_addDTMLDocument manage_addDTMLMethod manage_addFile contained syn keyword dtmlMethod manage_addFolder manage_addImage manage_addIndex manage_addLocalRoles contained syn keyword dtmlMethod manage_addMailHost manage_addPermission manage_addPrincipiaFactory contained syn keyword dtmlMethod manage_addProduct manage_addProperty manage_addPropertySheet contained syn keyword dtmlMethod manage_addUserFolder manage_addZCatalog manage_addZClass contained syn keyword dtmlMethod manage_addZGadflyConnection manage_addZGadflyConnectionForm contained syn keyword dtmlMethod manage_advanced manage_catalogClear manage_catalogFoundItems contained syn keyword dtmlMethod manage_catalogObject manage_catalogReindex manage_changePermissions contained syn keyword dtmlMethod manage_changeProperties manage_clone manage_CopyContainerFirstItem contained syn keyword dtmlMethod manage_copyObjects manage_createEditor manage_createView contained syn keyword dtmlMethod manage_cutObjects manage_defined_roles manage_delColumns contained syn keyword dtmlMethod manage_delIndexes manage_delLocalRoles manage_delObjects contained syn keyword dtmlMethod manage_delProperties manage_Discard__draft__ manage_distribute contained syn keyword dtmlMethod manage_edit manage_edit manage_editedDialog manage_editProperties contained syn keyword dtmlMethod manage_editRoles manage_exportObject manage_importObject contained syn keyword dtmlMethod manage_makeChanges manage_pasteObjects manage_permission contained syn keyword dtmlMethod manage_propertiesForm manage_proxy manage_renameObject manage_role contained syn keyword dtmlMethod manage_Save__draft__ manage_setLocalRoles manage_setPermissionMapping contained syn keyword dtmlMethod manage_test manage_testForm manage_uncatalogObject contained syn keyword dtmlMethod manage_undo_transactions manage_upload manage_users manage_workspace contained syn keyword dtmlMethod mange_createWizard max min minute MKCOL mm modf month Month MOVE contained syn keyword dtmlMethod namespace new_version nextObject normalvariate notEqualTo objectIds contained syn keyword dtmlMethod objectItems objectValues oct OPTIONS ord paretovariate parts pCommon contained syn keyword dtmlMethod pCommonZ pDay permissionsOfRole pMonth pow PreciseAMPM PreciseTime contained syn keyword dtmlMethod previousObject propertyInfo propertyLabel PROPFIND PROPPATCH PUT quit contained syn keyword dtmlMethod raise_standardErrorMessage randint random read read_raw redirect contained syn keyword dtmlMethod removeAttribute removeAttributeNode removeChild replace replaceChild contained syn keyword dtmlMethod replaceData rfc822 rfind rindex rjust rolesOfPermission round rstrip contained syn keyword dtmlMethod save searchResults second seed set setAttribute setAttributeNode setBase contained syn keyword dtmlMethod setCookie setHeader setStatus sin sinh split splitText sqrt str strip contained syn keyword dtmlMethod substringData superValues swapcase tabs_path_info tan tanh Time contained syn keyword dtmlMethod TimeMinutes timeTime timezone title title_and_id title_or_id toXML contained syn keyword dtmlMethod toZone uncatalog_object undoable_transactions uniform uniqueValuesFor contained syn keyword dtmlMethod update_data upper valid_property_id validate_roles vonmisesvariate contained syn keyword dtmlMethod weibullvariate year yy zfill ZopeFind contained " DTML tags syn keyword dtmlTagName var if elif else unless in with let call raise try except tag comment tree sqlvar sqltest sqlgroup sendmail mime transparent contained syn keyword dtmlEndTagName if unless in with let raise try tree sendmail transparent contained " Own additions syn keyword dtmlTODO TODO FIXME contained syn region dtmlComment start=++ end=++ contains=dtmlTODO " All dtmlTagNames are contained by dtmlIsTag. syn match dtmlIsTag "dtml-[A-Za-z]\+" contains=dtmlTagName " 'var' tag entity syntax: &dtml-variableName; " - with attributes: &dtml.attribute1[.attribute2]...-variableName; syn match dtmlSpecialChar "&dtml[.0-9A-Za-z_]\{-}-[0-9A-Za-z_.]\+;" " Redefine to allow inclusion of DTML within HTML strings. syn cluster htmlTop contains=@Spell,htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,javaScript,@htmlPreproc syn region htmlLink start="[^>]*href\>" end="
"me=e-4 contains=@Spell,htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc syn region htmlHead start="" end=""me=e-7 end=""me=e-5 end=""me=e-3 contains=htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,htmlTitle,javaScript,cssStyle,@htmlPreproc syn region htmlTitle start="" end=""me=e-8 contains=htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc syn region htmlString contained start=+"+ end=+"+ contains=dtmlSpecialChar,htmlSpecialChar,javaScriptExpression,dtmlIsTag,dtmlAttribute,dtmlMethod,@htmlPreproc syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,dtmlIsTag,dtmlAttribute,dtmlMethod,@htmlTagNameCluster syn match htmlTagN contained + " Filenames: *.sass " Last Change: 2016 Aug 29 if exists("b:current_syntax") finish endif runtime! syntax/css.vim syn case ignore syn cluster sassCssProperties contains=cssFontProp,cssFontDescriptorProp,cssColorProp,cssTextProp,cssBoxProp,cssGeneratedContentProp,cssPagingProp,cssUIProp,cssRenderProp,cssAuralProp,cssTableProp syn cluster sassCssAttributes contains=css.*Attr,sassEndOfLineComment,scssComment,cssValue.*,cssColor,cssURL,sassDefault,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssRenderProp syn region sassDefinition matchgroup=cssBraces start="{" end="}" contains=TOP syn match sassProperty "\%([{};]\s*\|^\)\@<=\%([[:alnum:]-]\|#{[^{}]*}\)\+\s*:" contains=css.*Prop skipwhite nextgroup=sassCssAttribute contained containedin=sassDefinition syn match sassProperty "^\s*\zs\s\%(\%([[:alnum:]-]\|#{[^{}]*}\)\+\s*:\|:[[:alnum:]-]\+\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=sassCssAttribute syn match sassProperty "^\s*\zs\s\%(:\=[[:alnum:]-]\+\s*=\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=sassCssAttribute syn match sassCssAttribute +\%("\%([^"]\|\\"\)*"\|'\%([^']\|\\'\)*'\|#{[^{}]*}\|[^{};]\)*+ contained contains=@sassCssAttributes,sassVariable,sassFunction,sassInterpolation syn match sassDefault "!default\>" contained syn match sassVariable "!\%(important\>\|default\>\)\@![[:alnum:]_-]\+" syn match sassVariable "$[[:alnum:]_-]\+" syn match sassVariableAssignment "\%([!$][[:alnum:]_-]\+\s*\)\@<=\%(||\)\==" nextgroup=sassCssAttribute skipwhite syn match sassVariableAssignment "\%([!$][[:alnum:]_-]\+\s*\)\@<=:" nextgroup=sassCssAttribute skipwhite syn match sassFunction "\<\%(rgb\|rgba\|red\|green\|blue\|mix\)\>(\@=" contained syn match sassFunction "\<\%(hsl\|hsla\|hue\|saturation\|lightness\|adjust-hue\|lighten\|darken\|saturate\|desaturate\|grayscale\|complement\)\>(\@=" contained syn match sassFunction "\<\%(alpha\|opacity\|rgba\|opacify\|fade-in\|transparentize\|fade-out\)\>(\@=" contained syn match sassFunction "\<\%(unquote\|quote\)\>(\@=" contained syn match sassFunction "\<\%(percentage\|round\|ceil\|floor\|abs\)\>(\@=" contained syn match sassFunction "\<\%(type-of\|unit\|unitless\|comparable\)\>(\@=" contained syn region sassInterpolation matchgroup=sassInterpolationDelimiter start="#{" end="}" contains=@sassCssAttributes,sassVariable,sassFunction containedin=cssStringQ,cssStringQQ,cssPseudoClass,sassProperty syn match sassMixinName "[[:alnum:]_-]\+" contained nextgroup=sassCssAttribute syn match sassMixin "^=" nextgroup=sassMixinName skipwhite syn match sassMixin "\%([{};]\s*\|^\s*\)\@<=@mixin" nextgroup=sassMixinName skipwhite syn match sassMixing "^\s\+\zs+" nextgroup=sassMixinName syn match sassMixing "\%([{};]\s*\|^\s*\)\@<=@include" nextgroup=sassMixinName skipwhite syn match sassExtend "\%([{};]\s*\|^\s*\)\@<=@extend" syn match sassPlaceholder "\%([{};]\s*\|^\s*\)\@<=%" nextgroup=sassMixinName skipwhite syn match sassFunctionName "[[:alnum:]_-]\+" contained nextgroup=sassCssAttribute syn match sassFunctionDecl "\%([{};]\s*\|^\s*\)\@<=@function" nextgroup=sassFunctionName skipwhite syn match sassReturn "\%([{};]\s*\|^\s*\)\@<=@return" syn match sassEscape "^\s*\zs\\" syn match sassIdChar "#[[:alnum:]_-]\@=" nextgroup=sassId syn match sassId "[[:alnum:]_-]\+" contained syn match sassClassChar "\.[[:alnum:]_-]\@=" nextgroup=sassClass syn match sassClass "[[:alnum:]_-]\+" contained syn match sassAmpersand "&" " TODO: Attribute namespaces " TODO: Arithmetic (including strings and concatenation) syn region sassMediaQuery matchgroup=sassMedia start="@media" end="[{};]\@=\|$" contains=sassMediaOperators syn keyword sassMediaOperators and not only contained syn region sassCharset start="@charset" end=";\|$" contains=scssComment,cssStringQ,cssStringQQ,cssURL,cssUnicodeEscape,cssMediaType syn region sassInclude start="@import" end=";\|$" contains=scssComment,cssStringQ,cssStringQQ,cssURL,cssUnicodeEscape,cssMediaType syn region sassDebugLine end=";\|$" matchgroup=sassDebug start="@debug\>" contains=@sassCssAttributes,sassVariable,sassFunction syn region sassWarnLine end=";\|$" matchgroup=sassWarn start="@warn\>" contains=@sassCssAttributes,sassVariable,sassFunction syn region sassControlLine matchgroup=sassControl start="@\%(if\|else\%(\s\+if\)\=\|while\|for\|each\)\>" end="[{};]\@=\|$" contains=sassFor,@sassCssAttributes,sassVariable,sassFunction syn keyword sassFor from to through in contained syn keyword sassTodo FIXME NOTE TODO OPTIMIZE XXX contained syn region sassComment start="^\z(\s*\)//" end="^\%(\z1 \)\@!" contains=sassTodo,@Spell syn region sassCssComment start="^\z(\s*\)/\*" end="^\%(\z1 \)\@!" contains=sassTodo,@Spell syn match sassEndOfLineComment "//.*" contains=sassComment,sassTodo,@Spell hi def link sassEndOfLineComment sassComment hi def link sassCssComment sassComment hi def link sassComment Comment hi def link sassDefault cssImportant hi def link sassVariable Identifier hi def link sassFunction Function hi def link sassMixing PreProc hi def link sassMixin PreProc hi def link sassPlaceholder PreProc hi def link sassExtend PreProc hi def link sassFunctionDecl PreProc hi def link sassReturn PreProc hi def link sassTodo Todo hi def link sassCharset PreProc hi def link sassMedia PreProc hi def link sassMediaOperators PreProc hi def link sassInclude Include hi def link sassDebug sassControl hi def link sassWarn sassControl hi def link sassControl PreProc hi def link sassFor PreProc hi def link sassEscape Special hi def link sassIdChar Special hi def link sassClassChar Special hi def link sassInterpolationDelimiter Delimiter hi def link sassAmpersand Character hi def link sassId Identifier hi def link sassClass Type let b:current_syntax = "sass" " vim:set sw=2: PK&]K-:-:vim80/syntax/php.vimnu[" Vim syntax file " Language: php PHP 3/4/5/7 " Maintainer: Jason Woofenden " Last Change: Jul 14, 2017 " URL: https://jasonwoof.com/gitweb/?p=vim-syntax.git;a=blob;f=php.vim;hb=HEAD " Former Maintainers: Peter Hodge " Debian VIM Maintainers " " Note: If you are using a colour terminal with dark background, you will " probably find the 'elflord' colorscheme is much better for PHP's syntax " than the default colourscheme, because elflord's colours will better " highlight the break-points (Statements) in your code. " " Options: " Set to anything to enable: " php_sql_query SQL syntax highlighting inside strings " php_htmlInStrings HTML syntax highlighting inside strings " php_baselib highlighting baselib functions " php_asp_tags highlighting ASP-style short tags " php_parent_error_close highlighting parent error ] or ) " php_parent_error_open skipping an php end tag, if there exists " an open ( or [ without a closing one " php_oldStyle use old colorstyle " php_noShortTags don't sync as php " Set to a specific value: " php_folding = 1 fold classes and functions " php_folding = 2 fold all { } regions " php_sync_method = x where x is an integer: " -1 sync by search ( default ) " >0 sync at least x lines backwards " 0 sync from start " Set to 0 to _disable_: (Added by Peter Hodge On June 9, 2006) " php_special_functions = 0 highlight functions with abnormal behaviour " php_alt_comparisons = 0 comparison operators in an alternate colour " php_alt_assignByReference = 0 '= &' in an alternate colour " " " Note: " Setting php_folding=1 will match a closing } by comparing the indent " before the class or function keyword with the indent of a matching }. " Setting php_folding=2 will match all of pairs of {,} ( see known " bugs ii ) " Known Bugs: " - setting php_parent_error_close on and php_parent_error_open off " has these two leaks: " i) A closing ) or ] inside a string match to the last open ( or [ " before the string, when the the closing ) or ] is on the same line " where the string started. In this case a following ) or ] after " the string would be highlighted as an error, what is incorrect. " ii) Same problem if you are setting php_folding = 2 with a closing " } inside an string on the first line of this string. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'php' endif runtime! syntax/html.vim unlet b:current_syntax " accept old options if !exists("php_sync_method") if exists("php_minlines") let php_sync_method=php_minlines else let php_sync_method=-1 endif endif if exists("php_parentError") && !exists("php_parent_error_open") && !exists("php_parent_error_close") let php_parent_error_close=1 let php_parent_error_open=1 endif syn cluster htmlPreproc add=phpRegion,phpRegionAsp,phpRegionSc syn include @sqlTop syntax/sql.vim syn sync clear unlet b:current_syntax syn cluster sqlTop remove=sqlString,sqlComment if exists( "php_sql_query") syn cluster phpAddStrings contains=@sqlTop endif if exists( "php_htmlInStrings") syn cluster phpAddStrings add=@htmlTop endif " make sure we can use \ at the begining of the line to do a continuation let s:cpo_save = &cpo set cpo&vim syn case match " Env Variables syn keyword phpEnvVar GATEWAY_INTERFACE SERVER_NAME SERVER_SOFTWARE SERVER_PROTOCOL REQUEST_METHOD QUERY_STRING DOCUMENT_ROOT HTTP_ACCEPT HTTP_ACCEPT_CHARSET HTTP_ENCODING HTTP_ACCEPT_LANGUAGE HTTP_CONNECTION HTTP_HOST HTTP_REFERER HTTP_USER_AGENT REMOTE_ADDR REMOTE_PORT SCRIPT_FILENAME SERVER_ADMIN SERVER_PORT SERVER_SIGNATURE PATH_TRANSLATED SCRIPT_NAME REQUEST_URI contained " Internal Variables syn keyword phpIntVar GLOBALS PHP_ERRMSG PHP_SELF HTTP_GET_VARS HTTP_POST_VARS HTTP_COOKIE_VARS HTTP_POST_FILES HTTP_ENV_VARS HTTP_SERVER_VARS HTTP_SESSION_VARS HTTP_RAW_POST_DATA HTTP_STATE_VARS _GET _POST _COOKIE _FILES _SERVER _ENV _SERVER _REQUEST _SESSION contained " Constants syn keyword phpCoreConstant PHP_VERSION PHP_OS DEFAULT_INCLUDE_PATH PEAR_INSTALL_DIR PEAR_EXTENSION_DIR PHP_EXTENSION_DIR PHP_BINDIR PHP_LIBDIR PHP_DATADIR PHP_SYSCONFDIR PHP_LOCALSTATEDIR PHP_CONFIG_FILE_PATH PHP_OUTPUT_HANDLER_START PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_END contained " Predefined constants " Generated by: curl -q http://php.net/manual/en/errorfunc.constants.php | grep -oP 'E_\w+' | sort -u syn keyword phpCoreConstant 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 contained syn case ignore syn keyword phpConstant __LINE__ __FILE__ __FUNCTION__ __METHOD__ __CLASS__ __DIR__ __NAMESPACE__ __TRAIT__ contained " Function and Methods ripped from php_manual_de.tar.gz Jan 2003 syn keyword phpFunctions apache_child_terminate apache_get_modules apache_get_version apache_getenv apache_lookup_uri apache_note apache_request_headers apache_response_headers apache_setenv ascii2ebcdic ebcdic2ascii getallheaders virtual contained syn keyword phpFunctions array_change_key_case array_chunk array_column array_combine array_count_values array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_diff array_fill_keys array_fill array_filter array_flip array_intersect_assoc array_intersect_key array_intersect_uassoc array_intersect_ukey array_intersect array_key_exists array_keys array_map array_merge_recursive array_merge array_multisort array_pad array_pop array_product array_push array_rand array_reduce array_replace_recursive array_replace array_reverse array_search array_shift array_slice array_splice array_sum array_udiff_assoc array_udiff_uassoc array_udiff array_uintersect_assoc array_uintersect_uassoc array_uintersect array_unique array_unshift array_values array_walk_recursive array_walk arsort asort count current each end in_array key_exists key krsort ksort natcasesort natsort next pos prev range reset rsort shuffle sizeof sort uasort uksort usort contained syn keyword phpFunctions aspell_check aspell_new aspell_suggest contained syn keyword phpFunctions bcadd bccomp bcdiv bcmod bcmul bcpow bcpowmod bcscale bcsqrt bcsub contained syn keyword phpFunctions bzclose bzcompress bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite contained syn keyword phpFunctions cal_days_in_month cal_from_jd cal_info cal_to_jd easter_date easter_days frenchtojd gregoriantojd jddayofweek jdmonthname jdtofrench jdtogregorian jdtojewish jdtojulian jdtounix jewishtojd juliantojd unixtojd contained syn keyword phpFunctions ccvs_add ccvs_auth ccvs_command ccvs_count ccvs_delete ccvs_done ccvs_init ccvs_lookup ccvs_new ccvs_report ccvs_return ccvs_reverse ccvs_sale ccvs_status ccvs_textvalue ccvs_void contained syn keyword phpFunctions call_user_method_array call_user_method class_exists get_class_methods get_class_vars get_class get_declared_classes get_object_vars get_parent_class is_a is_subclass_of method_exists contained syn keyword phpFunctions com VARIANT com_addref com_get com_invoke com_isenum com_load_typelib com_load com_propget com_propput com_propset com_release com_set contained syn keyword phpFunctions cpdf_add_annotation cpdf_add_outline cpdf_arc cpdf_begin_text cpdf_circle cpdf_clip cpdf_close cpdf_closepath_fill_stroke cpdf_closepath_stroke cpdf_closepath cpdf_continue_text cpdf_curveto cpdf_end_text cpdf_fill_stroke cpdf_fill cpdf_finalize_page cpdf_finalize cpdf_global_set_document_limits cpdf_import_jpeg cpdf_lineto cpdf_moveto cpdf_newpath cpdf_open cpdf_output_buffer cpdf_page_init cpdf_place_inline_image cpdf_rect cpdf_restore cpdf_rlineto cpdf_rmoveto cpdf_rotate_text cpdf_rotate cpdf_save_to_file cpdf_save cpdf_scale cpdf_set_action_url cpdf_set_char_spacing cpdf_set_creator cpdf_set_current_page cpdf_set_font_directories cpdf_set_font_map_file cpdf_set_font cpdf_set_horiz_scaling cpdf_set_keywords cpdf_set_leading cpdf_set_page_animation cpdf_set_subject cpdf_set_text_matrix cpdf_set_text_pos cpdf_set_text_rendering cpdf_set_text_rise cpdf_set_title cpdf_set_viewer_preferences cpdf_set_word_spacing cpdf_setdash cpdf_setflat cpdf_setgray_fill cpdf_setgray_stroke cpdf_setgray cpdf_setlinecap cpdf_setlinejoin cpdf_setlinewidth cpdf_setmiterlimit cpdf_setrgbcolor_fill cpdf_setrgbcolor_stroke cpdf_setrgbcolor cpdf_show_xy cpdf_show cpdf_stringwidth cpdf_stroke cpdf_text cpdf_translate contained syn keyword phpFunctions crack_check crack_closedict crack_getlastmessage crack_opendict contained syn keyword phpFunctions ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_graph ctype_lower ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit contained syn keyword phpFunctions curl_close curl_errno curl_error curl_exec curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_setopt curl_version contained syn keyword phpFunctions cybercash_base64_decode cybercash_base64_encode cybercash_decr cybercash_encr contained syn keyword phpFunctions cyrus_authenticate cyrus_bind cyrus_close cyrus_connect cyrus_query cyrus_unbind contained syn keyword phpFunctions checkdate date getdate gettimeofday gmdate gmmktime gmstrftime localtime microtime mktime strftime strtotime time contained syn keyword phpFunctions dba_close dba_delete dba_exists dba_fetch dba_firstkey dba_handlers dba_insert dba_key_split dba_list dba_nextkey dba_open dba_optimize dba_popen dba_replace dba_sync contained syn keyword phpFunctions dbase_add_record dbase_close dbase_create dbase_delete_record dbase_get_header_info dbase_get_record_with_names dbase_get_record dbase_numfields dbase_numrecords dbase_open dbase_pack dbase_replace_record contained syn keyword phpFunctions dblist dbmclose dbmdelete dbmexists dbmfetch dbmfirstkey dbminsert dbmnextkey dbmopen dbmreplace contained syn keyword phpFunctions dbplus_add dbplus_aql dbplus_chdir dbplus_close dbplus_curr dbplus_errcode dbplus_errno dbplus_find dbplus_first dbplus_flush dbplus_freealllocks dbplus_freelock dbplus_freerlocks dbplus_getlock dbplus_getunique dbplus_info dbplus_last dbplus_lockrel dbplus_next dbplus_open dbplus_prev dbplus_rchperm dbplus_rcreate dbplus_rcrtexact dbplus_rcrtlike dbplus_resolve dbplus_restorepos dbplus_rkeys dbplus_ropen dbplus_rquery dbplus_rrename dbplus_rsecindex dbplus_runlink dbplus_rzap dbplus_savepos dbplus_setindex dbplus_setindexbynumber dbplus_sql dbplus_tcl dbplus_tremove dbplus_undo dbplus_undoprepare dbplus_unlockrel dbplus_unselect dbplus_update dbplus_xlockrel dbplus_xunlockrel contained syn keyword phpFunctions dbx_close dbx_compare dbx_connect dbx_error dbx_escape_string dbx_fetch_row dbx_query dbx_sort contained syn keyword phpFunctions dio_close dio_fcntl dio_open dio_read dio_seek dio_stat dio_tcsetattr dio_truncate dio_write contained syn keyword phpFunctions chdir chroot dir closedir getcwd opendir readdir rewinddir scandir contained syn keyword phpFunctions domxml_new_doc domxml_open_file domxml_open_mem domxml_version domxml_xmltree domxml_xslt_stylesheet_doc domxml_xslt_stylesheet_file domxml_xslt_stylesheet xpath_eval_expression xpath_eval xpath_new_context xptr_eval xptr_new_context contained syn keyword phpMethods name specified value create_attribute create_cdata_section create_comment create_element_ns create_element create_entity_reference create_processing_instruction create_text_node doctype document_element dump_file dump_mem get_element_by_id get_elements_by_tagname html_dump_mem xinclude entities internal_subset name notations public_id system_id get_attribute_node get_attribute get_elements_by_tagname has_attribute remove_attribute set_attribute tagname add_namespace append_child append_sibling attributes child_nodes clone_node dump_node first_child get_content has_attributes has_child_nodes insert_before is_blank_node last_child next_sibling node_name node_type node_value owner_document parent_node prefix previous_sibling remove_child replace_child replace_node set_content set_name set_namespace unlink_node data target process result_dump_file result_dump_mem contained syn keyword phpFunctions dotnet_load contained syn keyword phpFunctions debug_backtrace debug_print_backtrace error_log error_reporting restore_error_handler set_error_handler trigger_error user_error contained syn keyword phpFunctions escapeshellarg escapeshellcmd exec passthru proc_close proc_get_status proc_nice proc_open proc_terminate shell_exec system contained syn keyword phpFunctions fam_cancel_monitor fam_close fam_monitor_collection fam_monitor_directory fam_monitor_file fam_next_event fam_open fam_pending fam_resume_monitor fam_suspend_monitor contained syn keyword phpFunctions fbsql_affected_rows fbsql_autocommit fbsql_change_user fbsql_close fbsql_commit fbsql_connect fbsql_create_blob fbsql_create_clob fbsql_create_db fbsql_data_seek fbsql_database_password fbsql_database fbsql_db_query fbsql_db_status fbsql_drop_db fbsql_errno fbsql_error fbsql_fetch_array fbsql_fetch_assoc fbsql_fetch_field fbsql_fetch_lengths fbsql_fetch_object fbsql_fetch_row fbsql_field_flags fbsql_field_len fbsql_field_name fbsql_field_seek fbsql_field_table fbsql_field_type fbsql_free_result fbsql_get_autostart_info fbsql_hostname fbsql_insert_id fbsql_list_dbs fbsql_list_fields fbsql_list_tables fbsql_next_result fbsql_num_fields fbsql_num_rows fbsql_password fbsql_pconnect fbsql_query fbsql_read_blob fbsql_read_clob fbsql_result fbsql_rollback fbsql_select_db fbsql_set_lob_mode fbsql_set_transaction fbsql_start_db fbsql_stop_db fbsql_tablename fbsql_username fbsql_warnings contained syn keyword phpFunctions fdf_add_doc_javascript fdf_add_template fdf_close fdf_create fdf_enum_values fdf_errno fdf_error fdf_get_ap fdf_get_attachment fdf_get_encoding fdf_get_file fdf_get_flags fdf_get_opt fdf_get_status fdf_get_value fdf_get_version fdf_header fdf_next_field_name fdf_open_string fdf_open fdf_remove_item fdf_save_string fdf_save fdf_set_ap fdf_set_encoding fdf_set_file fdf_set_flags fdf_set_javascript_action fdf_set_opt fdf_set_status fdf_set_submit_form_action fdf_set_target_frame fdf_set_value fdf_set_version contained syn keyword phpFunctions filepro_fieldcount filepro_fieldname filepro_fieldtype filepro_fieldwidth filepro_retrieve filepro_rowcount filepro contained syn keyword phpFunctions basename chgrp chmod chown clearstatcache copy delete dirname disk_free_space disk_total_space diskfreespace fclose feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents file fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype flock fnmatch fopen fpassthru fputs fread fscanf fseek fstat ftell ftruncate fwrite glob is_dir is_executable is_file is_link is_readable is_uploaded_file is_writable is_writeable link linkinfo lstat mkdir move_uploaded_file parse_ini_file pathinfo pclose popen readfile readlink realpath rename rewind rmdir set_file_buffer stat symlink tempnam tmpfile touch umask unlink contained syn keyword phpFunctions fribidi_log2vis contained syn keyword phpFunctions ftp_alloc ftp_cdup ftp_chdir ftp_chmod ftp_close ftp_connect ftp_delete ftp_exec ftp_fget ftp_fput ftp_get_option ftp_get ftp_login ftp_mdtm ftp_mkdir ftp_nb_continue ftp_nb_fget ftp_nb_fput ftp_nb_get ftp_nb_put ftp_nlist ftp_pasv ftp_put ftp_pwd ftp_quit ftp_raw ftp_rawlist ftp_rename ftp_rmdir ftp_set_option ftp_site ftp_size ftp_ssl_connect ftp_systype contained syn keyword phpFunctions call_user_func_array call_user_func create_function func_get_arg func_get_args func_num_args function_exists get_defined_functions register_shutdown_function register_tick_function unregister_tick_function contained syn keyword phpFunctions bind_textdomain_codeset bindtextdomain dcgettext dcngettext dgettext dngettext gettext ngettext textdomain contained syn keyword phpFunctions gmp_abs gmp_add gmp_and gmp_clrbit gmp_cmp gmp_com gmp_div_q gmp_div_qr gmp_div_r gmp_div gmp_divexact gmp_fact gmp_gcd gmp_gcdext gmp_hamdist gmp_init gmp_intval gmp_invert gmp_jacobi gmp_legendre gmp_mod gmp_mul gmp_neg gmp_or gmp_perfect_square gmp_popcount gmp_pow gmp_powm gmp_prob_prime gmp_random gmp_scan0 gmp_scan1 gmp_setbit gmp_sign gmp_sqrt gmp_sqrtrem gmp_sqrtrm gmp_strval gmp_sub gmp_xor contained syn keyword phpFunctions header headers_list headers_sent setcookie contained syn keyword phpFunctions hw_api_attribute hwapi_hgcsp hw_api_content hw_api_object contained syn keyword phpMethods key langdepvalue value values checkin checkout children mimetype read content copy dbstat dcstat dstanchors dstofsrcanchors count reason find ftstat hwstat identify info insert insertanchor insertcollection insertdocument link lock move assign attreditable count insert remove title value object objectbyanchor parents description type remove replace setcommitedversion srcanchors srcsofdst unlock user userlist contained syn keyword phpFunctions hw_Array2Objrec hw_changeobject hw_Children hw_ChildrenObj hw_Close hw_Connect hw_connection_info hw_cp hw_Deleteobject hw_DocByAnchor hw_DocByAnchorObj hw_Document_Attributes hw_Document_BodyTag hw_Document_Content hw_Document_SetContent hw_Document_Size hw_dummy hw_EditText hw_Error hw_ErrorMsg hw_Free_Document hw_GetAnchors hw_GetAnchorsObj hw_GetAndLock hw_GetChildColl hw_GetChildCollObj hw_GetChildDocColl hw_GetChildDocCollObj hw_GetObject hw_GetObjectByQuery hw_GetObjectByQueryColl hw_GetObjectByQueryCollObj hw_GetObjectByQueryObj hw_GetParents hw_GetParentsObj hw_getrellink hw_GetRemote hw_getremotechildren hw_GetSrcByDestObj hw_GetText hw_getusername hw_Identify hw_InCollections hw_Info hw_InsColl hw_InsDoc hw_insertanchors hw_InsertDocument hw_InsertObject hw_mapid hw_Modifyobject hw_mv hw_New_Document hw_objrec2array hw_Output_Document hw_pConnect hw_PipeDocument hw_Root hw_setlinkroot hw_stat hw_Unlock hw_Who contained syn keyword phpFunctions ibase_add_user ibase_affected_rows ibase_blob_add ibase_blob_cancel ibase_blob_close ibase_blob_create ibase_blob_echo ibase_blob_get ibase_blob_import ibase_blob_info ibase_blob_open ibase_close ibase_commit_ret ibase_commit ibase_connect ibase_delete_user ibase_drop_db ibase_errcode ibase_errmsg ibase_execute ibase_fetch_assoc ibase_fetch_object ibase_fetch_row ibase_field_info ibase_free_event_handler ibase_free_query ibase_free_result ibase_gen_id ibase_modify_user ibase_name_result ibase_num_fields ibase_num_params ibase_param_info ibase_pconnect ibase_prepare ibase_query ibase_rollback_ret ibase_rollback ibase_set_event_handler ibase_timefmt ibase_trans ibase_wait_event contained syn keyword phpFunctions iconv_get_encoding iconv_mime_decode_headers iconv_mime_decode iconv_mime_encode iconv_set_encoding iconv_strlen iconv_strpos iconv_strrpos iconv_substr iconv ob_iconv_handler contained syn keyword phpFunctions ifx_affected_rows ifx_blobinfile_mode ifx_byteasvarchar ifx_close ifx_connect ifx_copy_blob ifx_create_blob ifx_create_char ifx_do ifx_error ifx_errormsg ifx_fetch_row ifx_fieldproperties ifx_fieldtypes ifx_free_blob ifx_free_char ifx_free_result ifx_get_blob ifx_get_char ifx_getsqlca ifx_htmltbl_result ifx_nullformat ifx_num_fields ifx_num_rows ifx_pconnect ifx_prepare ifx_query ifx_textasvarchar ifx_update_blob ifx_update_char ifxus_close_slob ifxus_create_slob ifxus_free_slob ifxus_open_slob ifxus_read_slob ifxus_seek_slob ifxus_tell_slob ifxus_write_slob contained syn keyword phpFunctions exif_imagetype exif_read_data exif_thumbnail gd_info getimagesize image_type_to_mime_type image2wbmp imagealphablending imageantialias imagearc imagechar imagecharup imagecolorallocate imagecolorallocatealpha imagecolorat imagecolorclosest imagecolorclosestalpha imagecolorclosesthwb imagecolordeallocate imagecolorexact imagecolorexactalpha imagecolormatch imagecolorresolve imagecolorresolvealpha imagecolorset imagecolorsforindex imagecolorstotal imagecolortransparent imagecopy imagecopymerge imagecopymergegray imagecopyresampled imagecopyresized imagecreate imagecreatefromgd2 imagecreatefromgd2part imagecreatefromgd imagecreatefromgif imagecreatefromjpeg imagecreatefrompng imagecreatefromstring imagecreatefromwbmp imagecreatefromxbm imagecreatefromxpm imagecreatetruecolor imagedashedline imagedestroy imageellipse imagefill imagefilledarc imagefilledellipse imagefilledpolygon imagefilledrectangle imagefilltoborder imagefontheight imagefontwidth imageftbbox imagefttext imagegammacorrect imagegd2 imagegd imagegif imageinterlace imageistruecolor imagejpeg imageline imageloadfont imagepalettecopy imagepng imagepolygon imagepsbbox imagepscopyfont imagepsencodefont imagepsextendfont imagepsfreefont imagepsloadfont imagepsslantfont imagepstext imagerectangle imagerotate imagesavealpha imagesetbrush imagesetpixel imagesetstyle imagesetthickness imagesettile imagestring imagestringup imagesx imagesy imagetruecolortopalette imagettfbbox imagettftext imagetypes imagewbmp iptcembed iptcparse jpeg2wbmp png2wbmp read_exif_data contained syn keyword phpFunctions imap_8bit imap_alerts imap_append imap_base64 imap_binary imap_body imap_bodystruct imap_check imap_clearflag_full imap_close imap_createmailbox imap_delete imap_deletemailbox imap_errors imap_expunge imap_fetch_overview imap_fetchbody imap_fetchheader imap_fetchstructure imap_get_quota imap_get_quotaroot imap_getacl imap_getmailboxes imap_getsubscribed imap_header imap_headerinfo imap_headers imap_last_error imap_list imap_listmailbox imap_listscan imap_listsubscribed imap_lsub imap_mail_compose imap_mail_copy imap_mail_move imap_mail imap_mailboxmsginfo imap_mime_header_decode imap_msgno imap_num_msg imap_num_recent imap_open imap_ping imap_qprint imap_renamemailbox imap_reopen imap_rfc822_parse_adrlist imap_rfc822_parse_headers imap_rfc822_write_address imap_scanmailbox imap_search imap_set_quota imap_setacl imap_setflag_full imap_sort imap_status imap_subscribe imap_thread imap_timeout imap_uid imap_undelete imap_unsubscribe imap_utf7_decode imap_utf7_encode imap_utf8 contained syn keyword phpFunctions assert_options assert dl extension_loaded get_cfg_var get_current_user get_defined_constants get_extension_funcs get_include_path get_included_files get_loaded_extensions get_magic_quotes_gpc get_magic_quotes_runtime get_required_files getenv getlastmod getmygid getmyinode getmypid getmyuid getopt getrusage ini_alter ini_get_all ini_get ini_restore ini_set main memory_get_usage php_ini_scanned_files php_logo_guid php_sapi_name php_uname phpcredits phpinfo phpversion putenv restore_include_path set_include_path set_magic_quotes_runtime set_time_limit version_compare zend_logo_guid zend_version contained syn keyword phpFunctions ingres_autocommit ingres_close ingres_commit ingres_connect ingres_fetch_array ingres_fetch_object ingres_fetch_row ingres_field_length ingres_field_name ingres_field_nullable ingres_field_precision ingres_field_scale ingres_field_type ingres_num_fields ingres_num_rows ingres_pconnect ingres_query ingres_rollback contained syn keyword phpFunctions ircg_channel_mode ircg_disconnect ircg_fetch_error_msg ircg_get_username ircg_html_encode ircg_ignore_add ircg_ignore_del ircg_is_conn_alive ircg_join ircg_kick ircg_lookup_format_messages ircg_msg ircg_nick ircg_nickname_escape ircg_nickname_unescape ircg_notice ircg_part ircg_pconnect ircg_register_format_messages ircg_set_current ircg_set_file ircg_set_on_die ircg_topic ircg_whois contained syn keyword phpFunctions java_last_exception_clear java_last_exception_get contained syn keyword phpFunctions json_decode json_encode json_last_error contained syn keyword phpFunctions ldap_8859_to_t61 ldap_add ldap_bind ldap_close ldap_compare ldap_connect ldap_count_entries ldap_delete ldap_dn2ufn ldap_err2str ldap_errno ldap_error ldap_explode_dn ldap_first_attribute ldap_first_entry ldap_first_reference ldap_free_result ldap_get_attributes ldap_get_dn ldap_get_entries ldap_get_option ldap_get_values_len ldap_get_values ldap_list ldap_mod_add ldap_mod_del ldap_mod_replace ldap_modify ldap_next_attribute ldap_next_entry ldap_next_reference ldap_parse_reference ldap_parse_result ldap_read ldap_rename ldap_search ldap_set_option ldap_set_rebind_proc ldap_sort ldap_start_tls ldap_t61_to_8859 ldap_unbind contained syn keyword phpFunctions lzf_compress lzf_decompress lzf_optimized_for contained syn keyword phpFunctions ezmlm_hash mail contained syn keyword phpFunctions mailparse_determine_best_xfer_encoding mailparse_msg_create mailparse_msg_extract_part_file mailparse_msg_extract_part mailparse_msg_free mailparse_msg_get_part_data mailparse_msg_get_part mailparse_msg_get_structure mailparse_msg_parse_file mailparse_msg_parse mailparse_rfc822_parse_addresses mailparse_stream_encode mailparse_uudecode_all contained syn keyword phpFunctions abs acos acosh asin asinh atan2 atan atanh base_convert bindec ceil cos cosh decbin dechex decoct deg2rad exp expm1 floor fmod getrandmax hexdec hypot is_finite is_infinite is_nan lcg_value log10 log1p log max min mt_getrandmax mt_rand mt_srand octdec pi pow rad2deg rand round sin sinh sqrt srand tan tanh contained syn keyword phpFunctions mb_convert_case mb_convert_encoding mb_convert_kana mb_convert_variables mb_decode_mimeheader mb_decode_numericentity mb_detect_encoding mb_detect_order mb_encode_mimeheader mb_encode_numericentity mb_ereg_match mb_ereg_replace mb_ereg_search_getpos mb_ereg_search_getregs mb_ereg_search_init mb_ereg_search_pos mb_ereg_search_regs mb_ereg_search_setpos mb_ereg_search mb_ereg mb_eregi_replace mb_eregi mb_get_info mb_http_input mb_http_output mb_internal_encoding mb_language mb_output_handler mb_parse_str mb_preferred_mime_name mb_regex_encoding mb_regex_set_options mb_send_mail mb_split mb_strcut mb_strimwidth mb_strlen mb_strpos mb_strrpos mb_strtolower mb_strtoupper mb_strwidth mb_substitute_character mb_substr_count mb_substr contained syn keyword phpFunctions mcal_append_event mcal_close mcal_create_calendar mcal_date_compare mcal_date_valid mcal_day_of_week mcal_day_of_year mcal_days_in_month mcal_delete_calendar mcal_delete_event mcal_event_add_attribute mcal_event_init mcal_event_set_alarm mcal_event_set_category mcal_event_set_class mcal_event_set_description mcal_event_set_end mcal_event_set_recur_daily mcal_event_set_recur_monthly_mday mcal_event_set_recur_monthly_wday mcal_event_set_recur_none mcal_event_set_recur_weekly mcal_event_set_recur_yearly mcal_event_set_start mcal_event_set_title mcal_expunge mcal_fetch_current_stream_event mcal_fetch_event mcal_is_leap_year mcal_list_alarms mcal_list_events mcal_next_recurrence mcal_open mcal_popen mcal_rename_calendar mcal_reopen mcal_snooze mcal_store_event mcal_time_valid mcal_week_of_year contained syn keyword phpFunctions mcrypt_cbc mcrypt_cfb mcrypt_create_iv mcrypt_decrypt mcrypt_ecb mcrypt_enc_get_algorithms_name mcrypt_enc_get_block_size mcrypt_enc_get_iv_size mcrypt_enc_get_key_size mcrypt_enc_get_modes_name mcrypt_enc_get_supported_key_sizes mcrypt_enc_is_block_algorithm_mode mcrypt_enc_is_block_algorithm mcrypt_enc_is_block_mode mcrypt_enc_self_test mcrypt_encrypt mcrypt_generic_deinit mcrypt_generic_end mcrypt_generic_init mcrypt_generic mcrypt_get_block_size mcrypt_get_cipher_name mcrypt_get_iv_size mcrypt_get_key_size mcrypt_list_algorithms mcrypt_list_modes mcrypt_module_close mcrypt_module_get_algo_block_size mcrypt_module_get_algo_key_size mcrypt_module_get_supported_key_sizes mcrypt_module_is_block_algorithm_mode mcrypt_module_is_block_algorithm mcrypt_module_is_block_mode mcrypt_module_open mcrypt_module_self_test mcrypt_ofb mdecrypt_generic contained syn keyword phpFunctions mcve_adduser mcve_adduserarg mcve_bt mcve_checkstatus mcve_chkpwd mcve_chngpwd mcve_completeauthorizations mcve_connect mcve_connectionerror mcve_deleteresponse mcve_deletetrans mcve_deleteusersetup mcve_deluser mcve_destroyconn mcve_destroyengine mcve_disableuser mcve_edituser mcve_enableuser mcve_force mcve_getcell mcve_getcellbynum mcve_getcommadelimited mcve_getheader mcve_getuserarg mcve_getuserparam mcve_gft mcve_gl mcve_gut mcve_initconn mcve_initengine mcve_initusersetup mcve_iscommadelimited mcve_liststats mcve_listusers mcve_maxconntimeout mcve_monitor mcve_numcolumns mcve_numrows mcve_override mcve_parsecommadelimited mcve_ping mcve_preauth mcve_preauthcompletion mcve_qc mcve_responseparam mcve_return mcve_returncode mcve_returnstatus mcve_sale mcve_setblocking mcve_setdropfile mcve_setip mcve_setssl_files mcve_setssl mcve_settimeout mcve_settle mcve_text_avs mcve_text_code mcve_text_cv mcve_transactionauth mcve_transactionavs mcve_transactionbatch mcve_transactioncv mcve_transactionid mcve_transactionitem mcve_transactionssent mcve_transactiontext mcve_transinqueue mcve_transnew mcve_transparam mcve_transsend mcve_ub mcve_uwait mcve_verifyconnection mcve_verifysslcert mcve_void contained syn keyword phpFunctions mhash_count mhash_get_block_size mhash_get_hash_name mhash_keygen_s2k mhash contained syn keyword phpFunctions mime_content_type contained syn keyword phpFunctions ming_setcubicthreshold ming_setscale ming_useswfversion SWFAction SWFBitmap swfbutton_keypress SWFbutton SWFDisplayItem SWFFill SWFFont SWFGradient SWFMorph SWFMovie SWFShape SWFSprite SWFText SWFTextField contained syn keyword phpMethods getHeight getWidth addAction addShape setAction setdown setHit setOver setUp addColor move moveTo multColor remove Rotate rotateTo scale scaleTo setDepth setName setRatio skewX skewXTo skewY skewYTo moveTo rotateTo scaleTo skewXTo skewYTo getwidth addEntry getshape1 getshape2 add nextframe output remove save setbackground setdimension setframes setrate streammp3 addFill drawCurve drawCurveTo drawLine drawLineTo movePen movePenTo setLeftFill setLine setRightFill add nextframe remove setframes addString getWidth moveTo setColor setFont setHeight setSpacing addstring align setbounds setcolor setFont setHeight setindentation setLeftMargin setLineSpacing setMargins setname setrightMargin contained syn keyword phpFunctions connection_aborted connection_status connection_timeout constant define defined die eval exit get_browser highlight_file highlight_string ignore_user_abort pack show_source sleep uniqid unpack usleep contained syn keyword phpFunctions udm_add_search_limit udm_alloc_agent udm_api_version udm_cat_list udm_cat_path udm_check_charset udm_check_stored udm_clear_search_limits udm_close_stored udm_crc32 udm_errno udm_error udm_find udm_free_agent udm_free_ispell_data udm_free_res udm_get_doc_count udm_get_res_field udm_get_res_param udm_load_ispell_data udm_open_stored udm_set_agent_param contained syn keyword phpFunctions msession_connect msession_count msession_create msession_destroy msession_disconnect msession_find msession_get_array msession_get msession_getdata msession_inc msession_list msession_listvar msession_lock msession_plugin msession_randstr msession_set_array msession_set msession_setdata msession_timeout msession_uniq msession_unlock contained syn keyword phpFunctions msql_affected_rows msql_close msql_connect msql_create_db msql_createdb msql_data_seek msql_dbname msql_drop_db msql_dropdb msql_error msql_fetch_array msql_fetch_field msql_fetch_object msql_fetch_row msql_field_seek msql_fieldflags msql_fieldlen msql_fieldname msql_fieldtable msql_fieldtype msql_free_result msql_freeresult msql_list_dbs msql_list_fields msql_list_tables msql_listdbs msql_listfields msql_listtables msql_num_fields msql_num_rows msql_numfields msql_numrows msql_pconnect msql_query msql_regcase msql_result msql_select_db msql_selectdb msql_tablename msql contained syn keyword phpFunctions mssql_bind mssql_close mssql_connect mssql_data_seek mssql_execute mssql_fetch_array mssql_fetch_assoc mssql_fetch_batch mssql_fetch_field mssql_fetch_object mssql_fetch_row mssql_field_length mssql_field_name mssql_field_seek mssql_field_type mssql_free_result mssql_free_statement mssql_get_last_message mssql_guid_string mssql_init mssql_min_error_severity mssql_min_message_severity mssql_next_result mssql_num_fields mssql_num_rows mssql_pconnect mssql_query mssql_result mssql_rows_affected mssql_select_db contained syn keyword phpFunctions muscat_close muscat_get muscat_give muscat_setup_net muscat_setup contained syn keyword phpFunctions mysql_affected_rows mysql_change_user mysql_client_encoding mysql_close mysql_connect mysql_create_db mysql_data_seek mysql_db_name mysql_db_query mysql_drop_db mysql_errno mysql_error mysql_escape_string mysql_fetch_array mysql_fetch_assoc mysql_fetch_field mysql_fetch_lengths mysql_fetch_object mysql_fetch_row mysql_field_flags mysql_field_len mysql_field_name mysql_field_seek mysql_field_table mysql_field_type mysql_free_result mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql_insert_id mysql_list_dbs mysql_list_fields mysql_list_processes mysql_list_tables mysql_num_fields mysql_num_rows mysql_pconnect mysql_ping mysql_query mysql_real_escape_string mysql_result mysql_select_db mysql_stat mysql_tablename mysql_thread_id mysql_unbuffered_query contained syn keyword phpFunctions mysqli_affected_rows mysqli_autocommit mysqli_bind_param mysqli_bind_result mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect mysqli_data_seek mysqli_debug mysqli_disable_reads_from_master mysqli_disable_rpl_parse mysqli_dump_debug_info mysqli_enable_reads_from_master mysqli_enable_rpl_parse mysqli_errno mysqli_error mysqli_execute mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_fetch mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_client_info mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_master_query mysqli_num_fields mysqli_num_rows mysqli_options mysqli_param_count mysqli_ping mysqli_prepare_result mysqli_prepare mysqli_profiler mysqli_query mysqli_read_query_result mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reload mysqli_rollback mysqli_rpl_parse_enabled mysqli_rpl_probe mysqli_rpl_query_type mysqli_select_db mysqli_send_long_data mysqli_send_query mysqli_slave_query mysqli_ssl_set mysqli_stat mysqli_stmt_affected_rows mysqli_stmt_close mysqli_stmt_errno mysqli_stmt_error mysqli_stmt_store_result mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count contained syn keyword phpFunctions ncurses_addch ncurses_addchnstr ncurses_addchstr ncurses_addnstr ncurses_addstr ncurses_assume_default_colors ncurses_attroff ncurses_attron ncurses_attrset ncurses_baudrate ncurses_beep ncurses_bkgd ncurses_bkgdset ncurses_border ncurses_bottom_panel ncurses_can_change_color ncurses_cbreak ncurses_clear ncurses_clrtobot ncurses_clrtoeol ncurses_color_content ncurses_color_set ncurses_curs_set ncurses_def_prog_mode ncurses_def_shell_mode ncurses_define_key ncurses_del_panel ncurses_delay_output ncurses_delch ncurses_deleteln ncurses_delwin ncurses_doupdate ncurses_echo ncurses_echochar ncurses_end ncurses_erase ncurses_erasechar ncurses_filter ncurses_flash ncurses_flushinp ncurses_getch ncurses_getmaxyx ncurses_getmouse ncurses_getyx ncurses_halfdelay ncurses_has_colors ncurses_has_ic ncurses_has_il ncurses_has_key ncurses_hide_panel ncurses_hline ncurses_inch ncurses_init_color ncurses_init_pair ncurses_init ncurses_insch ncurses_insdelln ncurses_insertln ncurses_insstr ncurses_instr ncurses_isendwin ncurses_keyok ncurses_keypad ncurses_killchar ncurses_longname ncurses_meta ncurses_mouse_trafo ncurses_mouseinterval ncurses_mousemask ncurses_move_panel ncurses_move ncurses_mvaddch ncurses_mvaddchnstr ncurses_mvaddchstr ncurses_mvaddnstr ncurses_mvaddstr ncurses_mvcur ncurses_mvdelch ncurses_mvgetch ncurses_mvhline ncurses_mvinch ncurses_mvvline ncurses_mvwaddstr ncurses_napms ncurses_new_panel ncurses_newpad ncurses_newwin ncurses_nl ncurses_nocbreak ncurses_noecho ncurses_nonl ncurses_noqiflush ncurses_noraw ncurses_pair_content ncurses_panel_above ncurses_panel_below ncurses_panel_window ncurses_pnoutrefresh ncurses_prefresh ncurses_putp ncurses_qiflush ncurses_raw ncurses_refresh ncurses_replace_panel ncurses_reset_prog_mode ncurses_reset_shell_mode ncurses_resetty ncurses_savetty ncurses_scr_dump ncurses_scr_init ncurses_scr_restore ncurses_scr_set ncurses_scrl ncurses_show_panel ncurses_slk_attr ncurses_slk_attroff ncurses_slk_attron ncurses_slk_attrset ncurses_slk_clear ncurses_slk_color ncurses_slk_init ncurses_slk_noutrefresh ncurses_slk_refresh ncurses_slk_restore ncurses_slk_set ncurses_slk_touch ncurses_standend ncurses_standout ncurses_start_color ncurses_termattrs ncurses_termname ncurses_timeout ncurses_top_panel ncurses_typeahead ncurses_ungetch ncurses_ungetmouse ncurses_update_panels ncurses_use_default_colors ncurses_use_env ncurses_use_extended_names ncurses_vidattr ncurses_vline ncurses_waddch ncurses_waddstr ncurses_wattroff ncurses_wattron ncurses_wattrset ncurses_wborder ncurses_wclear ncurses_wcolor_set ncurses_werase ncurses_wgetch ncurses_whline ncurses_wmouse_trafo ncurses_wmove ncurses_wnoutrefresh ncurses_wrefresh ncurses_wstandend ncurses_wstandout ncurses_wvline contained syn keyword phpFunctions checkdnsrr closelog debugger_off debugger_on define_syslog_variables dns_check_record dns_get_mx dns_get_record fsockopen gethostbyaddr gethostbyname gethostbynamel getmxrr getprotobyname getprotobynumber getservbyname getservbyport ip2long long2ip openlog pfsockopen socket_get_status socket_set_blocking socket_set_timeout syslog contained syn keyword phpFunctions yp_all yp_cat yp_err_string yp_errno yp_first yp_get_default_domain yp_master yp_match yp_next yp_order contained syn keyword phpFunctions notes_body notes_copy_db notes_create_db notes_create_note notes_drop_db notes_find_note notes_header_info notes_list_msgs notes_mark_read notes_mark_unread notes_nav_create notes_search notes_unread notes_version contained syn keyword phpFunctions nsapi_request_headers nsapi_response_headers nsapi_virtual contained syn keyword phpFunctions aggregate_info aggregate_methods_by_list aggregate_methods_by_regexp aggregate_methods aggregate_properties_by_list aggregate_properties_by_regexp aggregate_properties aggregate aggregation_info deaggregate contained syn keyword phpFunctions ocibindbyname ocicancel ocicloselob ocicollappend ocicollassign ocicollassignelem ocicollgetelem ocicollmax ocicollsize ocicolltrim ocicolumnisnull ocicolumnname ocicolumnprecision ocicolumnscale ocicolumnsize ocicolumntype ocicolumntyperaw ocicommit ocidefinebyname ocierror ociexecute ocifetch ocifetchinto ocifetchstatement ocifreecollection ocifreecursor ocifreedesc ocifreestatement ociinternaldebug ociloadlob ocilogoff ocilogon ocinewcollection ocinewcursor ocinewdescriptor ocinlogon ocinumcols ociparse ociplogon ociresult ocirollback ocirowcount ocisavelob ocisavelobfile ociserverversion ocisetprefetch ocistatementtype ociwritelobtofile ociwritetemporarylob contained syn keyword phpFunctions odbc_autocommit odbc_binmode odbc_close_all odbc_close odbc_columnprivileges odbc_columns odbc_commit odbc_connect odbc_cursor odbc_data_source odbc_do odbc_error odbc_errormsg odbc_exec odbc_execute odbc_fetch_array odbc_fetch_into odbc_fetch_object odbc_fetch_row odbc_field_len odbc_field_name odbc_field_num odbc_field_precision odbc_field_scale odbc_field_type odbc_foreignkeys odbc_free_result odbc_gettypeinfo odbc_longreadlen odbc_next_result odbc_num_fields odbc_num_rows odbc_pconnect odbc_prepare odbc_primarykeys odbc_procedurecolumns odbc_procedures odbc_result_all odbc_result odbc_rollback odbc_setoption odbc_specialcolumns odbc_statistics odbc_tableprivileges odbc_tables contained syn keyword phpFunctions openssl_cipher_iv_length openssl_csr_export_to_file openssl_csr_export openssl_csr_get_public_key openssl_csr_get_subject openssl_csr_new openssl_csr_sign openssl_decrypt openssl_dh_compute_key openssl_digest openssl_encrypt openssl_error_string openssl_free_key openssl_get_cert_locations openssl_get_cipher_methods openssl_get_md_methods openssl_get_privatekey openssl_get_publickey openssl_open openssl_pbkdf2 openssl_pkcs12_export_to_file openssl_pkcs12_export openssl_pkcs12_read openssl_pkcs7_decrypt openssl_pkcs7_encrypt openssl_pkcs7_sign openssl_pkcs7_verify openssl_pkey_export_to_file openssl_pkey_export openssl_pkey_free openssl_pkey_get_details openssl_pkey_get_private openssl_pkey_get_public openssl_pkey_new openssl_private_decrypt openssl_private_encrypt openssl_public_decrypt openssl_public_encrypt openssl_random_pseudo_bytes openssl_seal openssl_sign openssl_spki_export_challenge openssl_spki_export openssl_spki_new openssl_spki_verify openssl_verify openssl_x509_check_private_key openssl_x509_checkpurpose openssl_x509_export_to_file openssl_x509_export openssl_x509_fingerprint openssl_x509_free openssl_x509_parse openssl_x509_read contained syn keyword phpFunctions ora_bind ora_close ora_columnname ora_columnsize ora_columntype ora_commit ora_commitoff ora_commiton ora_do ora_error ora_errorcode ora_exec ora_fetch_into ora_fetch ora_getcolumn ora_logoff ora_logon ora_numcols ora_numrows ora_open ora_parse ora_plogon ora_rollback contained syn keyword phpFunctions flush ob_clean ob_end_clean ob_end_flush ob_flush ob_get_clean ob_get_contents ob_get_flush ob_get_length ob_get_level ob_get_status ob_gzhandler ob_implicit_flush ob_list_handlers ob_start output_add_rewrite_var output_reset_rewrite_vars contained syn keyword phpFunctions overload contained syn keyword phpFunctions ovrimos_close ovrimos_commit ovrimos_connect ovrimos_cursor ovrimos_exec ovrimos_execute ovrimos_fetch_into ovrimos_fetch_row ovrimos_field_len ovrimos_field_name ovrimos_field_num ovrimos_field_type ovrimos_free_result ovrimos_longreadlen ovrimos_num_fields ovrimos_num_rows ovrimos_prepare ovrimos_result_all ovrimos_result ovrimos_rollback contained syn keyword phpFunctions pcntl_exec pcntl_fork pcntl_signal pcntl_waitpid pcntl_wexitstatus pcntl_wifexited pcntl_wifsignaled pcntl_wifstopped pcntl_wstopsig pcntl_wtermsig contained syn keyword phpFunctions preg_grep preg_match_all preg_match preg_quote preg_replace_callback preg_replace preg_split contained syn keyword phpFunctions pdf_add_annotation pdf_add_bookmark pdf_add_launchlink pdf_add_locallink pdf_add_note pdf_add_outline pdf_add_pdflink pdf_add_thumbnail pdf_add_weblink pdf_arc pdf_arcn pdf_attach_file pdf_begin_page pdf_begin_pattern pdf_begin_template pdf_circle pdf_clip pdf_close_image pdf_close_pdi_page pdf_close_pdi pdf_close pdf_closepath_fill_stroke pdf_closepath_stroke pdf_closepath pdf_concat pdf_continue_text pdf_curveto pdf_delete pdf_end_page pdf_end_pattern pdf_end_template pdf_endpath pdf_fill_stroke pdf_fill pdf_findfont pdf_get_buffer pdf_get_font pdf_get_fontname pdf_get_fontsize pdf_get_image_height pdf_get_image_width pdf_get_majorversion pdf_get_minorversion pdf_get_parameter pdf_get_pdi_parameter pdf_get_pdi_value pdf_get_value pdf_initgraphics pdf_lineto pdf_makespotcolor pdf_moveto pdf_new pdf_open_CCITT pdf_open_file pdf_open_gif pdf_open_image_file pdf_open_image pdf_open_jpeg pdf_open_memory_image pdf_open_pdi_page pdf_open_pdi pdf_open_png pdf_open_tiff pdf_open pdf_place_image pdf_place_pdi_page pdf_rect pdf_restore pdf_rotate pdf_save pdf_scale pdf_set_border_color pdf_set_border_dash pdf_set_border_style pdf_set_char_spacing pdf_set_duration pdf_set_font pdf_set_horiz_scaling pdf_set_info_author pdf_set_info_creator pdf_set_info_keywords pdf_set_info_subject pdf_set_info_title pdf_set_info pdf_set_leading pdf_set_parameter pdf_set_text_matrix pdf_set_text_pos pdf_set_text_rendering pdf_set_text_rise pdf_set_value pdf_set_word_spacing pdf_setcolor pdf_setdash pdf_setflat pdf_setfont pdf_setgray_fill pdf_setgray_stroke pdf_setgray pdf_setlinecap pdf_setlinejoin pdf_setlinewidth pdf_setmatrix pdf_setmiterlimit pdf_setpolydash pdf_setrgbcolor_fill pdf_setrgbcolor_stroke pdf_setrgbcolor pdf_show_boxed pdf_show_xy pdf_show pdf_skew pdf_stringwidth pdf_stroke pdf_translate contained syn keyword phpFunctions pfpro_cleanup pfpro_init pfpro_process_raw pfpro_process pfpro_version contained syn keyword phpFunctions pg_affected_rows pg_cancel_query pg_client_encoding pg_close pg_connect pg_connection_busy pg_connection_reset pg_connection_status pg_convert pg_copy_from pg_copy_to pg_dbname pg_delete pg_end_copy pg_escape_bytea pg_escape_string pg_fetch_all pg_fetch_array pg_fetch_assoc pg_fetch_object pg_fetch_result pg_fetch_row pg_field_is_null pg_field_name pg_field_num pg_field_prtlen pg_field_size pg_field_type pg_free_result pg_get_notify pg_get_pid pg_get_result pg_host pg_insert pg_last_error pg_last_notice pg_last_oid pg_lo_close pg_lo_create pg_lo_export pg_lo_import pg_lo_open pg_lo_read_all pg_lo_read pg_lo_seek pg_lo_tell pg_lo_unlink pg_lo_write pg_meta_data pg_num_fields pg_num_rows pg_options pg_pconnect pg_ping pg_port pg_put_line pg_query pg_result_error pg_result_seek pg_result_status pg_select pg_send_query pg_set_client_encoding pg_trace pg_tty pg_unescape_bytea pg_untrace pg_update contained syn keyword phpFunctions posix_ctermid posix_get_last_error posix_getcwd posix_getegid posix_geteuid posix_getgid posix_getgrgid posix_getgrnam posix_getgroups posix_getlogin posix_getpgid posix_getpgrp posix_getpid posix_getppid posix_getpwnam posix_getpwuid posix_getrlimit posix_getsid posix_getuid posix_isatty posix_kill posix_mkfifo posix_setegid posix_seteuid posix_setgid posix_setpgid posix_setsid posix_setuid posix_strerror posix_times posix_ttyname posix_uname contained syn keyword phpFunctions printer_abort printer_close printer_create_brush printer_create_dc printer_create_font printer_create_pen printer_delete_brush printer_delete_dc printer_delete_font printer_delete_pen printer_draw_bmp printer_draw_chord printer_draw_elipse printer_draw_line printer_draw_pie printer_draw_rectangle printer_draw_roundrect printer_draw_text printer_end_doc printer_end_page printer_get_option printer_list printer_logical_fontheight printer_open printer_select_brush printer_select_font printer_select_pen printer_set_option printer_start_doc printer_start_page printer_write contained syn keyword phpFunctions pspell_add_to_personal pspell_add_to_session pspell_check pspell_clear_session pspell_config_create pspell_config_ignore pspell_config_mode pspell_config_personal pspell_config_repl pspell_config_runtogether pspell_config_save_repl pspell_new_config pspell_new_personal pspell_new pspell_save_wordlist pspell_store_replacement pspell_suggest contained syn keyword phpFunctions qdom_error qdom_tree contained syn keyword phpFunctions readline_add_history readline_clear_history readline_completion_function readline_info readline_list_history readline_read_history readline_write_history readline contained syn keyword phpFunctions recode_file recode_string recode contained syn keyword phpFunctions ereg_replace ereg eregi_replace eregi split spliti sql_regcase contained syn keyword phpFunctions ftok msg_get_queue msg_receive msg_remove_queue msg_send msg_set_queue msg_stat_queue sem_acquire sem_get sem_release sem_remove shm_attach shm_detach shm_get_var shm_put_var shm_remove_var shm_remove contained syn keyword phpFunctions sesam_affected_rows sesam_commit sesam_connect sesam_diagnostic sesam_disconnect sesam_errormsg sesam_execimm sesam_fetch_array sesam_fetch_result sesam_fetch_row sesam_field_array sesam_field_name sesam_free_result sesam_num_fields sesam_query sesam_rollback sesam_seek_row sesam_settransaction contained syn keyword phpFunctions session_cache_expire session_cache_limiter session_decode session_destroy session_encode session_get_cookie_params session_id session_is_registered session_module_name session_name session_regenerate_id session_register session_save_path session_set_cookie_params session_set_save_handler session_start session_unregister session_unset session_write_close contained syn keyword phpFunctions shmop_close shmop_delete shmop_open shmop_read shmop_size shmop_write contained syn keyword phpFunctions snmp_get_quick_print snmp_set_quick_print snmpget snmprealwalk snmpset snmpwalk snmpwalkoid contained syn keyword phpFunctions socket_accept socket_bind socket_clear_error socket_close socket_connect socket_create_listen socket_create_pair socket_create socket_get_option socket_getpeername socket_getsockname socket_iovec_add socket_iovec_alloc socket_iovec_delete socket_iovec_fetch socket_iovec_free socket_iovec_set socket_last_error socket_listen socket_read socket_readv socket_recv socket_recvfrom socket_recvmsg socket_select socket_send socket_sendmsg socket_sendto socket_set_block socket_set_nonblock socket_set_option socket_shutdown socket_strerror socket_write socket_writev contained syn keyword phpFunctions sqlite_array_query sqlite_busy_timeout sqlite_changes sqlite_close sqlite_column sqlite_create_aggregate sqlite_create_function sqlite_current sqlite_error_string sqlite_escape_string sqlite_fetch_array sqlite_fetch_single sqlite_fetch_string sqlite_field_name sqlite_has_more sqlite_last_error sqlite_last_insert_rowid sqlite_libencoding sqlite_libversion sqlite_next sqlite_num_fields sqlite_num_rows sqlite_open sqlite_popen sqlite_query sqlite_rewind sqlite_seek sqlite_udf_decode_binary sqlite_udf_encode_binary sqlite_unbuffered_query contained syn keyword phpFunctions stream_context_create stream_context_get_options stream_context_set_option stream_context_set_params stream_copy_to_stream stream_filter_append stream_filter_prepend stream_filter_register stream_get_contents stream_get_filters stream_get_line stream_get_meta_data stream_get_transports stream_get_wrappers stream_register_wrapper stream_select stream_set_blocking stream_set_timeout stream_set_write_buffer stream_socket_accept stream_socket_client stream_socket_get_name stream_socket_recvfrom stream_socket_sendto stream_socket_server stream_wrapper_register contained syn keyword phpFunctions addcslashes addslashes bin2hex chop chr chunk_split convert_cyr_string count_chars crc32 crypt explode fprintf get_html_translation_table hebrev hebrevc html_entity_decode htmlentities htmlspecialchars implode join levenshtein localeconv ltrim md5_file md5 metaphone money_format nl_langinfo nl2br number_format ord parse_str print printf quoted_printable_decode quotemeta rtrim setlocale sha1_file sha1 similar_text soundex sprintf sscanf str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split str_word_count strcasecmp strchr strcmp strcoll strcspn strip_tags stripcslashes stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpos strrchr strrev strripos strrpos strspn strstr strtok strtolower strtoupper strtr substr_compare substr_count substr_replace substr trim ucfirst ucwords vprintf vsprintf wordwrap contained syn keyword phpFunctions swf_actiongeturl swf_actiongotoframe swf_actiongotolabel swf_actionnextframe swf_actionplay swf_actionprevframe swf_actionsettarget swf_actionstop swf_actiontogglequality swf_actionwaitforframe swf_addbuttonrecord swf_addcolor swf_closefile swf_definebitmap swf_definefont swf_defineline swf_definepoly swf_definerect swf_definetext swf_endbutton swf_enddoaction swf_endshape swf_endsymbol swf_fontsize swf_fontslant swf_fonttracking swf_getbitmapinfo swf_getfontinfo swf_getframe swf_labelframe swf_lookat swf_modifyobject swf_mulcolor swf_nextid swf_oncondition swf_openfile swf_ortho2 swf_ortho swf_perspective swf_placeobject swf_polarview swf_popmatrix swf_posround swf_pushmatrix swf_removeobject swf_rotate swf_scale swf_setfont swf_setframe swf_shapearc swf_shapecurveto3 swf_shapecurveto swf_shapefillbitmapclip swf_shapefillbitmaptile swf_shapefilloff swf_shapefillsolid swf_shapelinesolid swf_shapelineto swf_shapemoveto swf_showframe swf_startbutton swf_startdoaction swf_startshape swf_startsymbol swf_textwidth swf_translate swf_viewport contained syn keyword phpFunctions sybase_affected_rows sybase_close sybase_connect sybase_data_seek sybase_deadlock_retry_count sybase_fetch_array sybase_fetch_assoc sybase_fetch_field sybase_fetch_object sybase_fetch_row sybase_field_seek sybase_free_result sybase_get_last_message sybase_min_client_severity sybase_min_error_severity sybase_min_message_severity sybase_min_server_severity sybase_num_fields sybase_num_rows sybase_pconnect sybase_query sybase_result sybase_select_db sybase_set_message_handler sybase_unbuffered_query contained syn keyword phpFunctions tidy_access_count tidy_clean_repair tidy_config_count tidy_diagnose tidy_error_count tidy_get_body tidy_get_config tidy_get_error_buffer tidy_get_head tidy_get_html_ver tidy_get_html tidy_get_output tidy_get_release tidy_get_root tidy_get_status tidy_getopt tidy_is_xhtml tidy_load_config tidy_parse_file tidy_parse_string tidy_repair_file tidy_repair_string tidy_reset_config tidy_save_config tidy_set_encoding tidy_setopt tidy_warning_count contained syn keyword phpMethods attributes children get_attr get_nodes has_children has_siblings is_asp is_comment is_html is_jsp is_jste is_text is_xhtml is_xml next prev tidy_node contained syn keyword phpFunctions token_get_all token_name contained syn keyword phpFunctions base64_decode base64_encode get_meta_tags http_build_query parse_url rawurldecode rawurlencode urldecode urlencode contained syn keyword phpFunctions doubleval empty floatval get_defined_vars get_resource_type gettype import_request_variables intval is_array is_bool is_callable is_double is_float is_int is_integer is_long is_null is_numeric is_object is_real is_resource is_scalar is_string isset print_r serialize settype strval unserialize unset var_dump var_export contained syn keyword phpFunctions vpopmail_add_alias_domain_ex vpopmail_add_alias_domain vpopmail_add_domain_ex vpopmail_add_domain vpopmail_add_user vpopmail_alias_add vpopmail_alias_del_domain vpopmail_alias_del vpopmail_alias_get_all vpopmail_alias_get vpopmail_auth_user vpopmail_del_domain_ex vpopmail_del_domain vpopmail_del_user vpopmail_error vpopmail_passwd vpopmail_set_user_quota contained syn keyword phpFunctions w32api_deftype w32api_init_dtype w32api_invoke_function w32api_register_function w32api_set_call_method contained syn keyword phpFunctions wddx_add_vars wddx_deserialize wddx_packet_end wddx_packet_start wddx_serialize_value wddx_serialize_vars contained syn keyword phpFunctions utf8_decode utf8_encode xml_error_string xml_get_current_byte_index xml_get_current_column_number xml_get_current_line_number xml_get_error_code xml_parse_into_struct xml_parse xml_parser_create_ns xml_parser_create xml_parser_free xml_parser_get_option xml_parser_set_option xml_set_character_data_handler xml_set_default_handler xml_set_element_handler xml_set_end_namespace_decl_handler xml_set_external_entity_ref_handler xml_set_notation_decl_handler xml_set_object xml_set_processing_instruction_handler xml_set_start_namespace_decl_handler xml_set_unparsed_entity_decl_handler contained syn keyword phpFunctions xmlrpc_decode_request xmlrpc_decode xmlrpc_encode_request xmlrpc_encode xmlrpc_get_type xmlrpc_parse_method_descriptions xmlrpc_server_add_introspection_data xmlrpc_server_call_method xmlrpc_server_create xmlrpc_server_destroy xmlrpc_server_register_introspection_callback xmlrpc_server_register_method xmlrpc_set_type contained syn keyword phpFunctions xslt_create xslt_errno xslt_error xslt_free xslt_output_process xslt_set_base xslt_set_encoding xslt_set_error_handler xslt_set_log xslt_set_sax_handler xslt_set_sax_handlers xslt_set_scheme_handler xslt_set_scheme_handlers contained syn keyword phpFunctions yaz_addinfo yaz_ccl_conf yaz_ccl_parse yaz_close yaz_connect yaz_database yaz_element yaz_errno yaz_error yaz_es_result yaz_get_option yaz_hits yaz_itemorder yaz_present yaz_range yaz_record yaz_scan_result yaz_scan yaz_schema yaz_search yaz_set_option yaz_sort yaz_syntax yaz_wait contained syn keyword phpFunctions zip_close zip_entry_close zip_entry_compressedsize zip_entry_compressionmethod zip_entry_filesize zip_entry_name zip_entry_open zip_entry_read zip_open zip_read contained syn keyword phpFunctions gzclose gzcompress gzdeflate gzencode gzeof gzfile gzgetc gzgets gzgetss gzinflate gzopen gzpassthru gzputs gzread gzrewind gzseek gztell gzuncompress gzwrite readgzfile zlib_get_coding_type contained if exists( "php_baselib" ) syn keyword phpMethods query next_record num_rows affected_rows nf f p np num_fields haltmsg seek link_id query_id metadata table_names nextid connect halt free register unregister is_registered delete url purl self_url pself_url hidden_session add_query padd_query reimport_get_vars reimport_post_vars reimport_cookie_vars set_container set_tokenname release_token put_headers get_id get_id put_id freeze thaw gc reimport_any_vars start url purl login_if is_authenticated auth_preauth auth_loginform auth_validatelogin auth_refreshlogin auth_registerform auth_doregister start check have_perm permsum perm_invalid contained syn keyword phpFunctions page_open page_close sess_load sess_save contained endif " Conditional syn keyword phpConditional declare else enddeclare endswitch elseif endif if switch contained " Repeat syn keyword phpRepeat as do endfor endforeach endwhile for foreach while contained " Repeat syn keyword phpLabel case default switch contained " Statement syn keyword phpStatement return break continue exit goto yield contained " Keyword syn keyword phpKeyword var const contained " Type syn keyword phpType bool boolean int integer real double float string array object NULL callable iterable contained " Structure syn keyword phpStructure namespace extends implements instanceof parent self contained " Operator syn match phpOperator "[-=+%^&|*!.~?:]" contained display syn match phpOperator "[-+*/%^&|.]=" contained display syn match phpOperator "/[^*/]"me=e-1 contained display syn match phpOperator "\$" contained display syn match phpOperator "&&\|\" contained display syn match phpOperator "||\|\" contained display syn match phpRelation "[!=<>]=" contained display syn match phpRelation "[<>]" contained display syn match phpMemberSelector "->" contained display syn match phpVarSelector "\$" contained display " Identifier syn match phpIdentifier "$\h\w*" contained contains=phpEnvVar,phpIntVar,phpVarSelector display syn match phpIdentifierSimply "${\h\w*}" contains=phpOperator,phpParent contained display syn region phpIdentifierComplex matchgroup=phpParent start="{\$"rs=e-1 end="}" contains=phpIdentifier,phpMemberSelector,phpVarSelector,phpIdentifierComplexP contained extend syn region phpIdentifierComplexP matchgroup=phpParent start="\[" end="]" contains=@phpClInside contained " Interpolated indentifiers (inside strings) syn match phpBrackets "[][}{]" contained display " errors syn match phpInterpSimpleError "\[[^]]*\]" contained display " fallback (if nothing else matches) syn match phpInterpSimpleError "->[^a-zA-Z_]" contained display " make sure these stay above the correct DollarCurlies so they don't take priority syn match phpInterpBogusDollarCurley "${[^}]*}" contained display " fallback (if nothing else matches) syn match phpinterpSimpleBracketsInner "\w\+" contained syn match phpInterpSimpleBrackets "\[\h\w*]" contained contains=phpBrackets,phpInterpSimpleBracketsInner syn match phpInterpSimpleBrackets "\[\d\+]" contained contains=phpBrackets,phpInterpSimpleBracketsInner syn match phpInterpSimpleBrackets "\[0[xX]\x\+]" contained contains=phpBrackets,phpInterpSimpleBracketsInner syn match phpInterpSimple "\$\h\w*\(\[[^]]*\]\|->\h\w*\)\?" contained contains=phpInterpSimpleBrackets,phpIdentifier,phpInterpSimpleError,phpMethods,phpMemberSelector display syn match phpInterpVarname "\h\w*" contained syn match phpInterpMethodName "\h\w*" contained " default color syn match phpInterpSimpleCurly "\${\h\w*}" contains=phpInterpVarname contained extend syn region phpInterpDollarCurley1Helper matchgroup=phpParent start="{" end="\[" contains=phpInterpVarname contained syn region phpInterpDollarCurly1 matchgroup=phpParent start="\${\h\w*\["rs=s+1 end="]}" contains=phpInterpDollarCurley1Helper,@phpClConst contained extend syn match phpInterpDollarCurley2Helper "{\h\w*->" contains=phpBrackets,phpInterpVarname,phpMemberSelector contained syn region phpInterpDollarCurly2 matchgroup=phpParent start="\${\h\w*->"rs=s+1 end="}" contains=phpInterpDollarCurley2Helper,phpInterpMethodName contained syn match phpInterpBogusDollarCurley "${\h\w*->}" contained display syn match phpInterpBogusDollarCurley "${\h\w*\[]}" contained display syn region phpInterpComplex matchgroup=phpParent start="{\$"rs=e-1 end="}" contains=phpIdentifier,phpMemberSelector,phpVarSelector,phpIdentifierComplexP contained extend syn region phpIdentifierComplexP matchgroup=phpParent start="\[" end="]" contains=@phpClInside contained " define a cluster to get all interpolation syntaxes for double-quoted strings syn cluster phpInterpDouble contains=phpInterpSimple,phpInterpSimpleCurly,phpInterpDollarCurly1,phpInterpDollarCurly2,phpInterpBogusDollarCurley,phpInterpComplex " Methoden syn match phpMethodsVar "->\h\w*" contained contains=phpMethods,phpMemberSelector display " Include syn keyword phpInclude include require include_once require_once use contained " Define syn keyword phpDefine new clone contained " Boolean syn keyword phpBoolean true false contained " Number syn match phpNumber "-\=\<\d\+\>" contained display syn match phpNumber "\<0x\x\{1,8}\>" contained display " Float syn match phpFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" contained display " Backslash escapes syn case match " for double quotes and heredoc syn match phpBackslashSequences "\\[fnrtv\\\"$]" contained display syn match phpBackslashSequences "\\\d\{1,3}" contained contains=phpOctalError display syn match phpBackslashSequences "\\x\x\{1,2}" contained display " additional sequence for double quotes only syn match phpBackslashDoubleQuote "\\[\"]" contained display " for single quotes only syn match phpBackslashSingleQuote "\\[\\']" contained display syn case ignore " Error syn match phpOctalError "[89]" contained display if exists("php_parent_error_close") syn match phpParentError "[)\]}]" contained display endif " Todo syn keyword phpTodo todo fixme xxx contained " Comment if exists("php_parent_error_open") syn region phpComment start="/\*" end="\*/" contained contains=phpTodo,@Spell else syn region phpComment start="/\*" end="\*/" contained contains=phpTodo,@Spell extend endif syn match phpComment "#.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell syn match phpComment "//.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell " String if exists("php_parent_error_open") syn region phpStringDouble matchgroup=phpStringDouble start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble,@Spell contained keepend syn region phpBacktick matchgroup=phpBacktick start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained keepend syn region phpStringSingle matchgroup=phpStringSingle start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpBackslashSingleQuote,@Spell contained keepend else syn region phpStringDouble matchgroup=phpStringDouble start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble,@Spell contained extend keepend syn region phpBacktick matchgroup=phpBacktick start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained extend keepend syn region phpStringSingle matchgroup=phpStringSingle start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpBackslashSingleQuote,@Spell contained keepend extend endif " HereDoc and NowDoc syn case match " HereDoc syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\I\i*\)\2$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend " including HTML,JavaScript,SQL even if not enabled via options syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend " NowDoc syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\I\i*\)'$" end="^\z1\(;\=$\)\@=" contained contains=@Spell keepend extend " including HTML,JavaScript,SQL even if not enabled via options syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,@Spell keepend extend syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,@Spell keepend extend syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,@Spell keepend extend syn case ignore " Parent if exists("php_parent_error_close") || exists("php_parent_error_open") syn match phpParent "[{}]" contained syn region phpParent matchgroup=Delimiter start="(" end=")" contained contains=@phpClInside transparent syn region phpParent matchgroup=Delimiter start="\[" end="\]" contained contains=@phpClInside transparent if !exists("php_parent_error_close") syn match phpParent "[\])]" contained endif else syn match phpParent "[({[\]})]" contained endif syn cluster phpClConst contains=phpFunctions,phpIdentifier,phpConditional,phpRepeat,phpStatement,phpOperator,phpRelation,phpStringSingle,phpStringDouble,phpBacktick,phpNumber,phpFloat,phpKeyword,phpType,phpBoolean,phpStructure,phpMethodsVar,phpConstant,phpCoreConstant,phpException syn cluster phpClInside contains=@phpClConst,phpComment,phpLabel,phpParent,phpParentError,phpInclude,phpHereDoc,phpNowDoc syn cluster phpClFunction contains=@phpClInside,phpDefine,phpParentError,phpStorageClass syn cluster phpClTop contains=@phpClFunction,phpFoldFunction,phpFoldClass,phpFoldInterface,phpFoldTry,phpFoldCatch " Php Region if exists("php_parent_error_open") if exists("php_noShortTags") syn region phpRegion matchgroup=Delimiter start="" contains=@phpClTop else syn region phpRegion matchgroup=Delimiter start="" contains=@phpClTop endif syn region phpRegionSc matchgroup=Delimiter start=++ contains=@phpClTop if exists("php_asp_tags") syn region phpRegionAsp matchgroup=Delimiter start="<%\(=\)\=" end="%>" contains=@phpClTop endif else if exists("php_noShortTags") syn region phpRegion matchgroup=Delimiter start="" contains=@phpClTop keepend else syn region phpRegion matchgroup=Delimiter start="" contains=@phpClTop keepend endif syn region phpRegionSc matchgroup=Delimiter start=++ contains=@phpClTop keepend if exists("php_asp_tags") syn region phpRegionAsp matchgroup=Delimiter start="<%\(=\)\=" end="%>" contains=@phpClTop keepend endif endif " Fold if exists("php_folding") && php_folding==1 " match one line constructs here and skip them at folding syn keyword phpSCKeyword abstract final private protected public static contained syn keyword phpFCKeyword function contained syn keyword phpStorageClass global contained syn match phpDefine "\(\s\|^\)\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function\(\s\+.*[;}]\)\@=" contained contains=phpSCKeyword syn match phpStructure "\(\s\|^\)\(abstract\s\+\|final\s\+\)*\(trait\|class\)\(\s\+.*}\)\@=" contained syn match phpStructure "\(\s\|^\)interface\(\s\+.*}\)\@=" contained syn match phpException "\(\s\|^\)try\(\s\+.*}\)\@=" contained syn match phpException "\(\s\|^\)catch\(\s\+.*}\)\@=" contained syn match phpException "\(\s\|^\)finally\(\s\+.*}\)\@=" contained set foldmethod=syntax syn region phpFoldHtmlInside matchgroup=Delimiter start="?>" end="" end="-]@]\=?[<>]@!" contained containedin=phpRegion " highlight the 'instanceof' operator as a comparison operator rather than a structure syntax case ignore syntax keyword phpComparison instanceof contained containedin=phpRegion hi def link phpComparison Statement endif " ================================================================ " Sync if php_sync_method==-1 if exists("php_noShortTags") syn sync match phpRegionSync grouphere phpRegion "^\s*\s*$+ if exists("php_asp_tags") syn sync match phpRegionSync grouphere phpRegionAsp "^\s*<%\(=\)\=\s*$" endif syn sync match phpRegionSync grouphere NONE "^\s*?>\s*$" syn sync match phpRegionSync grouphere NONE "^\s*%>\s*$" syn sync match phpRegionSync grouphere phpRegion "function\s.*(.*\$" "syn sync match phpRegionSync grouphere NONE "/\i*>\s*$" elseif php_sync_method>0 exec "syn sync minlines=" . php_sync_method else exec "syn sync fromstart" endif syntax match phpDocCustomTags "@[a-zA-Z]*\(\s\+\|\n\|\r\)" containedin=phpComment syntax region phpDocTags start="{@\(example\|id\|internal\|inheritdoc\|link\|source\|toc\|tutorial\)" end="}" containedin=phpComment syntax match phpDocTags "@\(abstract\|access\|author\|category\|copyright\|deprecated\|example\|final\|global\|ignore\|internal\|license\|link\|method\|name\|package\|param\|property\|return\|see\|since\|static\|staticvar\|subpackage\|tutorial\|uses\|var\|version\|contributor\|modified\|filename\|description\|filesource\|throws\)\(\s\+\)\?" containedin=phpComment syntax match phpDocTodo "@\(todo\|fixme\|xxx\)\(\s\+\)\?" containedin=phpComment " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link phpConstant Constant hi def link phpCoreConstant Constant hi def link phpComment Comment hi def link phpDocTags PreProc hi def link phpDocCustomTags Type hi def link phpException Exception hi def link phpBoolean Boolean hi def link phpStorageClass StorageClass hi def link phpSCKeyword StorageClass hi def link phpFCKeyword Define hi def link phpStructure Structure hi def link phpStringSingle String hi def link phpStringDouble String hi def link phpBacktick String hi def link phpNumber Number hi def link phpFloat Float hi def link phpMethods Function hi def link phpFunctions Function hi def link phpBaselib Function hi def link phpRepeat Repeat hi def link phpConditional Conditional hi def link phpLabel Label hi def link phpStatement Statement hi def link phpKeyword Statement hi def link phpType Type hi def link phpInclude Include hi def link phpDefine Define hi def link phpBackslashSequences SpecialChar hi def link phpBackslashDoubleQuote SpecialChar hi def link phpBackslashSingleQuote SpecialChar hi def link phpParent Delimiter hi def link phpBrackets Delimiter hi def link phpIdentifierConst Delimiter hi def link phpParentError Error hi def link phpOctalError Error hi def link phpInterpSimpleError Error hi def link phpInterpBogusDollarCurley Error hi def link phpInterpDollarCurly1 Error hi def link phpInterpDollarCurly2 Error hi def link phpInterpSimpleBracketsInner String hi def link phpInterpSimpleCurly Delimiter hi def link phpInterpVarname Identifier hi def link phpTodo Todo hi def link phpDocTodo Todo hi def link phpMemberSelector Structure if exists("php_oldStyle") hi def phpIntVar guifg=Red ctermfg=DarkRed hi def phpEnvVar guifg=Red ctermfg=DarkRed hi def phpOperator guifg=SeaGreen ctermfg=DarkGreen hi def phpVarSelector guifg=SeaGreen ctermfg=DarkGreen hi def phpRelation guifg=SeaGreen ctermfg=DarkGreen hi def phpIdentifier guifg=DarkGray ctermfg=Brown hi def phpIdentifierSimply guifg=DarkGray ctermfg=Brown else hi def link phpIntVar Identifier hi def link phpEnvVar Identifier hi def link phpOperator Operator hi def link phpVarSelector Operator hi def link phpRelation Operator hi def link phpIdentifier Identifier hi def link phpIdentifierSimply Identifier endif let b:current_syntax = "php" if main_syntax == 'php' unlet main_syntax endif " put cpoptions back the way we found it let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 sts=2 sw=2 expandtab PK&]  vim80/syntax/jovial.vimnu[" Vim syntax file " Language: JOVIAL J73 " Version: 1.2 " Maintainer: Paul McGinnis " Last Change: 2011/06/17 " Remark: Based on MIL-STD-1589C for JOVIAL J73 language " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore syn keyword jovialTodo TODO FIXME XXX contained " JOVIAL beads - first digit is number of bits, [0-9A-V] is the bit value " representing 0-31 (for 5 bits on the bead) syn match jovialBitConstant "[1-5]B'[0-9A-V]'" syn match jovialNumber "\<\d\+\>" syn match jovialFloat "\d\+E[-+]\=\d\+" syn match jovialFloat "\d\+\.\d*\(E[-+]\=\d\+\)\=" syn match jovialFloat "\.\d\+\(E[-+]\=\d\+\)\=" syn region jovialComment start=/"/ end=/"/ contains=jovialTodo syn region jovialComment start=/%/ end=/%/ contains=jovialTodo " JOVIAL variable names. This rule is to prevent conflicts with strings. " Handle special case where ' character can be part of a JOVIAL variable name. syn match jovialIdentifier "[A-Z\$][A-Z0-9'\$]\+" syn region jovialString start="\s*'" skip=/''/ end=/'/ oneline " JOVIAL compiler directives -- see Section 9 in MIL-STD-1589C syn region jovialPreProc start="\s*![A-Z]\+" end=/;/ syn keyword jovialOperator AND OR NOT XOR EQV MOD " See Section 2.1 in MIL-STD-1589C for data types syn keyword jovialType ITEM B C P V syn match jovialType "\" syn match jovialType "\" syn match jovialType "\" syn match jovialType "\" syn keyword jovialStorageClass STATIC CONSTANT PARALLEL BLOCK N M D W syn keyword jovialStructure TABLE STATUS syn keyword jovialConstant NULL syn keyword jovialBoolean FALSE TRUE syn keyword jovialTypedef TYPE syn keyword jovialStatement ABORT BEGIN BY BYREF BYRES BYVAL CASE COMPOOL syn keyword jovialStatement DEF DEFAULT DEFINE ELSE END EXIT FALLTHRU FOR syn keyword jovialStatement GOTO IF INLINE INSTANCE LABEL LIKE OVERLAY POS syn keyword jovialStatement PROC PROGRAM REC REF RENT REP RETURN START STOP syn keyword jovialStatement TERM THEN WHILE " JOVIAL extensions, see section 8.2.2 in MIL-STD-1589C syn keyword jovialStatement CONDITION ENCAPSULATION EXPORTS FREE HANDLER IN INTERRUPT NEW syn keyword jovialStatement PROTECTED READONLY REGISTER SIGNAL TO UPDATE WITH WRITEONLY ZONE " implementation specific constants and functions, see section 1.4 in MIL-STD-1589C syn keyword jovialConstant BITSINBYTE BITSINWORD LOCSINWORD syn keyword jovialConstant BYTESINWORD BITSINPOINTER INTPRECISION syn keyword jovialConstant FLOATPRECISION FIXEDPRECISION FLOATRADIX syn keyword jovialConstant MAXFLOATPRECISION MAXFIXEDPRECISION syn keyword jovialConstant MAXINTSIZE MAXBYTES MAXBITS syn keyword jovialConstant MAXTABLESIZE MAXSTOP MINSTOP MAXSIGDIGITS syn keyword jovialFunction BYTEPOS MAXINT MININT syn keyword jovialFunction IMPLFLOATPRECISION IMPLFIXEDPRECISION IMPLINTSIZE syn keyword jovialFunction MINSIZE MINFRACTION MINSCALE MINRELPRECISION syn keyword jovialFunction MAXFLOAT MINFLOAT FLOATRELPRECISION syn keyword jovialFunction FLOATUNDERFLOW MAXFIXED MINFIXED " JOVIAL built-in functions syn keyword jovialFunction LOC NEXT BIT BYTE SHIFTL SHIFTR ABS SGN BITSIZE syn keyword jovialFunction BYTESIZE WORDSIZE LBOUND UBOUND NWDSEN FIRST syn keyword jovialFunction LAST NENT " Define the default highlighting. hi def link jovialBitConstant Number hi def link jovialBoolean Boolean hi def link jovialComment Comment hi def link jovialConstant Constant hi def link jovialFloat Float hi def link jovialFunction Function " No color highlighting for JOVIAL identifiers. See above, " this is to prevent confusion with JOVIAL strings "hi def link jovialIdentifier Identifier hi def link jovialNumber Number hi def link jovialOperator Operator hi def link jovialPreProc PreProc hi def link jovialStatement Statement hi def link jovialStorageClass StorageClass hi def link jovialString String hi def link jovialStructure Structure hi def link jovialTodo Todo hi def link jovialType Type hi def link jovialTypedef Typedef let b:current_syntax = "jovial" " vim: ts=8 PK&].##vim80/syntax/aspvbs.vimnu[" Vim syntax file " Language: Microsoft VBScript Web Content (ASP) " Maintainer: Devin Weaver (non-functional) " URL: http://tritarget.com/pub/vim/syntax/aspvbs.vim (broken) " Last Change: 2006 Jun 19 " by Dan Casey " Version: $Revision: 1.3 $ " Thanks to Jay-Jay for a syntax sync hack, hungarian " notation, and extra highlighting. " Thanks to patrick dehne for the folding code. " Thanks to Dean Hall for testing the use of classes in " VBScripts which I've been too scared to do. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'aspvbs' endif runtime! syntax/html.vim unlet b:current_syntax syn cluster htmlPreProc add=AspVBScriptInsideHtmlTags " Colored variable names, if written in hungarian notation hi def AspVBSVariableSimple term=standout ctermfg=3 guifg=#99ee99 hi def AspVBSVariableComplex term=standout ctermfg=3 guifg=#ee9900 syn match AspVBSVariableSimple contained "\<\(bln\|byt\|dtm\=\|dbl\|int\|str\)\u\w*" syn match AspVBSVariableComplex contained "\<\(arr\|ary\|obj\)\u\w*" " Functions and methods that are in VB but will cause errors in an ASP page " This is helpfull if your porting VB code to ASP " I removed (Count, Item) because these are common variable names in AspVBScript syn keyword AspVBSError contained Val Str CVar CVDate DoEvents GoSub Return GoTo syn keyword AspVBSError contained Stop LinkExecute Add Type LinkPoke syn keyword AspVBSError contained LinkRequest LinkSend Declare Optional Sleep syn keyword AspVBSError contained ParamArray Static Erl TypeOf Like LSet RSet Mid StrConv " It may seem that most of these can fit into a keyword clause but keyword takes " priority over all so I can't get the multi-word matches syn match AspVBSError contained "\" syn match AspVBSError contained "^\s*Open\s\+" syn match AspVBSError contained "Debug\.[a-zA-Z0-9_]*" syn match AspVBSError contained "^\s*[a-zA-Z0-9_]\+:" syn match AspVBSError contained "[a-zA-Z0-9_]\+![a-zA-Z0-9_]\+" syn match AspVBSError contained "^\s*#.*$" syn match AspVBSError contained "\\|\" syn match AspVBSError contained "\\|\\|\\|\\|\" syn match AspVBSError contained "\" " This one I want 'cause I always seem to mis-spell it. syn match AspVBSError contained "Respon\?ce\.\S*" syn match AspVBSError contained "Respose\.\S*" " When I looked up the VBScript syntax it mentioned that Property Get/Set/Let " statements are illegal, however, I have recived reports that they do work. " So I commented it out for now. " syn match AspVBSError contained "\" " AspVBScript Reserved Words. syn match AspVBSStatement contained "\\|\" syn match AspVBSStatement contained "\" syn match AspVBSStatement contained "\" syn match AspVBSStatement contained "\" syn match AspVBSStatement contained "\" syn match AspVBSStatement contained "\\|\" syn match AspVBSStatement contained "\" syn keyword AspVBSStatement contained Call Class Const Default Dim Do Loop Erase And syn keyword AspVBSStatement contained Function If Then Else ElseIf Or syn keyword AspVBSStatement contained Private Public Randomize ReDim syn keyword AspVBSStatement contained Select Case Sub While With Wend Not " AspVBScript Functions syn keyword AspVBSFunction contained Abs Array Asc Atn CBool CByte CCur CDate CDbl syn keyword AspVBSFunction contained Chr CInt CLng Cos CreateObject CSng CStr Date syn keyword AspVBSFunction contained DateAdd DateDiff DatePart DateSerial DateValue syn keyword AspVBSFunction contained Date Day Exp Filter Fix FormatCurrency syn keyword AspVBSFunction contained FormatDateTime FormatNumber FormatPercent syn keyword AspVBSFunction contained GetObject Hex Hour InputBox InStr InStrRev Int syn keyword AspVBSFunction contained IsArray IsDate IsEmpty IsNull IsNumeric syn keyword AspVBSFunction contained IsObject Join LBound LCase Left Len LoadPicture syn keyword AspVBSFunction contained Log LTrim Mid Minute Month MonthName MsgBox Now syn keyword AspVBSFunction contained Oct Replace RGB Right Rnd Round RTrim syn keyword AspVBSFunction contained ScriptEngine ScriptEngineBuildVersion syn keyword AspVBSFunction contained ScriptEngineMajorVersion syn keyword AspVBSFunction contained ScriptEngineMinorVersion Second Sgn Sin Space syn keyword AspVBSFunction contained Split Sqr StrComp StrReverse String Tan Time Timer syn keyword AspVBSFunction contained TimeSerial TimeValue Trim TypeName UBound UCase syn keyword AspVBSFunction contained VarType Weekday WeekdayName Year " AspVBScript Methods syn keyword AspVBSMethods contained Add AddFolders BuildPath Clear Close Copy syn keyword AspVBSMethods contained CopyFile CopyFolder CreateFolder CreateTextFile syn keyword AspVBSMethods contained Delete DeleteFile DeleteFolder DriveExists syn keyword AspVBSMethods contained Exists FileExists FolderExists syn keyword AspVBSMethods contained GetAbsolutePathName GetBaseName GetDrive syn keyword AspVBSMethods contained GetDriveName GetExtensionName GetFile syn keyword AspVBSMethods contained GetFileName GetFolder GetParentFolderName syn keyword AspVBSMethods contained GetSpecialFolder GetTempName Items Keys Move syn keyword AspVBSMethods contained MoveFile MoveFolder OpenAsTextStream syn keyword AspVBSMethods contained OpenTextFile Raise Read ReadAll ReadLine Remove syn keyword AspVBSMethods contained RemoveAll Skip SkipLine Write WriteBlankLines syn keyword AspVBSMethods contained WriteLine syn match AspVBSMethods contained "Response\.\w*" " Colorize boolean constants: syn keyword AspVBSMethods contained true false " AspVBScript Number Contstants " Integer number, or floating point number without a dot. syn match AspVBSNumber contained "\<\d\+\>" " Floating point number, with dot syn match AspVBSNumber contained "\<\d\+\.\d*\>" " Floating point number, starting with a dot syn match AspVBSNumber contained "\.\d\+\>" " String and Character Contstants " removed (skip=+\\\\\|\\"+) because VB doesn't have backslash escaping in " strings (or does it?) syn region AspVBSString contained start=+"+ end=+"+ keepend " AspVBScript Comments syn region AspVBSComment contained start="^REM\s\|\sREM\s" end="$" contains=AspVBSTodo keepend syn region AspVBSComment contained start="^'\|\s'" end="$" contains=AspVBSTodo keepend " misc. Commenting Stuff syn keyword AspVBSTodo contained TODO FIXME " Cosmetic syntax errors commanly found in VB but not in AspVBScript " AspVBScript doesn't use line numbers syn region AspVBSError contained start="^\d" end="\s" keepend " AspVBScript also doesn't have type defining variables syn match AspVBSError contained "[a-zA-Z0-9_][\$&!#]"ms=s+1 " Since 'a%' is a VB variable with a type and in AspVBScript you can have 'a%>' " I have to make a special case so 'a%>' won't show as an error. syn match AspVBSError contained "[a-zA-Z0-9_]%\($\|[^>]\)"ms=s+1 " Top Cluster syn cluster AspVBScriptTop contains=AspVBSStatement,AspVBSFunction,AspVBSMethods,AspVBSNumber,AspVBSString,AspVBSComment,AspVBSError,AspVBSVariableSimple,AspVBSVariableComplex " Folding syn region AspVBSFold start="^\s*\(class\)\s\+.*$" end="^\s*end\s\+\(class\)\>.*$" fold contained transparent keepend syn region AspVBSFold start="^\s*\(private\|public\)\=\(\s\+default\)\=\s\+\(sub\|function\)\s\+.*$" end="^\s*end\s\+\(function\|sub\)\>.*$" fold contained transparent keepend " Define AspVBScript delimeters " <%= func("string_with_%>_in_it") %> This is illegal in ASP syntax. syn region AspVBScriptInsideHtmlTags keepend matchgroup=Delimiter start=+<%=\=+ end=+%>+ contains=@AspVBScriptTop, AspVBSFold syn region AspVBScriptInsideHtmlTags keepend matchgroup=Delimiter start=+]*\s\+runatserver[^>]*>+ end=++ contains=@AspVBScriptTop " Synchronization " syn sync match AspVBSSyncGroup grouphere AspVBScriptInsideHtmlTags "<%" " This is a kludge so the HTML will sync properly syn sync match htmlHighlight grouphere htmlTag "%>" " Define the default highlighting. " Only when an item doesn't have highlighting yet "hi def link AspVBScript Special hi def link AspVBSLineNumber Comment hi def link AspVBSNumber Number hi def link AspVBSError Error hi def link AspVBSStatement Statement hi def link AspVBSString String hi def link AspVBSComment Comment hi def link AspVBSTodo Todo hi def link AspVBSFunction Identifier hi def link AspVBSMethods PreProc hi def link AspVBSEvents Special hi def link AspVBSTypeSpecifier Type let b:current_syntax = "aspvbs" if main_syntax == 'aspvbs' unlet main_syntax endif " vim: ts=8:sw=2:sts=0:noet PK&]++vim80/syntax/sqlhana.vimnu[" Vim syntax file " Language: SQL, SAP HANA In Memory Database " Maintainer: David Fishburn " Last Change: 2012 Oct 23 " Version: SP4 b (Q2 2012) " Homepage: http://www.vim.org/scripts/script.php?script_id=4275 " Description: Updated to SAP HANA SP4 " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " The SQL reserved words, defined as keywords. " These were pulled from the following SQL reference: " http://help.sap.com/hana/hana_sql_en.pdf " An easy approach is to copy all text from the PDF " into a Vim buffer. The keywords are in UPPER case, " so you can run the following commands to be left with " mainly the UPPER case words: " 1. Delete all words that do not begin with a Capital " %s/\(\<[^A-Z]\w*\>\)//g " 2. Remove all words where the 2nd letter is not a Capital " %s/\(\<[A-Z][^A-Z]\w*\>\)//g " 3. Remove all non-word (or space) characters " %s/[^0-9A-Za-z_ ]*//g " 4. Remove some known words " %s/\<\(SAP\|HANA\|OK\|AG\|IBM\|DB2\|AIX\|POWER\d\+\|UNIX\)\>//g " 5. Remove blank lines and trailing spaces " %s/\s\+$//g " %s/^\s\+//g " %s/^$\n//g " 6. Convert spaces to newlines remove single character " %s/[ ]\+/\r/g " %g/^\w$/d " 7. Sort and remove duplicates " :sort " :Uniq " 8. Use the WhatsMissing plugin against the sqlhana.vim file. " 9. Generated a file of all UPPER cased words which should not " be in the syntax file. These items should be removed " from the list in step 7. You can use WhatsNotMissing " between step 7 and this new file to weed out the words " we know are not syntax related. " 10. Use the WhatsMissingRemoveMatches to remove the words " from step 9. syn keyword sqlSpecial false null true " Supported Functions for Date/Time types syn keyword sqlFunction ADD_DAYS ADD_MONTHS ADD_SECONDS ADD_YEARS COALESCE syn keyword sqlFunction CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_UTCDATE syn keyword sqlFunction CURRENT_UTCTIME CURRENT_UTCTIMESTAMP syn keyword sqlFunction DAYNAME DAYOFMONTH DAYOFYEAR DAYS_BETWEEN EXTRACT syn keyword sqlFunction GREATEST HOUR IFNULL ISOWEEK LAST_DAY LEAST LOCALTOUTC syn keyword sqlFunction MINUTE MONTH MONTHNAME NEXT_DAY NOW QUARTER SECOND syn keyword sqlFunction SECONDS_BETWEEN UTCTOLOCAL WEEK WEEKDAY YEAR syn keyword sqlFunction TO_CHAR TO_DATE TO_DATS TO_NCHAR TO_TIME TO_TIMESTAMP UTCTOLOCAL " Aggregate syn keyword sqlFunction COUNT MIN MAX SUM AVG STDDEV VAR " Datatype conversion syn keyword sqlFunction CAST TO_ALPHANUM TO_BIGINT TO_BINARY TO_BLOB TO_CHAR TO_CLOB syn keyword sqlFunction TO_DATE TO_DATS TO_DECIMAL TO_DOUBLE TO_INT TO_INTEGER TO_NCHAR syn keyword sqlFunction TO_NCLOB TO_NVARCHAR TO_REAL TO_SECONDDATE TO_SMALLDECIMAL syn keyword sqlFunction TO_SMALLINT TO_TIME TO_TIMESTAMP TO_TINYINT TO_VARCHAR TO_VARBINARY " Number functions syn keyword sqlFunction ABS ACOS ASIN ATAN ATAN2 BINTOHEX BITAND CEIL COS COSH COT syn keyword sqlFunction EXP FLOOR GREATEST HEXTOBIN LEAST LN LOG MOD POWER ROUND syn keyword sqlFunction SIGN SIN SINH SQRT TAN TANH UMINUS " String functions syn keyword sqlFunction ASCII CHAR CONCAT LCASE LENGTH LOCATE LOWER LPAD LTRIM syn keyword sqlFunction NCHAR REPLACE RPAD RTRIM SUBSTR_AFTER SUBSTR_BEFORE syn keyword sqlFunction SUBSTRING TRIM UCASE UNICODE UPPER " Miscellaneous functions syn keyword sqlFunction COALESCE CURRENT_CONNECTION CURRENT_SCHEMA CURRENT_USER syn keyword sqlFunction GROUPING_ID IFNULL MAP NULLIF SESSION_CONTEXT SESSION_USER SYSUUIDSQL syn keyword sqlFunction GET_NUM_SERVERS " sp_ procedures " syn keyword sqlFunction sp_addalias " Reserved keywords syn keyword sqlkeyword ALL AS AT BEFORE syn keyword sqlkeyword BEGIN BOTH BY syn keyword sqlkeyword CONDITION syn keyword sqlkeyword CURRVAL CURSOR DECLARE syn keyword sqlkeyword DISTINCT DO ELSE ELSEIF ELSIF syn keyword sqlkeyword END EXCEPTION EXEC syn keyword sqlkeyword FOR FROM GROUP syn keyword sqlkeyword HAVING IN syn keyword sqlkeyword INOUT INTO IS syn keyword sqlkeyword LEADING syn keyword sqlkeyword LOOP MINUS NATURAL NEXTVAL syn keyword sqlkeyword OF ON ORDER OUT syn keyword sqlkeyword PRIOR RETURN RETURNS REVERSE syn keyword sqlkeyword ROWID SELECT syn keyword sqlkeyword SQL START STOP SYSDATE syn keyword sqlkeyword SYSTIME SYSTIMESTAMP SYSUUID syn keyword sqlkeyword TRAILING USING UTCDATE syn keyword sqlkeyword UTCTIME UTCTIMESTAMP VALUES syn keyword sqlkeyword WHILE syn keyword sqlkeyword ANY SOME EXISTS ESCAPE " IF keywords syn keyword sqlkeyword IF " CASE keywords syn keyword sqlKeyword WHEN THEN " Syntax rules common to TEXT and SHORTTEXT keywords syn keyword sqlKeyword LANGUAGE DETECTION LINGUISTIC syn keyword sqlkeyword MIME TYPE syn keyword sqlkeyword EXACT WEIGHT FUZZY FUZZINESSTHRESHOLD SEARCH syn keyword sqlkeyword PHRASE INDEX RATIO REBUILD syn keyword sqlkeyword CONFIGURATION syn keyword sqlkeyword SEARCH ONLY syn keyword sqlkeyword FAST PREPROCESS syn keyword sqlkeyword SYNC SYNCHRONOUS ASYNC ASYNCHRONOUS FLUSH QUEUE syn keyword sqlkeyword EVERY AFTER MINUTES DOCUMENTS SUSPEND " Statement keywords (i.e. after ALTER or CREATE) syn keyword sqlkeyword AUDIT POLICY syn keyword sqlkeyword FULLTEXT syn keyword sqlkeyword SEQUENCE RESTART syn keyword sqlkeyword TABLE syn keyword sqlkeyword PROCEDURE STATISTICS syn keyword sqlkeyword SCHEMA syn keyword sqlkeyword SYNONYM syn keyword sqlkeyword VIEW syn keyword sqlkeyword COLUMN syn keyword sqlkeyword SYSTEM LICENSE syn keyword sqlkeyword SESSION syn keyword sqlkeyword CANCEL WORK syn keyword sqlkeyword PLAN CACHE syn keyword sqlkeyword LOGGING NOLOGGING RETENTION syn keyword sqlkeyword RECONFIGURE SERVICE syn keyword sqlkeyword RESET MONITORING syn keyword sqlkeyword SAVE DURATION PERFTRACE FUNCTION_PROFILER syn keyword sqlkeyword SAVEPOINT syn keyword sqlkeyword USER syn keyword sqlkeyword ROLE syn keyword sqlkeyword ASC DESC syn keyword sqlkeyword OWNED syn keyword sqlkeyword DEPENDENCIES SCRAMBLE " Create sequence syn keyword sqlkeyword INCREMENT MAXVALUE MINVALUE CYCLE " Create table syn keyword sqlkeyword HISTORY GLOBAL LOCAL TEMPORARY " Create trigger syn keyword sqlkeyword TRIGGER REFERENCING EACH DEFAULT syn keyword sqlkeyword SIGNAL RESIGNAL MESSAGE_TEXT OLD NEW syn keyword sqlkeyword EXIT HANDLER SQL_ERROR_CODE syn keyword sqlkeyword TARGET CONDITION SIGNAL " Alter table syn keyword sqlkeyword ADD DROP MODIFY GENERATED ALWAYS syn keyword sqlkeyword UNIQUE BTREE CPBTREE PRIMARY KEY syn keyword sqlkeyword CONSTRAINT PRELOAD NONE syn keyword sqlkeyword ROW THREADS BATCH syn keyword sqlkeyword MOVE PARTITION TO LOCATION PHYSICAL OTHERS syn keyword sqlkeyword ROUNDROBIN PARTITIONS HASH RANGE VALUE syn keyword sqlkeyword PERSISTENT DELTA AUTO AUTOMERGE " Create audit policy syn keyword sqlkeyword AUDITING SUCCESSFUL UNSUCCESSFUL syn keyword sqlkeyword PRIVILEGE STRUCTURED CHANGE LEVEL syn keyword sqlkeyword EMERGENCY ALERT CRITICAL WARNING INFO " Privileges syn keyword sqlkeyword DEBUG EXECUTE " Schema syn keyword sqlkeyword CASCADE RESTRICT PARAMETERS SCAN " Traces syn keyword sqlkeyword CLIENT CRASHDUMP EMERGENCYDUMP syn keyword sqlkeyword INDEXSERVER NAMESERVER DAEMON syn keyword sqlkeyword CLEAR REMOVE TRACES " Reclaim syn keyword sqlkeyword RECLAIM DATA VOLUME VERSION SPACE DEFRAGMENT SPARSIFY " Join syn keyword sqlkeyword INNER OUTER LEFT RIGHT FULL CROSS JOIN syn keyword sqlkeyword GROUPING SETS ROLLUP CUBE syn keyword sqlkeyword BEST LIMIT OFFSET syn keyword sqlkeyword WITH SUBTOTAL BALANCE TOTAL syn keyword sqlkeyword TEXT_FILTER FILL UP SORT MATCHES TOP syn keyword sqlkeyword RESULT OVERVIEW PREFIX MULTIPLE RESULTSETS " Lock syn keyword sqlkeyword EXCLUSIVE MODE NOWAIT " Transaction syn keyword sqlkeyword TRANSACTION ISOLATION READ COMMITTED syn keyword sqlkeyword REPEATABLE SERIALIZABLE WRITE " Saml syn keyword sqlkeyword SAML ASSERTION PROVIDER SUBJECT ISSUER " User syn keyword sqlkeyword PASSWORD IDENTIFIED EXTERNALLY ATTEMPTS ATTEMPTS syn keyword sqlkeyword ENABLE DISABLE OFF LIFETIME FORCE DEACTIVATE syn keyword sqlkeyword ACTIVATE IDENTITY KERBEROS " Grant syn keyword sqlkeyword ADMIN BACKUP CATALOG SCENARIO INIFILE MONITOR syn keyword sqlkeyword OPTIMIZER OPTION syn keyword sqlkeyword RESOURCE STRUCTUREDPRIVILEGE TRACE " Import syn keyword sqlkeyword CSV FILE CONTROL NO CHECK SKIP FIRST LIST syn keyword sqlkeyword RECORD DELIMITED FIELD OPTIONALLY ENCLOSED FORMAT " Roles syn keyword sqlkeyword PUBLIC CONTENT_ADMIN MODELING MONITORING " Miscellaneous syn keyword sqlkeyword APPLICATION BINARY IMMEDIATE COREFILE SECURITY DEFINER syn keyword sqlkeyword DUMMY INVOKER MATERIALIZED MESSEGE_TEXT PARAMETER PARAMETERS syn keyword sqlkeyword PART syn keyword sqlkeyword CONSTANT SQLEXCEPTION SQLWARNING syn keyword sqlOperator WHERE BETWEEN LIKE NULL CONTAINS syn keyword sqlOperator AND OR NOT CASE syn keyword sqlOperator UNION INTERSECT EXCEPT syn keyword sqlStatement ALTER CALL CALLS CREATE DROP RENAME TRUNCATE syn keyword sqlStatement DELETE INSERT UPDATE EXPLAIN syn keyword sqlStatement MERGE REPLACE UPSERT SELECT syn keyword sqlStatement SET UNSET LOAD UNLOAD syn keyword sqlStatement CONNECT DISCONNECT COMMIT LOCK ROLLBACK syn keyword sqlStatement GRANT REVOKE syn keyword sqlStatement EXPORT IMPORT syn keyword sqlType DATE TIME SECONDDATE TIMESTAMP TINYINT SMALLINT syn keyword sqlType INT INTEGER BIGINT SMALLDECIMAL DECIMAL syn keyword sqlType REAL DOUBLE FLOAT syn keyword sqlType VARCHAR NVARCHAR ALPHANUM SHORTTEXT VARBINARY syn keyword sqlType BLOB CLOB NCLOB TEXT DAYDATE syn keyword sqlOption Webservice_namespace_host " Strings and characters: syn region sqlString start=+"+ end=+"+ contains=@Spell syn region sqlString start=+'+ end=+'+ contains=@Spell " Numbers: syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>" " Comments: syn region sqlDashComment start=/--/ end=/$/ contains=@Spell syn region sqlSlashComment start=/\/\// end=/$/ contains=@Spell syn region sqlMultiComment start="/\*" end="\*/" contains=sqlMultiComment,@Spell syn cluster sqlComment contains=sqlDashComment,sqlSlashComment,sqlMultiComment,@Spell syn sync ccomment sqlComment syn sync ccomment sqlDashComment syn sync ccomment sqlSlashComment hi def link sqlDashComment Comment hi def link sqlSlashComment Comment hi def link sqlMultiComment Comment hi def link sqlNumber Number hi def link sqlOperator Operator hi def link sqlSpecial Special hi def link sqlKeyword Keyword hi def link sqlStatement Statement hi def link sqlString String hi def link sqlType Type hi def link sqlFunction Function hi def link sqlOption PreProc let b:current_syntax = "sqlhana" " vim:sw=4: PK&]BPMvim80/syntax/docbkxml.vimnu[" Vim syntax file " Language: DocBook XML " Maintainer: Johannes Zellner " Last Change: Sam, 07 Sep 2002 17:20:12 CEST let b:docbk_type="xml" runtime syntax/docbk.vim PK&]eMؔRRvim80/syntax/sinda.vimnu[" Vim syntax file " Language: sinda85, sinda/fluint input file " Maintainer: Adrian Nagle, anagle@ball.com " Last Change: 2003 May 11 " Filenames: *.sin " URL: http://www.naglenet.org/vim/syntax/sinda.vim " MAIN URL: http://www.naglenet.org/vim/ " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Ignore case syn case ignore " " " Begin syntax definitions for sinda input and output files. " " Force free-form fortran format let fortran_free_source=1 " Load FORTRAN syntax file runtime! syntax/fortran.vim unlet b:current_syntax " Define keywords for SINDA syn keyword sindaMacro BUILD BUILDF DEBON DEBOFF DEFMOD FSTART FSTOP syn keyword sindaOptions TITLE PPSAVE RSI RSO OUTPUT SAVE QMAP USER1 USER2 syn keyword sindaOptions MODEL PPOUT NOLIST MLINE NODEBUG DIRECTORIES syn keyword sindaOptions DOUBLEPR syn keyword sindaRoutine FORWRD FWDBCK STDSTL FASTIC syn keyword sindaControl ABSZRO ACCELX ACCELY ACCELZ ARLXCA ATMPCA syn keyword sindaControl BACKUP CSGFAC DRLXCA DTIMEH DTIMEI DTIMEL syn keyword sindaControl DTIMES DTMPCA EBALNA EBALSA EXTLIM ITEROT syn keyword sindaControl ITERXT ITHOLD NLOOPS NLOOPT OUTPUT OPEITR syn keyword sindaControl PATMOS SIGMA TIMEO TIMEND UID syn keyword sindaSubRoutine ASKERS ADARIN ADDARY ADDMOD ARINDV syn keyword sindaSubRoutine RYINV ARYMPY ARYSUB ARYTRN BAROC syn keyword sindaSubRoutine BELACC BNDDRV BNDGET CHENNB CHGFLD syn keyword sindaSubRoutine CHGLMP CHGSUC CHGVOL CHKCHL CHKCHP syn keyword sindaSubRoutine CNSTAB COMBAL COMPLQ COMPRS CONTRN syn keyword sindaSubRoutine CPRINT CRASH CRVINT CRYTRN CSIFLX syn keyword sindaSubRoutine CVTEMP D11CYL C11DAI D11DIM D11MCY syn keyword sindaSubRoutine D11MDA D11MDI D11MDT D12CYL D12MCY syn keyword sindaSubRoutine D12MDA D1D1DA D1D1IM D1D1WM D1D2DA syn keyword sindaSubRoutine D1D2WM D1DEG1 D1DEG2 D1DG1I D1IMD1 syn keyword sindaSubRoutine D1IMIM D1IMWM D1M1DA D1M2MD D1M2WM syn keyword sindaSubRoutine D1MDG1 D1MDG2 D2D1WM D1DEG1 D2DEG2 syn keyword sindaSubRoutine D2D2 syn keyword sindaIdentifier BIV CAL DIM DIV DPM DPV DTV GEN PER PIV PIM syn keyword sindaIdentifier SIM SIV SPM SPV TVS TVD " Define matches for SINDA syn match sindaFortran "^F[0-9 ]"me=e-1 syn match sindaMotran "^M[0-9 ]"me=e-1 syn match sindaComment "^C.*$" syn match sindaComment "^R.*$" syn match sindaComment "\$.*$" syn match sindaHeader "^header[^,]*" syn match sindaIncludeFile "include \+[^ ]\+"hs=s+8 contains=fortranInclude syn match sindaMacro "^PSTART" syn match sindaMacro "^PSTOP" syn match sindaMacro "^FAC" syn match sindaInteger "-\=\<[0-9]*\>" syn match sindaFloat "-\=\<[0-9]*\.[0-9]*" syn match sindaScientific "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>" syn match sindaEndData "^END OF DATA" if exists("thermal_todo") execute 'syn match sindaTodo ' . '"^'.thermal_todo.'.*$"' else syn match sindaTodo "^?.*$" endif " Define the default highlighting " Only when an item doesn't have highlighting yet hi def link sindaMacro Macro hi def link sindaOptions Special hi def link sindaRoutine Type hi def link sindaControl Special hi def link sindaSubRoutine Function hi def link sindaIdentifier Identifier hi def link sindaFortran PreProc hi def link sindaMotran PreProc hi def link sindaComment Comment hi def link sindaHeader Typedef hi def link sindaIncludeFile Type hi def link sindaInteger Number hi def link sindaFloat Float hi def link sindaScientific Float hi def link sindaEndData Macro hi def link sindaTodo Todo let b:current_syntax = "sinda" " vim: ts=8 sw=2 PK&]Dj!j!vim80/syntax/quake.vimnu[" Vim syntax file " Language: Quake[1-3] configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-06-17 " quake_is_quake1 - the syntax is to be used for quake1 configs " quake_is_quake2 - the syntax is to be used for quake2 configs " quake_is_quake3 - the syntax is to be used for quake3 configs " Credits: Tomasz Kalkosinski wrote the original quake3Colors stuff if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=-,+ syn keyword quakeTodo contained TODO FIXME XXX NOTE syn region quakeComment display oneline start='//' end='$' end=';' \ keepend contains=quakeTodo,@Spell syn region quakeString display oneline start=+"+ skip=+\\\\\|\\"+ \ end=+"\|$+ contains=quakeNumbers, \ @quakeCommands,@quake3Colors syn case ignore syn match quakeNumbers display transparent '\<-\=\d\|\.\d' \ contains=quakeNumber,quakeFloat, \ quakeOctalError,quakeOctal syn match quakeNumber contained display '\d\+\>' syn match quakeFloat contained display '\d\+\.\d*' syn match quakeFloat contained display '\.\d\+\>' if exists("quake_is_quake1") || exists("quake_is_quake2") syn match quakeOctal contained display '0\o\+\>' \ contains=quakeOctalZero syn match quakeOctalZero contained display '\<0' syn match quakeOctalError contained display '0\o*[89]\d*' endif syn cluster quakeCommands contains=quakeCommand,quake1Command, \ quake12Command,Quake2Command,Quake23Command, \ Quake3Command syn keyword quakeCommand +attack +back +forward +left +lookdown +lookup syn keyword quakeCommand +mlook +movedown +moveleft +moveright +moveup syn keyword quakeCommand +right +speed +strafe -attack -back bind syn keyword quakeCommand bindlist centerview clear connect cvarlist dir syn keyword quakeCommand disconnect dumpuser echo error exec -forward syn keyword quakeCommand god heartbeat joy_advancedupdate kick kill syn keyword quakeCommand killserver -left -lookdown -lookup map syn keyword quakeCommand messagemode messagemode2 -mlook modellist syn keyword quakeCommand -movedown -moveleft -moveright -moveup play syn keyword quakeCommand quit rcon reconnect record -right say say_team syn keyword quakeCommand screenshot serverinfo serverrecord serverstop syn keyword quakeCommand set sizedown sizeup snd_restart soundinfo syn keyword quakeCommand soundlist -speed spmap status -strafe stopsound syn keyword quakeCommand toggleconsole unbind unbindall userinfo pause syn keyword quakeCommand vid_restart viewpos wait weapnext weapprev if exists("quake_is_quake1") syn keyword quake1Command sv endif if exists("quake_is_quake1") || exists("quake_is_quake2") syn keyword quake12Command +klook alias cd impulse link load save syn keyword quake12Command timerefresh changing info loading syn keyword quake12Command pingservers playerlist players score endif if exists("quake_is_quake2") syn keyword quake2Command cmd demomap +use condump download drop gamemap syn keyword quake2Command give gun_model setmaster sky sv_maplist wave syn keyword quake2Command cmdlist gameversiona gun_next gun_prev invdrop syn keyword quake2Command inven invnext invnextp invnextw invprev syn keyword quake2Command invprevp invprevw invuse menu_addressbook syn keyword quake2Command menu_credits menu_dmoptions menu_game syn keyword quake2Command menu_joinserver menu_keys menu_loadgame syn keyword quake2Command menu_main menu_multiplayer menu_options syn keyword quake2Command menu_playerconfig menu_quit menu_savegame syn keyword quake2Command menu_startserver menu_video syn keyword quake2Command notarget precache prog togglechat vid_front syn keyword quake2Command weaplast endif if exists("quake_is_quake2") || exists("quake_is_quake3") syn keyword quake23Command imagelist modellist path z_stats endif if exists("quake_is_quake3") syn keyword quake3Command +info +scores +zoom addbot arena banClient syn keyword quake3Command banUser callteamvote callvote changeVectors syn keyword quake3Command cinematic clientinfo clientkick cmd cmdlist syn keyword quake3Command condump configstrings crash cvar_restart devmap syn keyword quake3Command fdir follow freeze fs_openedList Fs_pureList syn keyword quake3Command Fs_referencedList gfxinfo globalservers syn keyword quake3Command hunk_stats in_restart -info levelshot syn keyword quake3Command loaddeferred localservers map_restart mem_info syn keyword quake3Command messagemode3 messagemode4 midiinfo model music syn keyword quake3Command modelist net_restart nextframe nextskin noclip syn keyword quake3Command notarget ping prevframe prevskin reset restart syn keyword quake3Command s_disable_a3d s_enable_a3d s_info s_list s_stop syn keyword quake3Command scanservers -scores screenshotJPEG sectorlist syn keyword quake3Command serverstatus seta setenv sets setu setviewpos syn keyword quake3Command shaderlist showip skinlist spdevmap startOribt syn keyword quake3Command stats stopdemo stoprecord systeminfo togglemenu syn keyword quake3Command tcmd team teamtask teamvote tell tell_attacker syn keyword quake3Command tell_target testgun testmodel testshader toggle syn keyword quake3Command touchFile vminfo vmprofile vmtest vosay syn keyword quake3Command vosay_team vote votell vsay vsay_team vstr syn keyword quake3Command vtaunt vtell vtell_attacker vtell_target weapon syn keyword quake3Command writeconfig -zoom syn match quake3Command display "\<[+-]button\(\d\|1[0-4]\)\>" endif if exists("quake_is_quake3") syn cluster quake3Colors contains=quake3Red,quake3Green,quake3Yellow, \ quake3Blue,quake3Cyan,quake3Purple,quake3White, \ quake3Orange,quake3Grey,quake3Black,quake3Shadow syn region quake3Red contained start=+\^1+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Green contained start=+\^2+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Yellow contained start=+\^3+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Blue contained start=+\^4+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Cyan contained start=+\^5+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Purple contained start=+\^6+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3White contained start=+\^7+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Orange contained start=+\^8+hs=e+1 end=+[$^\"\n]+he=e-1 syn region quake3Grey contained start=+\^9+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Black contained start=+\^0+hs=e+1 end=+[$^"\n]+he=e-1 syn region quake3Shadow contained start=+\^[Xx]+hs=e+1 end=+[$^"\n]+he=e-1 endif hi def link quakeComment Comment hi def link quakeTodo Todo hi def link quakeString String hi def link quakeNumber Number hi def link quakeOctal Number hi def link quakeOctalZero PreProc hi def link quakeFloat Number hi def link quakeOctalError Error hi def link quakeCommand quakeCommands hi def link quake1Command quakeCommands hi def link quake12Command quakeCommands hi def link quake2Command quakeCommands hi def link quake23Command quakeCommands hi def link quake3Command quakeCommands hi def link quakeCommands Keyword if exists("quake_is_quake3") hi quake3Red ctermfg=Red guifg=Red hi quake3Green ctermfg=Green guifg=Green hi quake3Yellow ctermfg=Yellow guifg=Yellow hi quake3Blue ctermfg=Blue guifg=Blue hi quake3Cyan ctermfg=Cyan guifg=Cyan hi quake3Purple ctermfg=DarkMagenta guifg=Purple hi quake3White ctermfg=White guifg=White hi quake3Black ctermfg=Black guifg=Black hi quake3Orange ctermfg=Brown guifg=Orange hi quake3Grey ctermfg=LightGrey guifg=LightGrey hi quake3Shadow cterm=underline gui=underline endif let b:current_syntax = "quake" let &cpo = s:cpo_save unlet s:cpo_save PK&]s'/vim80/syntax/rrst.vimnu[" reStructured Text with R statements " Language: reST with R code chunks " Maintainer: Alex Zvoleff, azvoleff@mail.sdsu.edu " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Tue Jun 28, 2016 08:53AM " " CONFIGURATION: " To highlight chunk headers as R code, put in your vimrc: " let rrst_syn_hl_chunk = 1 if exists("b:current_syntax") finish endif " load all of the rst info runtime syntax/rst.vim unlet b:current_syntax " load all of the r syntax highlighting rules into @R syntax include @R syntax/r.vim " highlight R chunks if exists("g:rrst_syn_hl_chunk") " highlight R code inside chunk header syntax match rrstChunkDelim "^\.\. {r" contained syntax match rrstChunkDelim "}$" contained else syntax match rrstChunkDelim "^\.\. {r .*}$" contained endif syntax match rrstChunkDelim "^\.\. \.\.$" contained syntax region rrstChunk start="^\.\. {r.*}$" end="^\.\. \.\.$" contains=@R,rrstChunkDelim keepend transparent fold " also highlight in-line R code syntax match rrstInlineDelim "`" contained syntax match rrstInlineDelim ":r:" contained syntax region rrstInline start=":r: *`" skip=/\\\\\|\\`/ end="`" contains=@R,rrstInlineDelim keepend hi def link rrstChunkDelim Special hi def link rrstInlineDelim Special let b:current_syntax = "rrst" " vim: ts=8 sw=2 PK&]J5vim80/syntax/bindzone.vimnu[" Vim syntax file " Language: BIND zone files (RFC 1035) " Maintainer: Julian Mehnle " URL: http://www.mehnle.net/source/odds+ends/vim/syntax/ " Last Change: Thu 2011-07-16 20:42:00 UTC " " Based on an earlier version by Вячеслав Горбанев (Slava Gorbanev), with " heavy modifications. " " $Id: bindzone.vim 12 2011-07-16 21:09:57Z julian $ " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case match " Directives syn region zoneRRecord start=/^/ end=/$/ contains=zoneOwnerName,zoneSpecial,zoneTTL,zoneClass,zoneRRType,zoneComment,zoneUnknown syn match zoneDirective /^\$ORIGIN\s\+/ nextgroup=zoneOrigin,zoneUnknown syn match zoneDirective /^\$TTL\s\+/ nextgroup=zoneTTL,zoneUnknown syn match zoneDirective /^\$INCLUDE\s\+/ nextgroup=zoneText,zoneUnknown syn match zoneDirective /^\$GENERATE\s/ syn match zoneUnknown contained /\S\+/ syn match zoneOwnerName contained /^[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\)\@=/ nextgroup=zoneTTL,zoneClass,zoneRRType skipwhite syn match zoneOrigin contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/ syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/ syn match zoneSpecial contained /^[@*.]\s/ syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite syn keyword zoneClass contained IN CHAOS nextgroup=zoneRRType,zoneTTL skipwhite syn keyword zoneRRType contained A AAAA CNAME DNAME HINFO MX NS PTR SOA SRV TXT SPF nextgroup=zoneRData skipwhite syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/ " Plain IPv6 address IPv6-embedded-IPv4 address " 1111:2:3:4:5:6:7:8 1111:2:3:4:5:6:127.0.0.1 syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{6}\(\x\{1,4}:\x\{1,4}\|\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " ::[...:]8 ::[...:]127.0.0.1 syn match zoneIP6Addr contained /\s\@<=::\(\(\x\{1,4}:\)\{,6}\x\{1,4}\|\(\x\{1,4}:\)\{,5}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " 1111::[...:]8 1111::[...:]127.0.0.1 syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1}:\(\(\x\{1,4}:\)\{,5}\x\{1,4}\|\(\x\{1,4}:\)\{,4}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " 1111:2::[...:]8 1111:2::[...:]127.0.0.1 syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{2}:\(\(\x\{1,4}:\)\{,4}\x\{1,4}\|\(\x\{1,4}:\)\{,3}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " 1111:2:3::[...:]8 1111:2:3::[...:]127.0.0.1 syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{3}:\(\(\x\{1,4}:\)\{,3}\x\{1,4}\|\(\x\{1,4}:\)\{,2}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " 1111:2:3:4::[...:]8 1111:2:3:4::[...:]127.0.0.1 syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{4}:\(\(\x\{1,4}:\)\{,2}\x\{1,4}\|\(\x\{1,4}:\)\{,1}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " 1111:2:3:4:5::[...:]8 1111:2:3:4:5::127.0.0.1 syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{5}:\(\(\x\{1,4}:\)\{,1}\x\{1,4}\|\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/ " 1111:2:3:4:5:6::8 - syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{6}:\x\{1,4}\>/ " 1111[:...]:: - syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1,7}:\(\s\|;\|$\)\@=/ syn match zoneText contained /"\([^"\\]\|\\.\)*"\(\s\|;\|$\)\@=/ syn match zoneNumber contained /\<[0-9]\+\(\s\|;\|$\)\@=/ syn match zoneSerial contained /\<[0-9]\{9,10}\(\s\|;\|$\)\@=/ syn match zoneErrParen /)/ syn region zoneParen contained start="(" end=")" contains=zoneSerial,zoneTTL,zoneNumber,zoneComment syn match zoneComment /;.*/ " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link zoneDirective Macro hi def link zoneUnknown Error hi def link zoneOrigin Statement hi def link zoneOwnerName Statement hi def link zoneDomain Identifier hi def link zoneSpecial Special hi def link zoneTTL Constant hi def link zoneClass Include hi def link zoneRRType Type hi def link zoneIPAddr Number hi def link zoneIP6Addr Number hi def link zoneText String hi def link zoneNumber Number hi def link zoneSerial Special hi def link zoneErrParen Error hi def link zoneComment Comment let b:current_syntax = "bindzone" " vim:sts=2 sw=2 PK&]C%vim80/syntax/mason.vimnu[" Vim syntax file " Language: Mason (Perl embedded in HTML) " Maintainer: vim-perl " Homepage: http://github.com/vim-perl/vim-perl/tree/master " Bugs/requests: http://github.com/vim-perl/vim-perl/issues " Last Change: 2017-09-12 " Contributors: Hinrik Örn Sigurðsson " Andrew Smith " " TODO: " - Fix <%text> blocks to show HTML tags but ignore Mason tags. " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " The HTML syntax file included below uses this variable. " if !exists("main_syntax") let main_syntax = 'mason' endif " First pull in the HTML syntax. " runtime! syntax/html.vim unlet b:current_syntax syn cluster htmlPreproc add=@masonTop " Now pull in the Perl syntax. " syn include @perlTop syntax/perl.vim unlet b:current_syntax syn include @podTop syntax/pod.vim " It's hard to reduce down to the correct sub-set of Perl to highlight in some " of these cases so I've taken the safe option of just using perlTop in all of " them. If you have any suggestions, please let me know. " syn region masonPod start="^=[a-z]" end="^=cut" keepend contained contains=@podTop syn cluster perlTop remove=perlBraces syn region masonLine matchgroup=Delimiter start="^%" end="$" keepend contains=@perlTop syn region masonPerlComment start="#" end="\%(%>\)\@=\|$" contained contains=perlTodo,@Spell syn region masonExpr matchgroup=Delimiter start="<%" end="%>" contains=@perlTop,masonPerlComment syn region masonPerl matchgroup=Delimiter start="<%perl>" end="" contains=masonPod,@perlTop syn region masonComp keepend matchgroup=Delimiter start="<&\s*\%([-._/[:alnum:]]\+:\)\?[-._/[:alnum:]]*" end="&>" contains=@perlTop syn region masonComp keepend matchgroup=Delimiter skipnl start="<&|\s*\%([-._/[:alnum:]]\+:\)\?[-._/[:alnum:]]*" end="&>" contains=@perlTop nextgroup=masonCompContent syn region masonCompContent matchgroup=Delimiter start="" end="" contained contains=@masonTop syn region masonArgs matchgroup=Delimiter start="<%args>" end="" contains=masonPod,@perlTop syn region masonInit matchgroup=Delimiter start="<%init>" end="" contains=masonPod,@perlTop syn region masonCleanup matchgroup=Delimiter start="<%cleanup>" end="" contains=masonPod,@perlTop syn region masonOnce matchgroup=Delimiter start="<%once>" end="" contains=masonPod,@perlTop syn region masonClass matchgroup=Delimiter start="<%class>" end="" contains=masonPod,@perlTop syn region masonShared matchgroup=Delimiter start="<%shared>" end="" contains=masonPod,@perlTop syn region masonDef matchgroup=Delimiter start="<%def\s*[-._/[:alnum:]]\+\s*>" end="" contains=@htmlTop syn region masonMethod matchgroup=Delimiter start="<%method\s*[-._/[:alnum:]]\+\s*>" end="" contains=@htmlTop syn region masonFlags matchgroup=Delimiter start="<%flags>" end="" contains=masonPod,@perlTop syn region masonAttr matchgroup=Delimiter start="<%attr>" end="" contains=masonPod,@perlTop syn region masonFilter matchgroup=Delimiter start="<%filter>" end="" contains=masonPod,@perlTop syn region masonDoc matchgroup=Delimiter start="<%doc>" end="" syn region masonText matchgroup=Delimiter start="<%text>" end="" syn cluster masonTop contains=masonLine,masonExpr,masonPerl,masonComp,masonArgs,masonInit,masonCleanup,masonOnce,masonShared,masonDef,masonMethod,masonFlags,masonAttr,masonFilter,masonDoc,masonText " Set up default highlighting. Almost all of this is done in the included " syntax files. hi def link masonDoc Comment hi def link masonPod Comment hi def link masonPerlComment perlComment let b:current_syntax = "mason" if main_syntax == 'mason' unlet main_syntax endif PK&]B{{vim80/syntax/README.txtnu[This directory contains Vim scripts for syntax highlighting. These scripts are not for a language, but are used by Vim itself: syntax.vim Used for the ":syntax on" command. Uses synload.vim. manual.vim Used for the ":syntax manual" command. Uses synload.vim. synload.vim Contains autocommands to load a language file when a certain file name (extension) is used. And sets up the Syntax menu for the GUI. nosyntax.vim Used for the ":syntax off" command. Undo the loading of synload.vim. A few special files: 2html.vim Converts any highlighted file to HTML (GUI only). colortest.vim Check for color names and actual color on screen. hitest.vim View the current highlight settings. whitespace.vim View Tabs and Spaces. If you want to write a syntax file, read the docs at ":help usr_44.txt". If you make a new syntax file which would be useful for others, please send it to Bram@vim.org. Include instructions for detecting the file type for this language, by file name extension or by checking a few lines in the file. And please write the file in a portable way, see ":help 44.12". If you have remarks about an existing file, send them to the maintainer of that file. Only when you get no response send a message to Bram@vim.org. If you are the maintainer of a syntax file and make improvements, send the new version to Bram@vim.org. For further info see ":help syntax" in Vim. PK&]Boovim80/syntax/mailcap.vimnu[" Vim syntax file " Language: Mailcap configuration file " Maintainer: Doug Kearns " Last Change: 2013 Jun 01 if exists("b:current_syntax") finish endif syn match mailcapComment "^#.*" syn region mailcapString start=+"+ end=+"+ contains=mailcapSpecial oneline syn match mailcapDelimiter "\\\@" syn match mailcapFieldname "\<\(compose\|composetyped\|print\|edit\|test\|x11-bitmap\|nametemplate\|textualnewlines\|description\|x-\w+\)\>\ze\s*=" syn match mailcapTypeField "^\(text\|image\|audio\|video\|application\|message\|multipart\|model\|x-[[:graph:]]\+\)\(/\(\*\|[[:graph:]]\+\)\)\=\ze\s*;" syn case match hi def link mailcapComment Comment hi def link mailcapDelimiter Delimiter hi def link mailcapFlag Statement hi def link mailcapFieldname Statement hi def link mailcapSpecial Identifier hi def link mailcapTypeField Type hi def link mailcapString String let b:current_syntax = "mailcap" " vim: ts=8 PK&]M=+**vim80/syntax/grub.vimnu[" Vim syntax file " Language: grub(8) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword grubTodo contained TODO FIXME XXX NOTE syn region grubComment display oneline start='^#' end='$' \ contains=grubTodo,@Spell syn match grubDevice display \ '(\([fh]d\d\|\d\+\|0x\x\+\)\(,\d\+\)\=\(,\l\)\=)' syn match grubBlock display '\(\d\+\)\=+\d\+\(,\(\d\+\)\=+\d\+\)*' syn match grubNumbers display '+\=\<\d\+\|0x\x\+\>' syn match grubBegin display '^' \ nextgroup=@grubCommands,grubComment skipwhite syn cluster grubCommands contains=grubCommand,grubTitleCommand syn keyword grubCommand contained default fallback hiddenmenu timeout syn keyword grubTitleCommand contained title nextgroup=grubTitle skipwhite syn match grubTitle contained display '.*' syn keyword grubCommand contained bootp color device dhcp hide ifconfig \ pager partnew parttype password rarp serial setkey \ terminal tftpserver unhide blocklist boot cat \ chainloader cmp configfile debug displayapm \ displaymem embed find fstest geometry halt help \ impsprobe initrd install ioprobe kernel lock \ makeactive map md5crypt module modulenounzip pause \ quit reboot read root rootnoverify savedefault setup \ testload testvbe uppermem vbeprobe syn keyword grubSpecial saved syn match grubBlink display 'blink-' syn keyword grubBlack black syn keyword grubBlue blue syn keyword grubGreen green syn keyword grubRed red syn keyword grubMagenta magenta syn keyword grubBrown brown yellow syn keyword grubWhite white syn match grubLightGray display 'light-gray' syn match grubLightBlue display 'light-blue' syn match grubLightGreen display 'light-green' syn match grubLightCyan display 'light-cyan' syn match grubLightRed display 'light-red' syn match grubLightMagenta display 'light-magenta' syn match grubDarkGray display 'dark-gray' hi def link grubComment Comment hi def link grubTodo Todo hi def link grubNumbers Number hi def link grubDevice Identifier hi def link grubBlock Identifier hi def link grubCommand Keyword hi def link grubTitleCommand grubCommand hi def link grubTitle String hi def link grubSpecial Special hi def grubBlink cterm=inverse hi def grubBlack ctermfg=Black ctermbg=White guifg=Black guibg=White hi def grubBlue ctermfg=DarkBlue guifg=DarkBlue hi def grubGreen ctermfg=DarkGreen guifg=DarkGreen hi def grubRed ctermfg=DarkRed guifg=DarkRed hi def grubMagenta ctermfg=DarkMagenta guifg=DarkMagenta hi def grubBrown ctermfg=Brown guifg=Brown hi def grubWhite ctermfg=White ctermbg=Black guifg=White guibg=Black hi def grubLightGray ctermfg=LightGray guifg=LightGray hi def grubLightBlue ctermfg=LightBlue guifg=LightBlue hi def grubLightGreen ctermfg=LightGreen guifg=LightGreen hi def grubLightCyan ctermfg=LightCyan guifg=LightCyan hi def grubLightRed ctermfg=LightRed guifg=LightRed hi def grubLightMagenta ctermfg=LightMagenta guifg=LightMagenta hi def grubDarkGray ctermfg=DarkGray guifg=DarkGray let b:current_syntax = "grub" let &cpo = s:cpo_save unlet s:cpo_save PK&]mB  vim80/syntax/ptcap.vimnu[" Vim syntax file " Language: printcap/termcap database " Maintainer: Haakon Riiser " URL: http://folk.uio.no/hakonrk/vim/syntax/ptcap.vim " Last Change: 2001 May 15 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Since I only highlight based on the structure of the databases, not " specific keywords, case sensitivity isn't required syn case ignore " Since everything that is not caught by the syntax patterns is assumed " to be an error, we start parsing 20 lines up, unless something else " is specified if exists("ptcap_minlines") exe "syn sync lines=".ptcap_minlines else syn sync lines=20 endif " Highlight everything that isn't caught by the rules as errors, " except blank lines syn match ptcapError "^.*\S.*$" syn match ptcapLeadBlank "^\s\+" contained " `:' and `|' are delimiters for fields and names, and should not be " highlighted. Hence, they are linked to `NONE' syn match ptcapDelimiter "[:|]" contained " Escaped characters receive special highlighting syn match ptcapEscapedChar "\\." contained syn match ptcapEscapedChar "\^." contained syn match ptcapEscapedChar "\\\o\{3}" contained " A backslash at the end of a line will suppress the newline syn match ptcapLineCont "\\$" contained " A number follows the same rules as an integer in C syn match ptcapNumber "#\(+\|-\)\=\d\+"lc=1 contained syn match ptcapNumberError "#\d*[^[:digit:]:\\]"lc=1 contained syn match ptcapNumber "#0x\x\{1,8}"lc=1 contained syn match ptcapNumberError "#0x\X"me=e-1,lc=1 contained syn match ptcapNumberError "#0x\x\{9}"lc=1 contained syn match ptcapNumberError "#0x\x*[^[:xdigit:]:\\]"lc=1 contained " The `@' operator clears a flag (i.e., sets it to zero) " The `#' operator assigns a following number to the flag " The `=' operator assigns a string to the preceding flag syn match ptcapOperator "[@#=]" contained " Some terminal capabilites have special names like `#5' and `@1', and we " need special rules to match these properly syn match ptcapSpecialCap "\W[#@]\d" contains=ptcapDelimiter contained " If editing a termcap file, an entry in the database is terminated by " a (non-escaped) newline. Otherwise, it is terminated by a line which " does not start with a colon (:) if exists("b:ptcap_type") && b:ptcap_type[0] == 't' syn region ptcapEntry start="^\s*[^[:space:]:]" end="[^\\]\(\\\\\)*$" end="^$" contains=ptcapNames,ptcapField,ptcapLeadBlank keepend else syn region ptcapEntry start="^\s*[^[:space:]:]"me=e-1 end="^\s*[^[:space:]:#]"me=e-1 contains=ptcapNames,ptcapField,ptcapLeadBlank,ptcapComment endif syn region ptcapNames start="^\s*[^[:space:]:]" skip="[^\\]\(\\\\\)*\\:" end=":"me=e-1 contains=ptcapDelimiter,ptcapEscapedChar,ptcapLineCont,ptcapLeadBlank,ptcapComment keepend contained syn region ptcapField start=":" skip="[^\\]\(\\\\\)*\\$" end="[^\\]\(\\\\\)*:"me=e-1 end="$" contains=ptcapDelimiter,ptcapString,ptcapNumber,ptcapNumberError,ptcapOperator,ptcapLineCont,ptcapSpecialCap,ptcapLeadBlank,ptcapComment keepend contained syn region ptcapString matchgroup=ptcapOperator start="=" skip="[^\\]\(\\\\\)*\\:" matchgroup=ptcapDelimiter end=":"me=e-1 matchgroup=NONE end="[^\\]\(\\\\\)*[^\\]$" end="^$" contains=ptcapEscapedChar,ptcapLineCont keepend contained syn region ptcapComment start="^\s*#" end="$" contains=ptcapLeadBlank hi def link ptcapComment Comment hi def link ptcapDelimiter Delimiter " The highlighting of "ptcapEntry" should always be overridden by " its contents, so I use Todo highlighting to indicate that there " is work to be done with the syntax file if you can see it :-) hi def link ptcapEntry Todo hi def link ptcapError Error hi def link ptcapEscapedChar SpecialChar hi def link ptcapField Type hi def link ptcapLeadBlank NONE hi def link ptcapLineCont Special hi def link ptcapNames Label hi def link ptcapNumber NONE hi def link ptcapNumberError Error hi def link ptcapOperator Operator hi def link ptcapSpecialCap Type hi def link ptcapString NONE let b:current_syntax = "ptcap" " vim: sts=4 sw=4 ts=8 PK&]IO@!@!vim80/syntax/vmasm.vimnu[" Vim syntax file " Language: (VAX) Macro Assembly " Maintainer: Tom Uijldert " Last change: 2004 May 16 " " This is incomplete. Feel free to contribute... " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " Partial list of register symbols syn keyword vmasmReg r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 syn keyword vmasmReg ap fp sp pc iv dv " All matches - order is important! syn keyword vmasmOpcode adawi adwc ashl ashq bitb bitw bitl decb decw decl syn keyword vmasmOpcode ediv emul incb incw incl mcomb mcomw mcoml syn keyword vmasmOpcode movzbw movzbl movzwl popl pushl rotl sbwc syn keyword vmasmOpcode cmpv cmpzv cmpc3 cmpc5 locc matchc movc3 movc5 syn keyword vmasmOpcode movtc movtuc scanc skpc spanc crc extv extzv syn keyword vmasmOpcode ffc ffs insv aobleq aoblss bbc bbs bbcci bbssi syn keyword vmasmOpcode blbc blbs brb brw bsbb bsbw caseb casew casel syn keyword vmasmOpcode jmp jsb rsb sobgeq sobgtr callg calls ret syn keyword vmasmOpcode bicpsw bispsw bpt halt index movpsl nop popr pushr xfc syn keyword vmasmOpcode insqhi insqti insque remqhi remqti remque syn keyword vmasmOpcode addp4 addp6 ashp cmpp3 cmpp4 cvtpl cvtlp cvtps cvtpt syn keyword vmasmOpcode cvtsp cvttp divp movp mulp subp4 subp6 editpc syn keyword vmasmOpcode prober probew rei ldpctx svpctx mfpr mtpr bugw bugl syn keyword vmasmOpcode vldl vldq vgathl vgathq vstl vstq vscatl vscatq syn keyword vmasmOpcode vvcvt iota mfvp mtvp vsync syn keyword vmasmOpcode beql[u] bgtr[u] blss[u] syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" syn match vmasmOpcode "\" " Various number formats syn match vmasmdecNumber "[+-]\=[0-9]\+\>" syn match vmasmdecNumber "^d[0-9]\+\>" syn match vmasmhexNumber "^x[0-9a-f]\+\>" syn match vmasmoctNumber "^o[0-7]\+\>" syn match vmasmbinNumber "^b[01]\+\>" syn match vmasmfloatNumber "[-+]\=[0-9]\+E[-+]\=[0-9]\+" syn match vmasmfloatNumber "[-+]\=[0-9]\+\.[0-9]*\(E[-+]\=[0-9]\+\)\=" " Valid labels syn match vmasmLabel "^[a-z_$.][a-z0-9_$.]\{,30}::\=" syn match vmasmLabel "\<[0-9]\{1,5}\$:\=" " Local label " Character string constants " Too complex really. Could be "<...>" but those could also be " expressions. Don't know how to handle chosen delimiters " ("^...") " syn region vmasmString start="<" end=">" oneline " Operators syn match vmasmOperator "[-+*/@&!\\]" syn match vmasmOperator "=" syn match vmasmOperator "==" " Global assignment syn match vmasmOperator "%length(.*)" syn match vmasmOperator "%locate(.*)" syn match vmasmOperator "%extract(.*)" syn match vmasmOperator "^[amfc]" syn match vmasmOperator "[bwlg]^" syn match vmasmOperator "\<\(not_\)\=equal\>" syn match vmasmOperator "\" syn match vmasmOperator "\" syn match vmasmOperator "\" syn match vmasmOperator "\<\(not_\)\=defined\>" syn match vmasmOperator "\<\(not_\)\=blank\>" syn match vmasmOperator "\" syn match vmasmOperator "\" syn match vmasmOperator "\" syn match vmasmOperator "\<[gl]t\>" syn match vmasmOperator "\" syn match vmasmOperator "\" syn match vmasmOperator "\" syn match vmasmOperator "\<[nlg]e\>" syn match vmasmOperator "\" " Special items for comments syn keyword vmasmTodo contained todo " Comments syn match vmasmComment ";.*" contains=vmasmTodo " Include syn match vmasmInclude "\.library\>" " Macro definition syn match vmasmMacro "\.macro\>" syn match vmasmMacro "\.mexit\>" syn match vmasmMacro "\.endm\>" syn match vmasmMacro "\.mcall\>" syn match vmasmMacro "\.mdelete\>" " Conditional assembly syn match vmasmPreCond "\.iff\=\>" syn match vmasmPreCond "\.if_false\>" syn match vmasmPreCond "\.iftf\=\>" syn match vmasmPreCond "\.if_true\(_false\)\=\>" syn match vmasmPreCond "\.iif\>" " Loop control syn match vmasmRepeat "\.irpc\=\>" syn match vmasmRepeat "\.repeat\>" syn match vmasmRepeat "\.rept\>" syn match vmasmRepeat "\.endr\>" " Directives syn match vmasmDirective "\.address\>" syn match vmasmDirective "\.align\>" syn match vmasmDirective "\.asci[cdiz]\>" syn match vmasmDirective "\.blk[abdfghloqw]\>" syn match vmasmDirective "\.\(signed_\)\=byte\>" syn match vmasmDirective "\.\(no\)\=cross\>" syn match vmasmDirective "\.debug\>" syn match vmasmDirective "\.default displacement\>" syn match vmasmDirective "\.[dfgh]_floating\>" syn match vmasmDirective "\.disable\>" syn match vmasmDirective "\.double\>" syn match vmasmDirective "\.dsabl\>" syn match vmasmDirective "\.enable\=\>" syn match vmasmDirective "\.endc\=\>" syn match vmasmDirective "\.entry\>" syn match vmasmDirective "\.error\>" syn match vmasmDirective "\.even\>" syn match vmasmDirective "\.external\>" syn match vmasmDirective "\.extrn\>" syn match vmasmDirective "\.float\>" syn match vmasmDirective "\.globa\=l\>" syn match vmasmDirective "\.ident\>" syn match vmasmDirective "\.link\>" syn match vmasmDirective "\.list\>" syn match vmasmDirective "\.long\>" syn match vmasmDirective "\.mask\>" syn match vmasmDirective "\.narg\>" syn match vmasmDirective "\.nchr\>" syn match vmasmDirective "\.nlist\>" syn match vmasmDirective "\.ntype\>" syn match vmasmDirective "\.octa\>" syn match vmasmDirective "\.odd\>" syn match vmasmDirective "\.opdef\>" syn match vmasmDirective "\.packed\>" syn match vmasmDirective "\.page\>" syn match vmasmDirective "\.print\>" syn match vmasmDirective "\.psect\>" syn match vmasmDirective "\.quad\>" syn match vmasmDirective "\.ref[1248]\>" syn match vmasmDirective "\.ref16\>" syn match vmasmDirective "\.restore\(_psect\)\=\>" syn match vmasmDirective "\.save\(_psect\)\=\>" syn match vmasmDirective "\.sbttl\>" syn match vmasmDirective "\.\(no\)\=show\>" syn match vmasmDirective "\.\(sub\)\=title\>" syn match vmasmDirective "\.transfer\>" syn match vmasmDirective "\.warn\>" syn match vmasmDirective "\.weak\>" syn match vmasmDirective "\.\(signed_\)\=word\>" syn case match " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later " Comment Constant Error Identifier PreProc Special Statement Todo Type " " Constant Boolean Character Number String " Identifier Function " PreProc Define Include Macro PreCondit " Special Debug Delimiter SpecialChar SpecialComment Tag " Statement Conditional Exception Keyword Label Operator Repeat " Type StorageClass Structure Typedef hi def link vmasmComment Comment hi def link vmasmTodo Todo hi def link vmasmhexNumber Number " Constant hi def link vmasmoctNumber Number " Constant hi def link vmasmbinNumber Number " Constant hi def link vmasmdecNumber Number " Constant hi def link vmasmfloatNumber Number " Constant " hi def link vmasmString String " Constant hi def link vmasmReg Identifier hi def link vmasmOperator Identifier hi def link vmasmInclude Include " PreProc hi def link vmasmMacro Macro " PreProc " hi def link vmasmMacroParam Keyword " Statement hi def link vmasmDirective Special hi def link vmasmPreCond Special hi def link vmasmOpcode Statement hi def link vmasmCond Conditional " Statement hi def link vmasmRepeat Repeat " Statement hi def link vmasmLabel Type let b:current_syntax = "vmasm" " vim: ts=8 sw=2 PK&]N8vim80/syntax/syntax.vimnu[" Vim syntax support file " Maintainer: Bram Moolenaar " Last Change: 2001 Sep 04 " This file is used for ":syntax on". " It installs the autocommands and starts highlighting for all buffers. if !has("syntax") finish endif " If Syntax highlighting appears to be on already, turn it off first, so that " any leftovers are cleared. if exists("syntax_on") || exists("syntax_manual") so :p:h/nosyntax.vim endif " Load the Syntax autocommands and set the default methods for highlighting. runtime syntax/synload.vim " Load the FileType autocommands if not done yet. if exists("did_load_filetypes") let s:did_ft = 1 else filetype on let s:did_ft = 0 endif " Set up the connection between FileType and Syntax autocommands. " This makes the syntax automatically set when the file type is detected. augroup syntaxset au! FileType * exe "set syntax=" . expand("") augroup END " Execute the syntax autocommands for the each buffer. " If the filetype wasn't detected yet, do that now. " Always do the syntaxset autocommands, for buffers where the 'filetype' " already was set manually (e.g., help buffers). doautoall syntaxset FileType if !s:did_ft doautoall filetypedetect BufRead endif PK&])qvvvim80/syntax/xslt.vimnu[" Vim syntax file " Language: XSLT " Maintainer: Johannes Zellner " Last Change: Sun, 28 Oct 2001 21:22:24 +0100 " Filenames: *.xsl " $Id: xslt.vim,v 1.1 2004/06/13 15:52:10 vimboss Exp $ " REFERENCES: " [1] http://www.w3.org/TR/xslt " " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif runtime syntax/xml.vim syn cluster xmlTagHook add=xslElement syn case match syn match xslElement '\%(xsl:\)\@<=apply-imports' syn match xslElement '\%(xsl:\)\@<=apply-templates' syn match xslElement '\%(xsl:\)\@<=attribute' syn match xslElement '\%(xsl:\)\@<=attribute-set' syn match xslElement '\%(xsl:\)\@<=call-template' syn match xslElement '\%(xsl:\)\@<=choose' syn match xslElement '\%(xsl:\)\@<=comment' syn match xslElement '\%(xsl:\)\@<=copy' syn match xslElement '\%(xsl:\)\@<=copy-of' syn match xslElement '\%(xsl:\)\@<=decimal-format' syn match xslElement '\%(xsl:\)\@<=document' syn match xslElement '\%(xsl:\)\@<=element' syn match xslElement '\%(xsl:\)\@<=fallback' syn match xslElement '\%(xsl:\)\@<=for-each' syn match xslElement '\%(xsl:\)\@<=if' syn match xslElement '\%(xsl:\)\@<=include' syn match xslElement '\%(xsl:\)\@<=import' syn match xslElement '\%(xsl:\)\@<=key' syn match xslElement '\%(xsl:\)\@<=message' syn match xslElement '\%(xsl:\)\@<=namespace-alias' syn match xslElement '\%(xsl:\)\@<=number' syn match xslElement '\%(xsl:\)\@<=otherwise' syn match xslElement '\%(xsl:\)\@<=output' syn match xslElement '\%(xsl:\)\@<=param' syn match xslElement '\%(xsl:\)\@<=processing-instruction' syn match xslElement '\%(xsl:\)\@<=preserve-space' syn match xslElement '\%(xsl:\)\@<=script' syn match xslElement '\%(xsl:\)\@<=sort' syn match xslElement '\%(xsl:\)\@<=strip-space' syn match xslElement '\%(xsl:\)\@<=stylesheet' syn match xslElement '\%(xsl:\)\@<=template' syn match xslElement '\%(xsl:\)\@<=transform' syn match xslElement '\%(xsl:\)\@<=text' syn match xslElement '\%(xsl:\)\@<=value-of' syn match xslElement '\%(xsl:\)\@<=variable' syn match xslElement '\%(xsl:\)\@<=when' syn match xslElement '\%(xsl:\)\@<=with-param' hi def link xslElement Statement " vim: ts=8 PK&]?vim80/syntax/texmf.vimnu[" Vim syntax file " This is a GENERATED FILE. Please always refer to source file at the URI below. " Language: Web2C TeX texmf.cnf configuration file " Maintainer: David Ne\v{c}as (Yeti) " Last Change: 2001-05-13 " URL: http://physics.muni.cz/~yeti/download/syntax/texmf.vim " Setup " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case match " Comments syn match texmfComment "%..\+$" contains=texmfTodo syn match texmfComment "%\s*$" contains=texmfTodo syn keyword texmfTodo TODO FIXME XXX NOT contained " Constants and parameters syn match texmfPassedParameter "[-+]\=%\w\W" syn match texmfPassedParameter "[-+]\=%\w$" syn match texmfNumber "\<\d\+\>" syn match texmfVariable "\$\(\w\k*\|{\w\k*}\)" syn match texmfSpecial +\\"\|\\$+ syn region texmfString start=+"+ end=+"+ skip=+\\"\\\\+ contains=texmfVariable,texmfSpecial,texmfPassedParameter " Assignments syn match texmfLHSStart "^\s*\w\k*" nextgroup=texmfLHSDot,texmfEquals syn match texmfLHSVariable "\w\k*" contained nextgroup=texmfLHSDot,texmfEquals syn match texmfLHSDot "\." contained nextgroup=texmfLHSVariable syn match texmfEquals "\s*=" contained " Specialities syn match texmfComma "," contained syn match texmfColons ":\|;" syn match texmfDoubleExclam "!!" contained " Catch errors caused by wrong parenthesization syn region texmfBrace matchgroup=texmfBraceBrace start="{" end="}" contains=ALLBUT,texmfTodo,texmfBraceError,texmfLHSVariable,texmfLHSDot transparent syn match texmfBraceError "}" " Define the default highlighting hi def link texmfComment Comment hi def link texmfTodo Todo hi def link texmfPassedParameter texmfVariable hi def link texmfVariable Identifier hi def link texmfNumber Number hi def link texmfString String hi def link texmfLHSStart texmfLHS hi def link texmfLHSVariable texmfLHS hi def link texmfLHSDot texmfLHS hi def link texmfLHS Type hi def link texmfEquals Normal hi def link texmfBraceBrace texmfDelimiter hi def link texmfComma texmfDelimiter hi def link texmfColons texmfDelimiter hi def link texmfDelimiter Preproc hi def link texmfDoubleExclam Statement hi def link texmfSpecial Special hi def link texmfBraceError texmfError hi def link texmfError Error let b:current_syntax = "texmf" PK&]1.  vim80/syntax/tap.vimnu[" Vim syntax file " Language: Verbose TAP Output " Maintainer: Rufus Cable " Remark: Simple syntax highlighting for TAP output " License: " Copyright: (c) 2008-2013 Rufus Cable " Last Change: 2014-12-13 if exists("b:current_syntax") finish endif syn match tapTestDiag /^ *#.*/ contains=tapTestTodo syn match tapTestTime /^ *\[\d\d:\d\d:\d\d\].*/ contains=tapTestFile syn match tapTestFile /\w\+\/[^. ]*/ contained syn match tapTestFileWithDot /\w\+\/[^ ]*/ contained syn match tapTestPlan /^ *\d\+\.\.\d\+$/ " tapTest is a line like 'ok 1', 'not ok 2', 'ok 3 - xxxx' syn match tapTest /^ *\(not \)\?ok \d\+.*/ contains=tapTestStatusOK,tapTestStatusNotOK,tapTestLine " tapTestLine is the line without the ok/not ok status - i.e. number and " optional message syn match tapTestLine /\d\+\( .*\|$\)/ contains=tapTestNumber,tapTestLoadMessage,tapTestTodo,tapTestSkip contained " turn ok/not ok messages green/red respectively syn match tapTestStatusOK /ok/ contained syn match tapTestStatusNotOK /not ok/ contained " highlight todo tests syn match tapTestTodo /\(# TODO\|Failed (TODO)\) .*$/ contained contains=tapTestTodoRev syn match tapTestTodoRev /\/ contained " highlight skipped tests syn match tapTestSkip /# skip .*$/ contained contains=tapTestSkipTag syn match tapTestSkipTag /\(# \)\@<=skip\>/ contained " look behind so "ok 123" and "not ok 124" match test number syn match tapTestNumber /\(ok \)\@<=\d\d*/ contained syn match tapTestLoadMessage /\*\*\*.*\*\*\*/ contained contains=tapTestThreeStars,tapTestFileWithDot syn match tapTestThreeStars /\*\*\*/ contained syn region tapTestRegion start=/^ *\(not \)\?ok.*$/me=e+1 end=/^\(\(not \)\?ok\|# Looks like you planned \|All tests successful\|Bailout called\)/me=s-1 fold transparent excludenl syn region tapTestResultsOKRegion start=/^\(All tests successful\|Result: PASS\)/ end=/$/ syn region tapTestResultsNotOKRegion start=/^\(# Looks like you planned \|Bailout called\|# Looks like you failed \|Result: FAIL\)/ end=/$/ syn region tapTestResultsSummaryRegion start=/^Test Summary Report/ end=/^Files=.*$/ contains=tapTestResultsSummaryHeading,tapTestResultsSummaryNotOK syn region tapTestResultsSummaryHeading start=/^Test Summary Report/ end=/^-\+$/ contained syn region tapTestResultsSummaryNotOK start=/TODO passed:/ end=/$/ contained syn region tapTestInstructionsRegion start=/\%1l/ end=/^$/ set foldtext=TAPTestLine_foldtext() function! TAPTestLine_foldtext() let line = getline(v:foldstart) let sub = substitute(line, '/\*\|\*/\|{{{\d\=', '', 'g') return sub endfunction set foldminlines=5 set foldcolumn=2 set foldenable set foldmethod=syntax syn sync fromstart if !exists("did_tapverboseoutput_syntax_inits") let did_tapverboseoutput_syntax_inits = 1 hi tapTestStatusOK term=bold ctermfg=green guifg=Green hi tapTestStatusNotOK term=reverse ctermfg=black ctermbg=red guifg=Black guibg=Red hi tapTestTodo term=bold ctermfg=yellow ctermbg=black guifg=Yellow guibg=Black hi tapTestTodoRev term=reverse ctermfg=black ctermbg=yellow guifg=Black guibg=Yellow hi tapTestSkip term=bold ctermfg=lightblue guifg=LightBlue hi tapTestSkipTag term=reverse ctermfg=black ctermbg=lightblue guifg=Black guibg=LightBlue hi tapTestTime term=bold ctermfg=blue guifg=Blue hi tapTestFile term=reverse ctermfg=black ctermbg=yellow guibg=Black guifg=Yellow hi tapTestLoadedFile term=bold ctermfg=black ctermbg=cyan guibg=Cyan guifg=Black hi tapTestThreeStars term=reverse ctermfg=blue guifg=Blue hi tapTestPlan term=bold ctermfg=yellow guifg=Yellow hi link tapTestFileWithDot tapTestLoadedFile hi link tapTestNumber Number hi link tapTestDiag Comment hi tapTestRegion ctermbg=green hi tapTestResultsOKRegion ctermbg=green ctermfg=black hi tapTestResultsNotOKRegion ctermbg=red ctermfg=black hi tapTestResultsSummaryHeading ctermbg=blue ctermfg=white hi tapTestResultsSummaryNotOK ctermbg=red ctermfg=black hi tapTestInstructionsRegion ctermbg=lightmagenta ctermfg=black endif let b:current_syntax="tapVerboseOutput" PK&]!B77vim80/syntax/python.vimnu[" Vim syntax file " Language: Python " Maintainer: Zvezdan Petkovic " Last Change: 2016 Oct 29 " Credits: Neil Schemenauer " Dmitry Vasiliev " " This version is a major rewrite by Zvezdan Petkovic. " " - introduced highlighting of doctests " - updated keywords, built-ins, and exceptions " - corrected regular expressions for " " * functions " * decorators " * strings " * escapes " * numbers " * space error " " - corrected synchronization " - more highlighting is ON by default, except " - space error highlighting is OFF by default " " Optional highlighting can be controlled using these variables. " " let python_no_builtin_highlight = 1 " let python_no_doctest_code_highlight = 1 " let python_no_doctest_highlight = 1 " let python_no_exception_highlight = 1 " let python_no_number_highlight = 1 " let python_space_error_highlight = 1 " " All the options above can be switched on together. " " let python_highlight_all = 1 " " quit when a syntax file was already loaded. if exists("b:current_syntax") finish endif " We need nocompatible mode in order to continue lines with backslashes. " Original setting will be restored. let s:cpo_save = &cpo set cpo&vim if exists("python_no_doctest_highlight") let python_no_doctest_code_highlight = 1 endif if exists("python_highlight_all") if exists("python_no_builtin_highlight") unlet python_no_builtin_highlight endif if exists("python_no_doctest_code_highlight") unlet python_no_doctest_code_highlight endif if exists("python_no_doctest_highlight") unlet python_no_doctest_highlight endif if exists("python_no_exception_highlight") unlet python_no_exception_highlight endif if exists("python_no_number_highlight") unlet python_no_number_highlight endif let python_space_error_highlight = 1 endif " Keep Python keywords in alphabetical order inside groups for easy " comparison with the table in the 'Python Language Reference' " https://docs.python.org/2/reference/lexical_analysis.html#keywords, " https://docs.python.org/3/reference/lexical_analysis.html#keywords. " Groups are in the order presented in NAMING CONVENTIONS in syntax.txt. " Exceptions come last at the end of each group (class and def below). " " Keywords 'with' and 'as' are new in Python 2.6 " (use 'from __future__ import with_statement' in Python 2.5). " " Some compromises had to be made to support both Python 3 and 2. " We include Python 3 features, but when a definition is duplicated, " the last definition takes precedence. " " - 'False', 'None', and 'True' are keywords in Python 3 but they are " built-ins in 2 and will be highlighted as built-ins below. " - 'exec' is a built-in in Python 3 and will be highlighted as " built-in below. " - 'nonlocal' is a keyword in Python 3 and will be highlighted. " - 'print' is a built-in in Python 3 and will be highlighted as " built-in below (use 'from __future__ import print_function' in 2) " - async and await were added in Python 3.5 and are soft keywords. " syn keyword pythonStatement False None True syn keyword pythonStatement as assert break continue del exec global syn keyword pythonStatement lambda nonlocal pass print return with yield syn keyword pythonStatement class def nextgroup=pythonFunction skipwhite syn keyword pythonConditional elif else if syn keyword pythonRepeat for while syn keyword pythonOperator and in is not or syn keyword pythonException except finally raise try syn keyword pythonInclude from import syn keyword pythonAsync async await " Decorators (new in Python 2.4) " A dot must be allowed because of @MyClass.myfunc decorators. syn match pythonDecorator "@" display contained syn match pythonDecoratorName "@\s*\h\%(\w\|\.\)*" display contains=pythonDecorator " Python 3.5 introduced the use of the same symbol for matrix multiplication: " https://www.python.org/dev/peps/pep-0465/. We now have to exclude the " symbol from highlighting when used in that context. " Single line multiplication. syn match pythonMatrixMultiply \ "\%(\w\|[])]\)\s*@" \ contains=ALLBUT,pythonDecoratorName,pythonDecorator,pythonFunction,pythonDoctestValue \ transparent " Multiplication continued on the next line after backslash. syn match pythonMatrixMultiply \ "[^\\]\\\s*\n\%(\s*\.\.\.\s\)\=\s\+@" \ contains=ALLBUT,pythonDecoratorName,pythonDecorator,pythonFunction,pythonDoctestValue \ transparent " Multiplication in a parenthesized expression over multiple lines with @ at " the start of each continued line; very similar to decorators and complex. syn match pythonMatrixMultiply \ "^\s*\%(\%(>>>\|\.\.\.\)\s\+\)\=\zs\%(\h\|\%(\h\|[[(]\).\{-}\%(\w\|[])]\)\)\s*\n\%(\s*\.\.\.\s\)\=\s\+@\%(.\{-}\n\%(\s*\.\.\.\s\)\=\s\+@\)*" \ contains=ALLBUT,pythonDecoratorName,pythonDecorator,pythonFunction,pythonDoctestValue \ transparent syn match pythonFunction "\h\w*" display contained syn match pythonComment "#.*$" contains=pythonTodo,@Spell syn keyword pythonTodo FIXME NOTE NOTES TODO XXX contained " Triple-quoted strings can contain doctests. syn region pythonString matchgroup=pythonQuotes \ start=+[uU]\=\z(['"]\)+ end="\z1" skip="\\\\\|\\\z1" \ contains=pythonEscape,@Spell syn region pythonString matchgroup=pythonTripleQuotes \ start=+[uU]\=\z('''\|"""\)+ end="\z1" keepend \ contains=pythonEscape,pythonSpaceError,pythonDoctest,@Spell syn region pythonRawString matchgroup=pythonQuotes \ start=+[uU]\=[rR]\z(['"]\)+ end="\z1" skip="\\\\\|\\\z1" \ contains=@Spell syn region pythonRawString matchgroup=pythonTripleQuotes \ start=+[uU]\=[rR]\z('''\|"""\)+ end="\z1" keepend \ contains=pythonSpaceError,pythonDoctest,@Spell syn match pythonEscape +\\[abfnrtv'"\\]+ contained syn match pythonEscape "\\\o\{1,3}" contained syn match pythonEscape "\\x\x\{2}" contained syn match pythonEscape "\%(\\u\x\{4}\|\\U\x\{8}\)" contained " Python allows case-insensitive Unicode IDs: http://www.unicode.org/charts/ syn match pythonEscape "\\N{\a\+\%(\s\a\+\)*}" contained syn match pythonEscape "\\$" " It is very important to understand all details before changing the " regular expressions below or their order. " The word boundaries are *not* the floating-point number boundaries " because of a possible leading or trailing decimal point. " The expressions below ensure that all valid number literals are " highlighted, and invalid number literals are not. For example, " " - a decimal point in '4.' at the end of a line is highlighted, " - a second dot in 1.0.0 is not highlighted, " - 08 is not highlighted, " - 08e0 or 08j are highlighted, " " and so on, as specified in the 'Python Language Reference'. " https://docs.python.org/2/reference/lexical_analysis.html#numeric-literals " https://docs.python.org/3/reference/lexical_analysis.html#numeric-literals if !exists("python_no_number_highlight") " numbers (including longs and complex) syn match pythonNumber "\<0[oO]\=\o\+[Ll]\=\>" syn match pythonNumber "\<0[xX]\x\+[Ll]\=\>" syn match pythonNumber "\<0[bB][01]\+[Ll]\=\>" syn match pythonNumber "\<\%([1-9]\d*\|0\)[Ll]\=\>" syn match pythonNumber "\<\d\+[jJ]\>" syn match pythonNumber "\<\d\+[eE][+-]\=\d\+[jJ]\=\>" syn match pythonNumber \ "\<\d\+\.\%([eE][+-]\=\d\+\)\=[jJ]\=\%(\W\|$\)\@=" syn match pythonNumber \ "\%(^\|\W\)\zs\d*\.\d\+\%([eE][+-]\=\d\+\)\=[jJ]\=\>" endif " Group the built-ins in the order in the 'Python Library Reference' for " easier comparison. " https://docs.python.org/2/library/constants.html " https://docs.python.org/3/library/constants.html " http://docs.python.org/2/library/functions.html " http://docs.python.org/3/library/functions.html " http://docs.python.org/2/library/functions.html#non-essential-built-in-functions " http://docs.python.org/3/library/functions.html#non-essential-built-in-functions " Python built-in functions are in alphabetical order. if !exists("python_no_builtin_highlight") " built-in constants " 'False', 'True', and 'None' are also reserved words in Python 3 syn keyword pythonBuiltin False True None syn keyword pythonBuiltin NotImplemented Ellipsis __debug__ " built-in functions syn keyword pythonBuiltin abs all any bin bool bytearray callable chr syn keyword pythonBuiltin classmethod compile complex delattr dict dir syn keyword pythonBuiltin divmod enumerate eval filter float format syn keyword pythonBuiltin frozenset getattr globals hasattr hash syn keyword pythonBuiltin help hex id input int isinstance syn keyword pythonBuiltin issubclass iter len list locals map max syn keyword pythonBuiltin memoryview min next object oct open ord pow syn keyword pythonBuiltin print property range repr reversed round set syn keyword pythonBuiltin setattr slice sorted staticmethod str syn keyword pythonBuiltin sum super tuple type vars zip __import__ " Python 2 only syn keyword pythonBuiltin basestring cmp execfile file syn keyword pythonBuiltin long raw_input reduce reload unichr syn keyword pythonBuiltin unicode xrange " Python 3 only syn keyword pythonBuiltin ascii bytes exec " non-essential built-in functions; Python 2 only syn keyword pythonBuiltin apply buffer coerce intern " avoid highlighting attributes as builtins syn match pythonAttribute /\.\h\w*/hs=s+1 \ contains=ALLBUT,pythonBuiltin,pythonFunction,pythonAsync \ transparent endif " From the 'Python Library Reference' class hierarchy at the bottom. " http://docs.python.org/2/library/exceptions.html " http://docs.python.org/3/library/exceptions.html if !exists("python_no_exception_highlight") " builtin base exceptions (used mostly as base classes for other exceptions) syn keyword pythonExceptions BaseException Exception syn keyword pythonExceptions ArithmeticError BufferError syn keyword pythonExceptions LookupError " builtin base exceptions removed in Python 3 syn keyword pythonExceptions EnvironmentError StandardError " builtin exceptions (actually raised) syn keyword pythonExceptions AssertionError AttributeError syn keyword pythonExceptions EOFError FloatingPointError GeneratorExit syn keyword pythonExceptions ImportError IndentationError syn keyword pythonExceptions IndexError KeyError KeyboardInterrupt syn keyword pythonExceptions MemoryError NameError NotImplementedError syn keyword pythonExceptions OSError OverflowError ReferenceError syn keyword pythonExceptions RuntimeError StopIteration SyntaxError syn keyword pythonExceptions SystemError SystemExit TabError TypeError syn keyword pythonExceptions UnboundLocalError UnicodeError syn keyword pythonExceptions UnicodeDecodeError UnicodeEncodeError syn keyword pythonExceptions UnicodeTranslateError ValueError syn keyword pythonExceptions ZeroDivisionError " builtin OS exceptions in Python 3 syn keyword pythonExceptions BlockingIOError BrokenPipeError syn keyword pythonExceptions ChildProcessError ConnectionAbortedError syn keyword pythonExceptions ConnectionError ConnectionRefusedError syn keyword pythonExceptions ConnectionResetError FileExistsError syn keyword pythonExceptions FileNotFoundError InterruptedError syn keyword pythonExceptions IsADirectoryError NotADirectoryError syn keyword pythonExceptions PermissionError ProcessLookupError syn keyword pythonExceptions RecursionError StopAsyncIteration syn keyword pythonExceptions TimeoutError " builtin exceptions deprecated/removed in Python 3 syn keyword pythonExceptions IOError VMSError WindowsError " builtin warnings syn keyword pythonExceptions BytesWarning DeprecationWarning FutureWarning syn keyword pythonExceptions ImportWarning PendingDeprecationWarning syn keyword pythonExceptions RuntimeWarning SyntaxWarning UnicodeWarning syn keyword pythonExceptions UserWarning Warning " builtin warnings in Python 3 syn keyword pythonExceptions ResourceWarning endif if exists("python_space_error_highlight") " trailing whitespace syn match pythonSpaceError display excludenl "\s\+$" " mixed tabs and spaces syn match pythonSpaceError display " \+\t" syn match pythonSpaceError display "\t\+ " endif " Do not spell doctests inside strings. " Notice that the end of a string, either ''', or """, will end the contained " doctest too. Thus, we do *not* need to have it as an end pattern. if !exists("python_no_doctest_highlight") if !exists("python_no_doctest_code_highlight") syn region pythonDoctest \ start="^\s*>>>\s" end="^\s*$" \ contained contains=ALLBUT,pythonDoctest,pythonFunction,@Spell syn region pythonDoctestValue \ start=+^\s*\%(>>>\s\|\.\.\.\s\|"""\|'''\)\@!\S\++ end="$" \ contained else syn region pythonDoctest \ start="^\s*>>>" end="^\s*$" \ contained contains=@NoSpell endif endif " Sync at the beginning of class, function, or method definition. syn sync match pythonSync grouphere NONE "^\%(def\|class\)\s\+\h\w*\s*[(:]" " The default highlight links. Can be overridden later. hi def link pythonStatement Statement hi def link pythonConditional Conditional hi def link pythonRepeat Repeat hi def link pythonOperator Operator hi def link pythonException Exception hi def link pythonInclude Include hi def link pythonAsync Statement hi def link pythonDecorator Define hi def link pythonDecoratorName Function hi def link pythonFunction Function hi def link pythonComment Comment hi def link pythonTodo Todo hi def link pythonString String hi def link pythonRawString String hi def link pythonQuotes String hi def link pythonTripleQuotes pythonQuotes hi def link pythonEscape Special if !exists("python_no_number_highlight") hi def link pythonNumber Number endif if !exists("python_no_builtin_highlight") hi def link pythonBuiltin Function endif if !exists("python_no_exception_highlight") hi def link pythonExceptions Structure endif if exists("python_space_error_highlight") hi def link pythonSpaceError Error endif if !exists("python_no_doctest_highlight") hi def link pythonDoctest Special hi def link pythonDoctestValue Define endif let b:current_syntax = "python" let &cpo = s:cpo_save unlet s:cpo_save " vim:set sw=2 sts=2 ts=8 noet: PK&]Hvim80/syntax/pcap.vimnu[" Vim syntax file " Config file: printcap " Maintainer: Lennart Schultz (defunct) " Modified by Bram " Last Change: 2003 May 11 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif "define keywords setlocal isk=@,46-57,_,-,#,=,192-255 "first all the bad guys syn match pcapBad '^.\+$' "define any line as bad syn match pcapBadword '\k\+' contained "define any sequence of keywords as bad syn match pcapBadword ':' contained "define any single : as bad syn match pcapBadword '\\' contained "define any single \ as bad "then the good boys " Boolean keywords syn match pcapKeyword contained ':\(fo\|hl\|ic\|rs\|rw\|sb\|sc\|sf\|sh\)' " Numeric Keywords syn match pcapKeyword contained ':\(br\|du\|fc\|fs\|mx\|pc\|pl\|pw\|px\|py\|xc\|xs\)#\d\+' " String Keywords syn match pcapKeyword contained ':\(af\|cf\|df\|ff\|gf\|if\|lf\|lo\|lp\|nd\|nf\|of\|rf\|rg\|rm\|rp\|sd\|st\|tf\|tr\|vf\)=\k*' " allow continuation syn match pcapEnd ':\\$' contained " syn match pcapDefineLast '^\s.\+$' contains=pcapBadword,pcapKeyword syn match pcapDefine '^\s.\+$' contains=pcapBadword,pcapKeyword,pcapEnd syn match pcapHeader '^\k[^|]\+\(|\k[^|]\+\)*:\\$' syn match pcapComment "#.*$" syn sync minlines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link pcapBad WarningMsg hi def link pcapBadword WarningMsg hi def link pcapComment Comment let b:current_syntax = "pcap" " vim: ts=8 PK&][vim80/syntax/xquery.vimnu[" Vim syntax file " Language: XQuery " Author: René Neumann " Author: Steve Spigarelli " Original Author: Jean-Marc Vanel " Last Change: mar jui 12 18:04:05 CEST 2005 " Filenames: *.xq " URL: http://jmvanel.free.fr/vim/xquery.vim " REFERENCES: " [1] http://www.w3.org/TR/xquery/ " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " - is allowed in keywords setlocal iskeyword+=- runtime syntax/xml.vim syn case match " From XQuery grammar: syn keyword xqStatement ancestor ancestor-or-self and as ascending at attribute base-uri boundary-space by case cast castable child collation construction declare default descendant descendant-or-self descending div document element else empty encoding eq every except external following following-sibling for function ge greatest gt idiv if import in inherit-namespaces instance intersect is le least let lt mod module namespace ne no of or order ordered ordering parent preceding preceding-sibling preserve return satisfies schema self some stable strip then to treat typeswitch union unordered validate variable version where xmlspace xquery yes " TODO contains clashes with vim keyword syn keyword xqFunction abs adjust-date-to-timezone adjust-date-to-timezone adjust-dateTime-to-timezone adjust-dateTime-to-timezone adjust-time-to-timezone adjust-time-to-timezone avg base-uri base-uri boolean ceiling codepoint-equal codepoints-to-string collection collection compare concat count current-date current-dateTime current-time data dateTime day-from-date day-from-dateTime days-from-duration deep-equal deep-equal default-collation distinct-values distinct-values doc doc-available document-uri empty ends-with ends-with error error error error escape-uri exactly-one exists false floor hours-from-dateTime hours-from-duration hours-from-time id id idref idref implicit-timezone in-scope-prefixes index-of index-of insert-before lang lang last local-name local-name local-name-from-QName lower-case matches matches max max min min minutes-from-dateTime minutes-from-duration minutes-from-time month-from-date month-from-dateTime months-from-duration name name namespace-uri namespace-uri namespace-uri-for-prefix namespace-uri-from-QName nilled node-name normalize-space normalize-space normalize-unicode normalize-unicode not number number one-or-more position prefix-from-QName QName remove replace replace resolve-QName resolve-uri resolve-uri reverse root root round round-half-to-even round-half-to-even seconds-from-dateTime seconds-from-duration seconds-from-time starts-with starts-with static-base-uri string string string-join string-length string-length string-to-codepoints subsequence subsequence substring substring substring-after substring-after substring-before substring-before sum sum timezone-from-date timezone-from-dateTime timezone-from-time tokenize tokenize trace translate true unordered upper-case year-from-date year-from-dateTime years-from-duration zero-or-one syn keyword xqOperator add-dayTimeDuration-to-date add-dayTimeDuration-to-dateTime add-dayTimeDuration-to-time add-dayTimeDurations add-yearMonthDuration-to-date add-yearMonthDuration-to-dateTime add-yearMonthDurations base64Binary-equal boolean-equal boolean-greater-than boolean-less-than concatenate date-equal date-greater-than date-less-than dateTime-equal dateTime-greater-than dateTime-less-than dayTimeDuration-equal dayTimeDuration-greater-than dayTimeDuration-less-than divide-dayTimeDuration divide-dayTimeDuration-by-dayTimeDuration divide-yearMonthDuration divide-yearMonthDuration-by-yearMonthDuration except gDay-equal gMonth-equal gMonthDay-equal gYear-equal gYearMonth-equal hexBinary-equal intersect is-same-node multiply-dayTimeDuration multiply-yearMonthDuration node-after node-before NOTATION-equal numeric-add numeric-divide numeric-equal numeric-greater-than numeric-integer-divide numeric-less-than numeric-mod numeric-multiply numeric-subtract numeric-unary-minus numeric-unary-plus QName-equal subtract-dates-yielding-dayTimeDuration subtract-dateTimes-yielding-dayTimeDuration subtract-dayTimeDuration-from-date subtract-dayTimeDuration-from-dateTime subtract-dayTimeDuration-from-time subtract-dayTimeDurations subtract-times subtract-yearMonthDuration-from-date subtract-yearMonthDuration-from-dateTime subtract-yearMonthDurations time-equal time-greater-than time-less-than to union yearMonthDuration-equal yearMonthDuration-greater-than yearMonthDuration-less-than syn match xqType "xs:\(\|Datatype\|primitive\|string\|boolean\|float\|double\|decimal\|duration\|dateTime\|time\|date\|gYearMonth\|gYear\|gMonthDay\|gDay\|gMonth\|hexBinary\|base64Binary\|anyURI\|QName\|NOTATION\|\|normalizedString\|token\|language\|IDREFS\|ENTITIES\|NMTOKEN\|NMTOKENS\|Name\|NCName\|ID\|IDREF\|ENTITY\|integer\|nonPositiveInteger\|negativeInteger\|long\|int\|short\|byte\|nonNegativeInteger\|unsignedLong\|unsignedInt\|unsignedShort\|unsignedByte\|positiveInteger\)" " From XPath grammar: syn keyword xqXPath some every in in satisfies if then else to div idiv mod union intersect except instance of treat castable cast eq ne lt le gt ge is child descendant attribute self descendant-or-self following-sibling following namespace parent ancestor preceding-sibling preceding ancestor-or-self void item node document-node text comment processing-instruction attribute schema-attribute schema-element " eXist extensions syn match xqExist "&=" " XQdoc syn match XQdoc contained "@\(param\|return\|author\)\>" " floating point number, with dot, optional exponent syn match xqFloat "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=" " floating point number, starting with a dot, optional exponent syn match xqFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>" " floating point number, without dot, with exponent syn match xqFloat "\d\+e[-+]\=\d\+[fl]\=\>" syn match xqNumber "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>" syn match xqNumber "\<\d\+\>" syn region xqString start=+\z(['"]\)+ skip=+\\.+ end=+\z1+ syn region xqComment start='(:' excludenl end=':)' contains=XQdoc syn match xqVariable "$\<[a-zA-Z:_][-.0-9a-zA-Z0-9:_]*\>" syn match xqSeparator ",\|;" syn region xqCode transparent contained start='{' excludenl end='}' contains=xqFunction,xqCode,xmlRegionBis,xqComment,xqStatement,xmlString,xqSeparator,xqNumber,xqVariable,xqString keepend extend syn region xmlRegionBis start=+<\z([^ /!?<>"']\+\)+ skip=++ end=++ end=+/>+ fold contains=xmlTag,xmlEndTag,xmlCdata,xmlRegionBis,xmlComment,xmlEntity,xmlProcessing,xqCode keepend extend hi def link xqNumber Number hi def link xqFloat Number hi def link xqString String hi def link xqVariable Identifier hi def link xqComment Comment hi def link xqSeparator Operator hi def link xqStatement Statement hi def link xqFunction Function hi def link xqOperator Operator hi def link xqType Type hi def link xqXPath Operator hi def link XQdoc Special hi def link xqExist Operator " override the xml highlighting "hi link xmlTag Structure "hi link xmlTagName Structure "hi link xmlEndTag Structure let b:current_syntax = "xquery" PK&]gvim80/syntax/docbksgml.vimnu[" Vim syntax file " Language: DocBook SGML " Maintainer: Johannes Zellner " Last Change: Sam, 07 Sep 2002 17:20:46 CEST let b:docbk_type="sgml" runtime syntax/docbk.vim PK&]@vim80/syntax/plm.vimnu[" Vim syntax file " Language: PL/M " Maintainer: Philippe Coulonges " Last change: 2003 May 11 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " PL/M is a case insensitive language syn case ignore syn keyword plmTodo contained TODO FIXME XXX " String syn region plmString start=+'+ end=+'+ syn match plmOperator "[@=\+\-\*\/\<\>]" syn match plmIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>" syn match plmDelimiter "[();,]" syn region plmPreProc start="^\s*\$\s*" skip="\\$" end="$" " FIXME : No Number support for floats, as I'm working on an embedded " project that doesn't use any. syn match plmNumber "-\=\<\d\+\>" syn match plmNumber "\<[0-9a-fA-F]*[hH]*\>" " If you don't like tabs "syn match plmShowTab "\t" "syn match plmShowTabc "\t" "when wanted, highlight trailing white space if exists("c_space_errors") syn match plmSpaceError "\s*$" syn match plmSpaceError " \+\t"me=e-1 endif " " Use the same control variable as C language for I believe " users will want the same behavior if exists("c_comment_strings") " FIXME : don't work fine with c_comment_strings set, " which I don't care as I don't use " A comment can contain plmString, plmCharacter and plmNumber. " But a "*/" inside a plmString in a plmComment DOES end the comment! So we " need to use a special type of plmString: plmCommentString, which also ends on " "*/", and sees a "*" at the start of the line as comment again. syntax match plmCommentSkip contained "^\s*\*\($\|\s\+\)" syntax region plmCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=plmSpecial,plmCommentSkip syntax region plmComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=plmSpecial syntax region plmComment start="/\*" end="\*/" contains=plmTodo,plmCommentString,plmCharacter,plmNumber,plmFloat,plmSpaceError syntax match plmComment "//.*" contains=plmTodo,plmComment2String,plmCharacter,plmNumber,plmSpaceError else syn region plmComment start="/\*" end="\*/" contains=plmTodo,plmSpaceError syn match plmComment "//.*" contains=plmTodo,plmSpaceError endif syntax match plmCommentError "\*/" syn keyword plmReserved ADDRESS AND AT BASED BY BYTE CALL CASE syn keyword plmReserved DATA DECLARE DISABLE DO DWORD syn keyword plmReserved ELSE ENABLE END EOF EXTERNAL syn keyword plmReserved GO GOTO HALT IF INITIAL INTEGER INTERRUPT syn keyword plmReserved LABEL LITERALLY MINUS MOD NOT OR syn keyword plmReserved PLUS POINTER PROCEDURE PUBLIC syn keyword plmReserved REAL REENTRANT RETURN SELECTOR STRUCTURE syn keyword plmReserved THEN TO WHILE WORD XOR syn keyword plm386Reserved CHARINT HWORD LONGINT OFFSET QWORD SHORTINT syn keyword plmBuiltIn ABS ADJUSTRPL BLOCKINPUT BLOCKINWORD BLOCKOUTPUT syn keyword plmBuiltIn BLOCKOUTWORD BUILPTR CARRY CAUSEINTERRUPT CMPB syn keyword plmBuiltIn CMPW DEC DOUBLE FINDB FINDRB FINDRW FINDW FIX syn keyword plmBuiltIn FLAGS FLOAT GETREALERROR HIGH IABS INITREALMATHUNIT syn keyword plmBuiltIn INPUT INT INWORD LAST LOCKSET LENGTH LOW MOVB MOVE syn keyword plmBuiltIn MOVRB MOVRW MOVW NIL OUTPUT OUTWORD RESTOREREALSTATUS syn keyword plmBuiltIn ROL ROR SAL SAVEREALSTATUS SCL SCR SELECTOROF SETB syn keyword plmBuiltIn SETREALMODE SETW SHL SHR SIGN SIGNED SIZE SKIPB syn keyword plmBuiltIn SKIPRB SKIPRW SKIPW STACKBASE STACKPTR TIME SIZE syn keyword plmBuiltIn UNSIGN XLAT ZERO syn keyword plm386BuiltIn INTERRUPT SETINTERRUPT syn keyword plm286BuiltIn CLEARTASKSWITCHEDFLAG GETACCESSRIGHTS syn keyword plm286BuiltIn GETSEGMENTLIMIT LOCALTABLE MACHINESTATUS syn keyword plm286BuiltIn OFFSETOF PARITY RESTOREGLOBALTABLE syn keyword plm286BuiltIn RESTOREINTERRUPTTABLE SAVEGLOBALTABLE syn keyword plm286BuiltIn SAVEINTERRUPTTABLE SEGMENTREADABLE syn keyword plm286BuiltIn SEGMENTWRITABLE TASKREGISTER WAITFORINTERRUPT syn keyword plm386BuiltIn CONTROLREGISTER DEBUGREGISTER FINDHW syn keyword plm386BuiltIn FINDRHW INHWORD MOVBIT MOVRBIT MOVHW MOVRHW syn keyword plm386BuiltIn OUTHWORD SCANBIT SCANRBIT SETHW SHLD SHRD syn keyword plm386BuiltIn SKIPHW SKIPRHW TESTREGISTER syn keyword plm386w16BuiltIn BLOCKINDWORD BLOCKOUTDWORD CMPD FINDD syn keyword plm386w16BuiltIn FINDRD INDWORD MOVD MOVRD OUTDWORD syn keyword plm386w16BuiltIn SETD SKIPD SKIPRD syn sync lines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later " hi def link plmLabel Label " hi def link plmConditional Conditional " hi def link plmRepeat Repeat hi def link plmTodo Todo hi def link plmNumber Number hi def link plmOperator Operator hi def link plmDelimiter Operator "hi def link plmShowTab Error "hi def link plmShowTabc Error hi def link plmIdentifier Identifier hi def link plmBuiltIn Statement hi def link plm286BuiltIn Statement hi def link plm386BuiltIn Statement hi def link plm386w16BuiltIn Statement hi def link plmReserved Statement hi def link plm386Reserved Statement hi def link plmPreProc PreProc hi def link plmCommentError plmError hi def link plmCommentString plmString hi def link plmComment2String plmString hi def link plmCommentSkip plmComment hi def link plmString String hi def link plmComment Comment let b:current_syntax = "plm" " vim: ts=8 sw=2 PK&]u1 \\vim80/syntax/csdl.vimnu[" Vim syntax file " Language: Curated Stream Definition Language (CSDL) " Maintainer: Jacek Artymiak " Latest Revision: 25 February 2013 if exists("b:current_syntax") finish endif setlocal iskeyword=.,@,48-57,_,192-255 syn case ignore syn match csdlKeyword "tag " syn match csdlKeyword "stream " syn match csdlKeyword "return " syn keyword csdlOperator contains syn match csdlOperator "cs contains" syn keyword csdlOperator substr syn match csdlOperator "cs substr" syn keyword csdlOperator contains_any syn match csdlOperator "cs contains_any" syn keyword csdlOperator any syn match csdlOperator "cs any" syn keyword csdlOperator contains_near syn match csdlOperator "cs contains_near" syn keyword csdlOperator exists syn keyword csdlOperator in syn keyword csdlOperator url_in syn match csdlOperator "==" syn match csdlOperator "!=" syn match csdlOperator "cs ==" syn match csdlOperator "cs !=" syn match csdlOperator ">" syn match csdlOperator ">=" syn match csdlOperator "<" syn match csdlOperator "<=" syn keyword csdlOperator regex_partial syn keyword csdlOperator regex_exact syn keyword csdlOperator geo_box syn keyword csdlOperator geo_radius syn keyword csdlOperator geo_polygon syn keyword csdlLogicalOperator and syn keyword csdlLogicalOperator or syn keyword csdlLogicalOperator not syn match csdlTarget 'reddit\.title' syn match csdlTarget 'reddit\.content' syn match csdlTarget 'reddit\.contenttype' syn match csdlTarget 'reddit\.link' syn match csdlTarget 'reddit\.author\.name' syn match csdlTarget 'reddit\.author\.link' syn match csdlTarget 'reddit\.type' syn match csdlTarget 'reddit\.thread' syn match csdlTarget 'interaction\.type' syn match csdlTarget 'interaction\.title' syn match csdlTarget 'interaction\.content' syn match csdlTarget 'interaction\.source' syn match csdlTarget 'interaction\.geo' syn match csdlTarget 'interaction\.link' syn match csdlTarget 'interaction\.author\.username' syn match csdlTarget 'interaction\.author\.name' syn match csdlTarget 'interaction\.author\.id' syn match csdlTarget 'interaction\.author\.avatar' syn match csdlTarget 'interaction\.author\.link' syn match csdlTarget 'interaction\.sample' syn match csdlTarget 'links\.title' syn match csdlTarget 'links\.url' syn keyword csdlTarget links.normalized_url syn match csdlTarget 'links\.hops' syn match csdlTarget 'links\.code' syn match csdlTarget 'links\.domain' syn keyword csdlTarget links.retweet_count syn match csdlTarget 'links\.age' syn keyword csdlTarget links.meta.content_type syn match csdlTarget 'links\.meta\.charset' syn match csdlTarget 'links\.meta\.lang' syn match csdlTarget 'links\.meta\.keywords' syn match csdlTarget 'links\.meta\.description' syn match csdlTarget 'links\.meta\.newskeywords' syn match csdlTarget 'links\.meta\.standout' syn match csdlTarget 'links\.meta\.opengraph\.type' syn match csdlTarget 'links\.meta\.opengraph\.title' syn match csdlTarget 'links\.meta\.opengraph\.image' syn match csdlTarget 'links\.meta\.opengraph\.url' syn match csdlTarget 'links\.meta\.opengraph\.description' syn keyword csdlTarget links.meta.opengraph.site_name syn match csdlTarget 'links\.meta\.opengraph\.email' syn keyword csdlTarget links.meta.opengraph.phone_number syn keyword csdlTarget links.meta.opengraph.fax_number syn match csdlTarget 'links\.meta\.opengraph\.geo' syn keyword csdlTarget links.meta.opengraph.street_address syn match csdlTarget 'links\.meta\.opengraph\.locality' syn match csdlTarget 'links\.meta\.opengraph\.region' syn keyword csdlTarget links.meta.opengraph.postal_code syn match csdlTarget 'links\.meta\.opengraph\.activity' syn match csdlTarget 'links\.meta\.opengraph\.sport' syn match csdlTarget 'links\.meta\.opengraph\.bar' syn match csdlTarget 'links\.meta\.opengraph\.company' syn match csdlTarget 'links\.meta\.opengraph\.cafe' syn match csdlTarget 'links\.meta\.opengraph\.hotel' syn match csdlTarget 'links\.meta\.opengraph\.restaurant' syn match csdlTarget 'links\.meta\.opengraph\.cause' syn keyword csdlTarget links.meta.opengraph.sports_league syn keyword csdlTarget links.meta.opengraph.sports_team syn match csdlTarget 'links\.meta\.opengraph\.band' syn match csdlTarget 'links\.meta\.opengraph\.government' syn keyword csdlTarget links.meta.opengraph.non_profit syn match csdlTarget 'links\.meta\.opengraph\.school' syn match csdlTarget 'links\.meta\.opengraph\.university' syn match csdlTarget 'links\.meta\.opengraph\.actor' syn match csdlTarget 'links\.meta\.opengraph\.athlete' syn match csdlTarget 'links\.meta\.opengraph\.author' syn match csdlTarget 'links\.meta\.opengraph\.director' syn match csdlTarget 'links\.meta\.opengraph\.musician' syn match csdlTarget 'links\.meta\.opengraph\.politician' syn keyword csdlTarget links.meta.opengraph.public_figure syn match csdlTarget 'links\.meta\.opengraph\.city' syn match csdlTarget 'links\.meta\.opengraph\.country' syn match csdlTarget 'links\.meta\.opengraph\.landmark' syn keyword csdlTarget links.meta.opengraph.state_province syn match csdlTarget 'links\.meta\.opengraph\.album' syn match csdlTarget 'links\.meta\.opengraph\.book' syn match csdlTarget 'links\.meta\.opengraph\.drink' syn match csdlTarget 'links\.meta\.opengraph\.food' syn match csdlTarget 'links\.meta\.opengraph\.game' syn match csdlTarget 'links\.meta\.opengraph\.movie' syn match csdlTarget 'links\.meta\.opengraph\.product' syn match csdlTarget 'links\.meta\.opengraph\.song' syn keyword csdlTarget links.meta.opengraph.tv_show syn match csdlTarget 'links\.meta\.opengraph\.blog' syn match csdlTarget 'links\.meta\.opengraph\.website' syn match csdlTarget 'links\.meta\.opengraph\.article' syn match csdlTarget 'links\.meta\.twitter\.card' syn match csdlTarget 'links\.meta\.twitter\.site' syn keyword csdlTarget links.meta.twitter.site_id syn match csdlTarget 'links\.meta\.twitter\.creator' syn keyword csdlTarget links.meta.twitter.creator_id syn match csdlTarget 'links\.meta\.twitter\.url' syn match csdlTarget 'links\.meta\.twitter\.description' syn match csdlTarget 'links\.meta\.twitter\.title' syn match csdlTarget 'links\.meta\.twitter\.image' syn keyword csdlTarget links.meta.twitter.image_width syn keyword csdlTarget links.meta.twitter.image_height syn match csdlTarget 'links\.meta\.twitter\.player' syn keyword csdlTarget links.meta.twitter.player_width syn keyword csdlTarget links.meta.twitter.player_height syn keyword csdlTarget links.meta.twitter.player_stream syn keyword csdlTarget links.meta.twitter.player_stream_content_type syn match csdlTarget 'myspace\.link' syn match csdlTarget 'myspace\.content' syn match csdlTarget 'myspace\.contenttype' syn match csdlTarget 'myspace\.category' syn match csdlTarget 'myspace\.author\.username' syn match csdlTarget 'myspace\.author\.name' syn match csdlTarget 'myspace\.author\.id' syn match csdlTarget 'myspace\.author\.link' syn match csdlTarget 'myspace\.author\.avatar' syn match csdlTarget 'myspace\.geo' syn match csdlTarget 'myspace\.verb' syn match csdlTarget 'newscred\.type' syn match csdlTarget 'newscred\.article\.domain' syn match csdlTarget 'newscred\.video\.domain' syn match csdlTarget 'newscred\.article\.topics' syn match csdlTarget 'newscred\.video\.topics' syn match csdlTarget 'newscred\.article\.category' syn match csdlTarget 'newscred\.video\.category' syn match csdlTarget 'newscred\.article\.title' syn match csdlTarget 'newscred\.video\.title' syn match csdlTarget 'newscred\.article\.content' syn match csdlTarget 'newscred\.article\.fulltext' syn match csdlTarget 'newscred\.article\.authors' syn match csdlTarget 'newscred\.image\.caption' syn match csdlTarget 'newscred\.video\.caption' syn match csdlTarget 'newscred\.image\.attribution\.text' syn match csdlTarget 'newscred\.image\.attribution\.link' syn match csdlTarget 'newscred\.source\.name' syn match csdlTarget 'newscred\.source\.link' syn match csdlTarget 'newscred\.source\.domain' syn keyword csdlTarget newscred.source.media_type syn keyword csdlTarget newscred.source.company_type syn match csdlTarget 'newscred\.source\.country' syn match csdlTarget 'newscred\.source\.circulation' syn match csdlTarget 'newscred\.source\.founded' syn match csdlTarget 'imdb\.title' syn match csdlTarget 'imdb\.content' syn match csdlTarget 'imdb\.contenttype' syn match csdlTarget 'imdb\.link' syn match csdlTarget 'imdb\.author\.name' syn match csdlTarget 'imdb\.author\.link' syn match csdlTarget 'imdb\.type' syn match csdlTarget 'imdb\.thread' syn match csdlTarget 'amazon\.title' syn match csdlTarget 'amazon\.content' syn match csdlTarget 'amazon\.contenttype' syn match csdlTarget 'amazon\.link' syn match csdlTarget 'amazon\.author\.name' syn match csdlTarget 'amazon\.author\.link' syn match csdlTarget 'amazon\.type' syn match csdlTarget 'amazon\.thread' syn match csdlTarget 'salience\.content\.sentiment' syn match csdlTarget 'salience\.content\.topics' syn match csdlTarget 'salience\.title\.sentiment' syn match csdlTarget 'salience\.title\.topics' syn match csdlTarget 'salience\.content\.entities\.name' syn match csdlTarget 'salience\.content\.entities\.type' syn match csdlTarget 'salience\.title\.entities\.name' syn match csdlTarget 'salience\.title\.entities\.type' syn match csdlTarget 'klout\.score' syn match csdlTarget 'klout\.network' syn match csdlTarget 'klout\.amplification' syn keyword csdlTarget klout.true_reach syn match csdlTarget 'klout\.topics' syn match csdlTarget 'wikipedia\.author\.talk' syn match csdlTarget 'wikipedia\.author\.contributions' syn match csdlTarget 'wikipedia\.author\.username' syn match csdlTarget 'wikipedia\.body' syn match csdlTarget 'wikipedia\.title' syn match csdlTarget 'wikipedia\.images' syn match csdlTarget 'wikipedia\.categories' syn match csdlTarget 'wikipedia\.externallinks' syn match csdlTarget 'wikipedia\.ns' syn match csdlTarget 'wikipedia\.namespace' syn match csdlTarget 'wikipedia\.pageid' syn match csdlTarget 'wikipedia\.parentid' syn match csdlTarget 'wikipedia\.oldlen' syn match csdlTarget 'wikipedia\.newlen' syn match csdlTarget 'wikipedia\.changetype' syn match csdlTarget 'wikipedia\.diff\.from' syn match csdlTarget 'wikipedia\.diff\.to' syn match csdlTarget 'wikipedia\.diff\.changes\.added' syn match csdlTarget 'wikipedia\.diff\.changes\.removed' syn keyword csdlTarget demographic.twitter_activity syn match csdlTarget 'demographic\.location\.country' syn keyword csdlTarget demographic.location.us_state syn match csdlTarget 'demographic\.location\.city' syn match csdlTarget 'demographic\.type' syn match csdlTarget 'demographic\.sex' syn match csdlTarget 'demographic\.status\.relationship' syn match csdlTarget 'demographic\.status\.work' syn keyword csdlTarget demographic.likes_and_interests syn keyword csdlTarget demographic.first_language syn match csdlTarget 'demographic\.professions' syn match csdlTarget 'demographic\.services' syn keyword csdlTarget demographic.large_accounts_followed syn keyword csdlTarget demographic.age_range.start syn keyword csdlTarget demographic.age_range.end syn match csdlTarget 'demographic\.income\.start' syn match csdlTarget 'demographic\.income\.end' syn keyword csdlTarget demographic.main_street.dressed_by syn keyword csdlTarget demographic.main_street.shop_at syn keyword csdlTarget demographic.main_street.eat_and_drink_at syn match csdlTarget 'demographic\.accounts\.categories' syn match csdlTarget 'tumblr\.activity' syn match csdlTarget 'tumblr\.source\.blogid' syn match csdlTarget 'tumblr\.dest\.blogid' syn match csdlTarget 'tumblr\.dest\.postid' syn match csdlTarget 'tumblr\.root\.blogid' syn match csdlTarget 'tumblr\.root\.postid' syn match csdlTarget 'tumblr\.blogid' syn keyword csdlTarget tumblr.blog_name syn match csdlTarget 'tumblr\.type' syn match csdlTarget 'tumblr\.title' syn match csdlTarget 'tumblr\.body' syn match csdlTarget 'tumblr\.text' syn match csdlTarget 'tumblr\.tags' syn keyword csdlTarget tumblr.track_name syn match csdlTarget 'tumblr\.album' syn match csdlTarget 'tumblr\.link' syn match csdlTarget 'tumblr\.meta\.url' syn match csdlTarget 'tumblr\.meta\.type' syn match csdlTarget 'tumblr\.meta\.description' syn keyword csdlTarget tumblr.meta.likes_local syn keyword csdlTarget tumblr.meta.likes_global syn keyword csdlTarget tumblr.meta.reblogged_global syn match csdlTarget 'demographic\.gender' syn match csdlTarget 'flickr\.title' syn match csdlTarget 'flickr\.content' syn match csdlTarget 'flickr\.contenttype' syn match csdlTarget 'flickr\.link' syn match csdlTarget 'flickr\.author\.name' syn match csdlTarget 'flickr\.author\.link' syn match csdlTarget 'flickr\.author\.username' syn match csdlTarget 'flickr\.type' syn match csdlTarget 'flickr\.thread' syn match csdlTarget 'twitter\.text' syn match csdlTarget 'twitter\.source' syn match csdlTarget 'twitter\.mentions' syn keyword csdlTarget twitter.mention_ids syn match csdlTarget 'twitter\.links' syn match csdlTarget 'twitter\.domains' syn keyword csdlTarget twitter.in_reply_to_screen_name syn keyword csdlTarget twitter.in_reply_to_user_id syn keyword csdlTarget twitter.in_reply_to_status_id syn keyword csdlTarget twitter.filter_level syn match csdlTarget 'twitter\.lang' syn match csdlTarget 'twitter\.geo' syn match csdlTarget 'twitter\.user\.description' syn match csdlTarget 'twitter\.user\.location' syn keyword csdlTarget twitter.user.statuses_count syn keyword csdlTarget twitter.user.followers_count syn keyword csdlTarget twitter.user.follower_ratio syn keyword csdlTarget twitter.user.profile_age syn keyword csdlTarget twitter.user.friends_count syn keyword csdlTarget twitter.user.screen_name syn match csdlTarget 'twitter\.user\.lang' syn keyword csdlTarget twitter.user.time_zone syn match csdlTarget 'twitter\.user\.name' syn match csdlTarget 'twitter\.user\.id' syn keyword csdlTarget twitter.user.listed_count syn match csdlTarget 'twitter\.user\.url' syn match csdlTarget 'twitter\.user\.verified' syn keyword csdlTarget twitter.place.place_type syn match csdlTarget 'twitter\.place\.country' syn keyword csdlTarget twitter.place.country_code syn keyword csdlTarget twitter.place.full_name syn match csdlTarget 'twitter\.place\.name' syn match csdlTarget 'twitter\.place\.url' syn match csdlTarget 'twitter\.place\.attributes\.locality' syn match csdlTarget 'twitter\.place\.attributes\.region' syn keyword csdlTarget twitter.place.attributes.street_address syn match csdlTarget 'twitter\.status' syn match csdlTarget 'twitter\.retweet\.text' syn match csdlTarget 'twitter\.retweet\.elapsed' syn match csdlTarget 'twitter\.retweet\.source' syn keyword csdlTarget twitter.retweet.filter_level syn match csdlTarget 'twitter\.retweet\.lang' syn match csdlTarget 'twitter\.retweet\.user\.description' syn match csdlTarget 'twitter\.retweet\.user\.location' syn keyword csdlTarget twitter.retweet.user.statuses_count syn keyword csdlTarget twitter.retweet.user.followers_count syn keyword csdlTarget twitter.retweet.user.follower_ratio syn keyword csdlTarget twitter.retweet.user.profile_age syn keyword csdlTarget twitter.retweet.user.friends_count syn keyword csdlTarget twitter.retweet.user.screen_name syn match csdlTarget 'twitter\.retweet\.user\.lang' syn keyword csdlTarget twitter.retweet.user.time_zone syn match csdlTarget 'twitter\.retweet\.user\.name' syn match csdlTarget 'twitter\.retweet\.user\.id' syn keyword csdlTarget twitter.retweet.user.listed_count syn match csdlTarget 'twitter\.retweet\.user\.url' syn match csdlTarget 'twitter\.retweet\.user\.verified' syn match csdlTarget 'twitter\.retweeted\.id' syn match csdlTarget 'twitter\.retweeted\.source' syn keyword csdlTarget twitter.retweeted.in_reply_to_screen_name syn keyword csdlTarget twitter.retweeted.in_reply_to_user_id_str syn keyword csdlTarget twitter.retweeted.in_reply_to_status_id syn match csdlTarget 'twitter\.retweet\.count' syn match csdlTarget 'twitter\.retweet\.mentions' syn keyword csdlTarget twitter.retweet.mention_ids syn match csdlTarget 'twitter\.retweet\.links' syn match csdlTarget 'twitter\.retweet\.domains' syn match csdlTarget 'twitter\.retweeted\.user\.description' syn match csdlTarget 'twitter\.retweeted\.user\.location' syn keyword csdlTarget twitter.retweeted.user.statuses_count syn keyword csdlTarget twitter.retweeted.user.followers_count syn keyword csdlTarget twitter.retweeted.user.follower_ratio syn keyword csdlTarget twitter.retweeted.user.profile_age syn keyword csdlTarget twitter.retweeted.user.friends_count syn keyword csdlTarget twitter.retweeted.user.screen_name syn match csdlTarget 'twitter\.retweeted\.user\.lang' syn keyword csdlTarget twitter.retweeted.user.time_zone syn match csdlTarget 'twitter\.retweeted\.user\.name' syn match csdlTarget 'twitter\.retweeted\.user\.id' syn keyword csdlTarget twitter.retweeted.user.listed_count syn match csdlTarget 'twitter\.retweeted\.user\.url' syn match csdlTarget 'twitter\.retweeted\.user\.verified' syn match csdlTarget 'twitter\.retweeted\.geo' syn keyword csdlTarget twitter.retweeted.place.place_type syn match csdlTarget 'twitter\.retweeted\.place\.country' syn keyword csdlTarget twitter.retweeted.place.country_code syn keyword csdlTarget twitter.retweeted.place.full_name syn match csdlTarget 'twitter\.retweeted\.place\.name' syn match csdlTarget 'twitter\.retweeted\.place\.url' syn match csdlTarget 'twitter\.retweeted\.place\.attributes' syn match csdlTarget 'twitter\.hashtags' syn match csdlTarget 'twitter\.retweet\.hashtags' syn match csdlTarget 'twitter\.media\.type' syn keyword csdlTarget twitter.media.media_url syn keyword csdlTarget twitter.media.display_url syn match csdlTarget 'twitter\.retweet\.media\.type' syn keyword csdlTarget twitter.retweet.media.media_url syn keyword csdlTarget twitter.retweet.media.display_url syn match csdlTarget 'blog\.title' syn match csdlTarget 'blog\.content' syn match csdlTarget 'blog\.contenttype' syn match csdlTarget 'blog\.link' syn match csdlTarget 'blog\.domain' syn match csdlTarget 'blog\.author\.name' syn match csdlTarget 'blog\.author\.link' syn match csdlTarget 'blog\.author\.avatar' syn match csdlTarget 'blog\.author\.username' syn match csdlTarget 'blog\.type' syn match csdlTarget 'blog\.post\.link' syn match csdlTarget 'blog\.post\.title' syn match csdlTarget 'facebook\.author\.name' syn match csdlTarget 'facebook\.author\.link' syn match csdlTarget 'facebook\.author\.id' syn match csdlTarget 'facebook\.author\.avatar' syn match csdlTarget 'facebook\.message' syn match csdlTarget 'facebook\.description' syn match csdlTarget 'facebook\.caption' syn match csdlTarget 'facebook\.type' syn match csdlTarget 'facebook\.application' syn match csdlTarget 'facebook\.source' syn match csdlTarget 'facebook\.link' syn match csdlTarget 'facebook\.name' syn match csdlTarget 'facebook\.to\.names' syn match csdlTarget 'facebook\.to\.ids' syn match csdlTarget 'facebook\.og\.title' syn match csdlTarget 'facebook\.og\.location' syn match csdlTarget 'facebook\.og\.photos' syn match csdlTarget 'facebook\.og\.by' syn match csdlTarget 'facebook\.og\.description' syn match csdlTarget 'facebook\.og\.type' syn match csdlTarget 'facebook\.og\.length' syn match csdlTarget 'facebook\.likes\.count' syn match csdlTarget 'facebook\.likes\.names' syn match csdlTarget 'facebook\.likes\.ids' syn match csdlTarget 'topix\.title' syn match csdlTarget 'topix\.content' syn match csdlTarget 'topix\.contenttype' syn match csdlTarget 'topix\.link' syn match csdlTarget 'topix\.author\.name' syn match csdlTarget 'topix\.type' syn match csdlTarget 'topix\.thread' syn match csdlTarget 'topix\.author\.location' syn match csdlTarget 'bitly\.user\.agent' syn keyword csdlTarget bitly.url_hash syn match csdlTarget 'bitly\.share\.hash' syn match csdlTarget 'bitly\.cname' syn keyword csdlTarget bitly.referring_url syn keyword csdlTarget bitly.referring_domain syn match csdlTarget 'bitly\.url' syn match csdlTarget 'bitly\.domain' syn keyword csdlTarget bitly.country_code syn keyword csdlTarget bitly.geo_region_code syn match csdlTarget 'bitly\.country' syn keyword csdlTarget bitly.geo_region syn keyword csdlTarget bitly.geo_city syn match csdlTarget 'bitly\.geo' syn match csdlTarget 'bitly\.timezone' syn match csdlTarget 'trends\.type' syn match csdlTarget 'trends\.content' syn match csdlTarget 'trends\.source' syn match csdlTarget 'board\.title' syn match csdlTarget 'board\.content' syn match csdlTarget 'board\.contenttype' syn match csdlTarget 'board\.link' syn match csdlTarget 'board\.domain' syn match csdlTarget 'board\.author\.name' syn match csdlTarget 'board\.author\.link' syn match csdlTarget 'board\.author\.avatar' syn match csdlTarget 'board\.author\.username' syn match csdlTarget 'board\.type' syn match csdlTarget 'board\.thread' syn match csdlTarget 'board\.author\.location' syn match csdlTarget 'board\.author\.signature' syn match csdlTarget 'board\.author\.registered' syn match csdlTarget 'board\.author\.age' syn match csdlTarget 'board\.author\.gender' syn match csdlTarget 'video\.title' syn match csdlTarget 'video\.content' syn match csdlTarget 'video\.contenttype' syn match csdlTarget 'video\.domain' syn match csdlTarget 'video\.author\.name' syn match csdlTarget 'video\.author\.link' syn match csdlTarget 'video\.author\.avatar' syn match csdlTarget 'video\.author\.username' syn match csdlTarget 'video\.type' syn match csdlTarget 'video\.videolink' syn match csdlTarget 'video\.commentslink' syn match csdlTarget 'video\.duration' syn match csdlTarget 'video\.thumbnail' syn match csdlTarget 'video\.category' syn match csdlTarget 'video\.tags' syn match csdlTarget '2ch\.title' syn match csdlTarget '2ch\.content' syn match csdlTarget '2ch\.contenttype' syn match csdlTarget '2ch\.link' syn match csdlTarget '2ch\.author\.name' syn match csdlTarget '2ch\.type' syn match csdlTarget '2ch\.thread' syn match csdlTarget 'dailymotion\.title' syn match csdlTarget 'dailymotion\.content' syn match csdlTarget 'dailymotion\.contenttype' syn match csdlTarget 'dailymotion\.author\.link' syn match csdlTarget 'dailymotion\.author\.username' syn match csdlTarget 'dailymotion\.videolink' syn match csdlTarget 'dailymotion\.duration' syn match csdlTarget 'dailymotion\.thumbnail' syn match csdlTarget 'dailymotion\.category' syn match csdlTarget 'dailymotion\.tags' syn match csdlTarget 'language\.tag' syn match csdlTarget 'language\.confidence' syn match csdlTarget 'digg\.type' syn match csdlTarget 'digg\.user\.name' syn match csdlTarget 'digg\.user\.fullname' syn match csdlTarget 'digg\.user\.registered' syn match csdlTarget 'digg\.user\.profileviews' syn match csdlTarget 'digg\.user\.icon' syn match csdlTarget 'digg\.user\.links' syn match csdlTarget 'digg\.item\.status' syn match csdlTarget 'digg\.item\.description' syn match csdlTarget 'digg\.item\.title' syn match csdlTarget 'digg\.item\.diggs' syn match csdlTarget 'digg\.item\.comments' syn match csdlTarget 'digg\.item\.topic' syn match csdlTarget 'digg\.comment\.buries' syn match csdlTarget 'digg\.comment\.diggs' syn match csdlTarget 'digg\.comment\.text' syn match csdlTarget 'youtube\.title' syn match csdlTarget 'youtube\.content' syn match csdlTarget 'youtube\.contenttype' syn match csdlTarget 'youtube\.author\.name' syn match csdlTarget 'youtube\.author\.link' syn match csdlTarget 'youtube\.type' syn match csdlTarget 'youtube\.videolink' syn match csdlTarget 'youtube\.commentslink' syn match csdlTarget 'youtube\.duration' syn match csdlTarget 'youtube\.thumbnail' syn match csdlTarget 'youtube\.category' syn match csdlTarget 'youtube\.tags' syn match csdlComment "^\/\/.*$" syn match csdlComment "^\/\*.*$" syn match csdlComment "^.*\*\/$" highlight link csdlKeyword Statement highlight link csdlOperator Operator highlight link csdlLogicalOperator Operator highlight link csdlTarget Constant highlight link csdlComment Comment " let b:current_syntax = "csdl" PK&]Y{5{5vim80/syntax/neomuttrc.vimnu[" Vim syntax file " Language: NeoMutt setup files " Maintainer: Guillaume Brogi " Last Change: 2018-03-25 " Original version based on syntax/muttrc.vim " This file covers NeoMutt 2018-03-23 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " Set the keyword characters setlocal isk=@,48-57,_,- " handling optional variables syntax match muttrcComment "^# .*$" contains=@Spell syntax match muttrcComment "^#[^ ].*$" syntax match muttrcComment "^#$" syntax match muttrcComment "[^\\]#.*$"lc=1 " Escape sequences (back-tick and pipe goes here too) syntax match muttrcEscape +\\[#tnr"'Cc ]+ syntax match muttrcEscape +[`|]+ syntax match muttrcEscape +\\$+ " The variables takes the following arguments "syn match muttrcString contained "=\s*[^ #"'`]\+"lc=1 contains=muttrcEscape syntax region muttrcString contained keepend start=+"+ms=e skip=+\\"+ end=+"+ contains=muttrcEscape,muttrcCommand,muttrcAction,muttrcShellString syntax region muttrcString contained keepend start=+'+ms=e skip=+\\'+ end=+'+ contains=muttrcEscape,muttrcCommand,muttrcAction syntax match muttrcStringNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcString,muttrcStringNL syntax region muttrcShellString matchgroup=muttrcEscape keepend start=+`+ skip=+\\`+ end=+`+ contains=muttrcVarStr,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcCommand,muttrcVarDeprecatedStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad syntax match muttrcRXChars contained /[^\\][][.*?+]\+/hs=s+1 syntax match muttrcRXChars contained /[][|()][.*?+]*/ syntax match muttrcRXChars contained /['"]^/ms=s+1 syntax match muttrcRXChars contained /$['"]/me=e-1 syntax match muttrcRXChars contained /\\/ " Why does muttrcRXString2 work with one \ when muttrcRXString requires two? syntax region muttrcRXString contained skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcRXChars syntax region muttrcRXString contained skipwhite start=+"+ skip=+\\"+ end=+"+ contains=muttrcRXChars syntax region muttrcRXString contained skipwhite start=+[^ "'^]+ skip=+\\\s+ end=+\s+re=e-1 contains=muttrcRXChars " For some reason, skip refuses to match backslashes here... syntax region muttrcRXString contained matchgroup=muttrcRXChars skipwhite start=+\^+ end=+[^\\]\s+re=e-1 contains=muttrcRXChars syntax region muttrcRXString contained matchgroup=muttrcRXChars skipwhite start=+\^+ end=+$\s+ contains=muttrcRXChars syntax region muttrcRXString2 contained skipwhite start=+'+ skip=+\'+ end=+'+ contains=muttrcRXChars syntax region muttrcRXString2 contained skipwhite start=+"+ skip=+\"+ end=+"+ contains=muttrcRXChars " these must be kept synchronized with muttrcRXString, but are intended for " muttrcRXHooks syntax region muttrcRXHookString contained keepend skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL syntax region muttrcRXHookString contained keepend skipwhite start=+"+ skip=+\\"+ end=+"+ contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL syntax region muttrcRXHookString contained keepend skipwhite start=+[^ "'^]+ skip=+\\\s+ end=+\s+re=e-1 contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL syntax region muttrcRXHookString contained keepend skipwhite start=+\^+ end=+[^\\]\s+re=e-1 contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL syntax region muttrcRXHookString contained keepend matchgroup=muttrcRXChars skipwhite start=+\^+ end=+$\s+ contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL syntax match muttrcRXHookStringNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcRXHookString,muttrcRXHookStringNL " these are exclusively for args lists (e.g. -rx pat pat pat ...) syntax region muttrcRXPat contained keepend skipwhite start=+'+ skip=+\\'+ end=+'\s*+ contains=muttrcRXString nextgroup=muttrcRXPat syntax region muttrcRXPat contained keepend skipwhite start=+"+ skip=+\\"+ end=+"\s*+ contains=muttrcRXString nextgroup=muttrcRXPat syntax match muttrcRXPat contained /[^-'"#!]\S\+/ skipwhite contains=muttrcRXChars nextgroup=muttrcRXPat syntax match muttrcRXDef contained "-rx\s\+" skipwhite nextgroup=muttrcRXPat syntax match muttrcSpecial +\(['"]\)!\1+ syntax match muttrcSetStrAssignment contained skipwhite /=\s*\%(\\\?\$\)\?[0-9A-Za-z_-]\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable syntax region muttrcSetStrAssignment contained skipwhite keepend start=+=\s*"+hs=s+1 end=+"+ skip=+\\"+ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcString syntax region muttrcSetStrAssignment contained skipwhite keepend start=+=\s*'+hs=s+1 end=+'+ skip=+\\'+ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcString syntax match muttrcSetBoolAssignment contained skipwhite /=\s*\\\?\$\w\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable syntax match muttrcSetBoolAssignment contained skipwhite /=\s*\%(yes\|no\)/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetBoolAssignment contained skipwhite /=\s*"\%(yes\|no\)"/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetBoolAssignment contained skipwhite /=\s*'\%(yes\|no\)'/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetQuadAssignment contained skipwhite /=\s*\\\?\$\w\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable syntax match muttrcSetQuadAssignment contained skipwhite /=\s*\%(ask-\)\?\%(yes\|no\)/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetQuadAssignment contained skipwhite /=\s*"\%(ask-\)\?\%(yes\|no\)"/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetQuadAssignment contained skipwhite /=\s*'\%(ask-\)\?\%(yes\|no\)'/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetNumAssignment contained skipwhite /=\s*\\\?\$\w\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable syntax match muttrcSetNumAssignment contained skipwhite /=\s*\d\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetNumAssignment contained skipwhite /=\s*"\d\+"/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax match muttrcSetNumAssignment contained skipwhite /=\s*'\d\+'/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " Now catch some email addresses and headers (purified version from mail.vim) syntax match muttrcEmail "[a-zA-Z0-9._-]\+@[a-zA-Z0-9./-]\+" syntax match muttrcHeader "\<\c\%(From\|To\|C[Cc]\|B[Cc][Cc]\|Reply-To\|Subject\|Return-Path\|Received\|Date\|Replied\|Attach\)\>:\=" syntax match muttrcKeySpecial contained +\%(\\[Cc'"]\|\^\|\\[01]\d\{2}\)+ syntax match muttrcKey contained "\S\+" contains=muttrcKeySpecial,muttrcKeyName syntax region muttrcKey contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=muttrcKeySpecial,muttrcKeyName syntax region muttrcKey contained start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=muttrcKeySpecial,muttrcKeyName syntax match muttrcKeyName contained "\\[trne]" syntax match muttrcKeyName contained "\c<\%(BackSpace\|BackTab\|Delete\|Down\|End\|Enter\|Esc\|Home\|Insert\|Left\|Next\|PageDown\|PageUp\|Return\|Right\|Space\|Tab\|Up\)>" syntax match muttrcKeyName contained "\c" syntax match muttrcFormatErrors contained /%./ syntax match muttrcStrftimeEscapes contained /%[AaBbCcDdeFGgHhIjklMmnpRrSsTtUuVvWwXxYyZz+%]/ syntax match muttrcStrftimeEscapes contained /%E[cCxXyY]/ syntax match muttrcStrftimeEscapes contained /%O[BdeHImMSuUVwWy]/ syntax region muttrcIndexFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcIndexFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcGroupIndexFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcGroupIndexFormatEscapes,muttrcGroupIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcGroupIndexFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcGroupIndexFormatEscapes,muttrcGroupIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcSidebarFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcSidebarFormatEscapes,muttrcSidebarFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcSidebarFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcSidebarFormatEscapes,muttrcSidebarFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcQueryFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcQueryFormatEscapes,muttrcQueryFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcAliasFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcAliasFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcAliasFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcAliasFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcAttachFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcAttachFormatEscapes,muttrcAttachFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcAttachFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcAttachFormatEscapes,muttrcAttachFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcComposeFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcComposeFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcComposeFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcComposeFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcFolderFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcFolderFormatEscapes,muttrcFolderFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcFolderFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcFolderFormatEscapes,muttrcFolderFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcMixFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcMixFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcPGPFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcPGPFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcPGPCmdFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcPGPCmdFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcStatusFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcStatusFormatEscapes,muttrcStatusFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcStatusFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcStatusFormatEscapes,muttrcStatusFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcPGPGetKeysFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPGetKeysFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcPGPGetKeysFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPGetKeysFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcSmimeFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcSmimeFormatEscapes,muttrcSmimeFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcSmimeFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcSmimeFormatEscapes,muttrcSmimeFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcStrftimeFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcStrftimeEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax region muttrcStrftimeFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcStrftimeEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " Format escapes and conditionals syntax match muttrcFormatConditionals2 contained /[^?]*?/ function! s:escapesConditionals(baseName, sequence, alignment, secondary) exec 'syntax match muttrc' . a:baseName . 'Escapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?\%(' . a:sequence . '\|%\)/' if a:alignment exec 'syntax match muttrc' . a:baseName . 'Escapes contained /%[>|*]./' endif if a:secondary exec 'syntax match muttrc' . a:baseName . 'Conditionals contained /%?\%(' . a:sequence . '\)?/ nextgroup=muttrcFormatConditionals2' else exec 'syntax match muttrc' . a:baseName . 'Conditionals contained /%?\%(' . a:sequence . '\)?/' endif endfunction " CHECKED 2018-04-18 " Ref: index_format_str() in hdrline.c call s:escapesConditionals('IndexFormat', '[AaBbCcDdEeFfgHIiJKLlMmNnOPqRrSsTtuvWXxYyZz(<[{]\|G[a-zA-Z]\+', 1, 1) " Ref: alias_format_str() in addrbook.c syntax match muttrcAliasFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[afnrt%]/ " Ref: group_index_format_str() in browser.c call s:escapesConditionals('GroupIndexFormat', '[CdfMNns]', 1, 1) " Ref: sidebar_format_str() in sidebar.c call s:escapesConditionals('SidebarFormat', '[BdFLNnSt!]', 1, 1) " Ref: query_format_str() in query.c call s:escapesConditionals('QueryFormat', '[acent]', 0, 1) " Ref: attach_format_str() in recvattach.c call s:escapesConditionals('AttachFormat', '[CcDdeFfIMmnQsTtuX]', 1, 1) " Ref: compose_format_str() in compose.c syntax match muttrcComposeFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[ahlv%]/ syntax match muttrcComposeFormatEscapes contained /%[>|*]./ " Ref: folder_format_str() in browser.c call s:escapesConditionals('FolderFormat', '[CDdFfglmNnstu]', 1, 0) " Ref: mix_format_str() in remailer.c call s:escapesConditionals('MixFormat', '[acns]', 0, 0) " Ref: status_format_str() in status.c call s:escapesConditionals('StatusFormat', '[bdFfhLlMmnoPpRrSstuVv]', 1, 1) " Ref: fmt_smime_command() in ncrypt/smime.c call s:escapesConditionals('SmimeFormat', '[aCcdfiks]', 0, 1) " Ref: crypt_format_str() in ncrypt/crypt_gpgme.c " Ref: pgp_entry_fmt() in ncrypt/pgpkey.c " Note: crypt_format_str() supports 'p', but pgp_entry_fmt() does not call s:escapesConditionals('PGPFormat', '[acfklnptu[]', 0, 0) " Ref: fmt_pgp_command() ncrypt/pgpinvoke.c call s:escapesConditionals('PGPCmdFormat', '[afprs]', 0, 1) " This matches the documentation, but directly contradicts the code " (according to the code, this should be identical to the muttrcPGPCmdFormatEscapes syntax match muttrcPGPGetKeysFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[acfklntu[%]/ syntax region muttrcTimeEscapes contained start=+%{+ end=+}+ contains=muttrcStrftimeEscapes syntax region muttrcTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes syntax region muttrcTimeEscapes contained start=+%(+ end=+)+ contains=muttrcStrftimeEscapes syntax region muttrcTimeEscapes contained start=+%<+ end=+>+ contains=muttrcStrftimeEscapes syntax region muttrcPGPTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes syntax match muttrcVarEqualsAliasFmt contained skipwhite "=" nextgroup=muttrcAliasFormatStr syntax match muttrcVarEqualsAttachFmt contained skipwhite "=" nextgroup=muttrcAttachFormatStr syntax match muttrcVarEqualsComposeFmt contained skipwhite "=" nextgroup=muttrcComposeFormatStr syntax match muttrcVarEqualsFolderFmt contained skipwhite "=" nextgroup=muttrcFolderFormatStr syntax match muttrcVarEqualsGrpIdxFmt contained skipwhite "=" nextgroup=muttrcGroupIndexFormatStr syntax match muttrcVarEqualsIdxFmt contained skipwhite "=" nextgroup=muttrcIndexFormatStr syntax match muttrcVarEqualsMixFmt contained skipwhite "=" nextgroup=muttrcMixFormatStr syntax match muttrcVarEqualsPGPCmdFmt contained skipwhite "=" nextgroup=muttrcPGPCmdFormatStr syntax match muttrcVarEqualsPGPFmt contained skipwhite "=" nextgroup=muttrcPGPFormatStr syntax match muttrcVarEqualsPGPGetKeysFmt contained skipwhite "=" nextgroup=muttrcPGPGetKeysFormatStr syntax match muttrcVarEqualsQueryFmt contained skipwhite "=" nextgroup=muttrcQueryFormatStr syntax match muttrcVarEqualsSdbFmt contained skipwhite "=" nextgroup=muttrcSidebarFormatStr syntax match muttrcVarEqualsSmimeFmt contained skipwhite "=" nextgroup=muttrcSmimeFormatStr syntax match muttrcVarEqualsStatusFmt contained skipwhite "=" nextgroup=muttrcStatusFormatStr syntax match muttrcVarEqualsStrftimeFmt contained skipwhite "=" nextgroup=muttrcStrftimeFormatStr syntax match muttrcVPrefix contained /[?&]/ nextgroup=muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " CHECKED 2018-04-18 " List of the different screens in mutt syntax keyword muttrcMenu contained alias attach browser compose editor generic index key_select_pgp key_select_smime mix pager pgp postpone query smime syntax match muttrcMenuList "\S\+" contained contains=muttrcMenu syntax match muttrcMenuCommas /,/ contained " CHECKED 2018-04-18 " List of hooks in Commands in init.h syntax keyword muttrcHooks contained skipwhite \ account-hook append-hook close-hook crypt-hook fcc-hook fcc-save-hook \ folder-hook iconv-hook mbox-hook message-hook open-hook pgp-hook \ reply-hook save-hook send-hook send2-hook syntax keyword muttrcHooks skipwhite shutdown-hook startup-hook timeout-hook nextgroup=muttrcCommand syntax region muttrcSpamPattern contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPattern nextgroup=muttrcString,muttrcStringNL syntax region muttrcSpamPattern contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPattern nextgroup=muttrcString,muttrcStringNL syntax region muttrcNoSpamPattern contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPattern syntax region muttrcNoSpamPattern contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPattern syntax match muttrcAttachmentsMimeType contained "[*a-z0-9_-]\+/[*a-z0-9._-]\+\s*" skipwhite nextgroup=muttrcAttachmentsMimeType syntax match muttrcAttachmentsFlag contained "[+-]\%([AI]\|inline\|attachment\)\s\+" skipwhite nextgroup=muttrcAttachmentsMimeType syntax match muttrcAttachmentsLine "^\s*\%(un\)\?attachments\s\+" skipwhite nextgroup=muttrcAttachmentsFlag syntax match muttrcUnHighlightSpace contained "\%(\s\+\|\\$\)" syntax keyword muttrcAsterisk contained * syntax keyword muttrcListsKeyword lists skipwhite nextgroup=muttrcGroupDef,muttrcComment syntax keyword muttrcListsKeyword unlists skipwhite nextgroup=muttrcAsterisk,muttrcComment syntax keyword muttrcSubscribeKeyword subscribe nextgroup=muttrcGroupDef,muttrcComment syntax keyword muttrcSubscribeKeyword unsubscribe nextgroup=muttrcAsterisk,muttrcComment syntax keyword muttrcAlternateKeyword contained alternates unalternates syntax region muttrcAlternatesLine keepend start=+^\s*\%(un\)\?alternates\s+ skip=+\\$+ end=+$+ contains=muttrcAlternateKeyword,muttrcGroupDef,muttrcRXPat,muttrcUnHighlightSpace,muttrcComment " muttrcVariable includes a prefix because partial strings are considered " valid. syntax match muttrcVariable contained "\\\@]\+" contains=muttrcEmail syntax match muttrcAction contained "<[^>]\{-}>" contains=muttrcBadAction,muttrcFunction,muttrcKeyName " First, functions that take regular expressions: syntax match muttrcRXHookNot contained /!\s*/ skipwhite nextgroup=muttrcRXHookString,muttrcRXHookStringNL syntax match muttrcRXHooks /\<\%(account\|append\|close\|crypt\|folder\|mbox\|open\|pgp\)-hook\>/ skipwhite nextgroup=muttrcRXHookNot,muttrcRXHookString,muttrcRXHookStringNL " Now, functions that take patterns syntax match muttrcPatHookNot contained /!\s*/ skipwhite nextgroup=muttrcPattern syntax match muttrcPatHooks /\<\%(charset\|iconv\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcPattern syntax match muttrcPatHooks /\<\%(message\|reply\|send\|send2\|save\|fcc\|fcc-save\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcOptPattern syntax match muttrcBindFunction contained /\S\+\>/ skipwhite contains=muttrcFunction syntax match muttrcBindFunctionNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindFunction,muttrcBindFunctionNL syntax match muttrcBindKey contained /\S\+/ skipwhite contains=muttrcKey nextgroup=muttrcBindFunction,muttrcBindFunctionNL syntax match muttrcBindKeyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindKey,muttrcBindKeyNL syntax match muttrcBindMenuList contained /\S\+/ skipwhite contains=muttrcMenu,muttrcMenuCommas nextgroup=muttrcBindKey,muttrcBindKeyNL syntax match muttrcBindMenuListNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindMenuList,muttrcBindMenuListNL syntax region muttrcMacroDescr contained keepend skipwhite start=+\s*\S+ms=e skip=+\\ + end=+ \|$+me=s syntax region muttrcMacroDescr contained keepend skipwhite start=+'+ms=e skip=+\\'+ end=+'+me=s syntax region muttrcMacroDescr contained keepend skipwhite start=+"+ms=e skip=+\\"+ end=+"+me=s syntax match muttrcMacroDescrNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroDescr,muttrcMacroDescrNL syntax region muttrcMacroBody contained skipwhite start="\S" skip='\\ \|\\$' end=' \|$' contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction nextgroup=muttrcMacroDescr,muttrcMacroDescrNL syntax region muttrcMacroBody matchgroup=Type contained skipwhite start=+'+ms=e skip=+\\'+ end=+'\|\%(\%(\\\\\)\@]\+>/ contains=muttrcEmail nextgroup=muttrcAliasComma syntax match muttrcAliasEncEmailNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasEncEmail,muttrcAliasEncEmailNL syntax match muttrcAliasNameNoParens contained /[^<(@]\+\s\+/ nextgroup=muttrcAliasEncEmail,muttrcAliasEncEmailNL syntax region muttrcAliasName contained matchgroup=Type start=/(/ end=/)/ skipwhite syntax match muttrcAliasNameNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasName,muttrcAliasNameNL syntax match muttrcAliasENNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL syntax match muttrcAliasKey contained /\s*[^- \t]\S\+/ skipwhite nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL syntax match muttrcAliasNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL syntax match muttrcUnAliasKey contained "\s*\w\+\s*" skipwhite nextgroup=muttrcUnAliasKey,muttrcUnAliasNL syntax match muttrcUnAliasNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcUnAliasKey,muttrcUnAliasNL syntax match muttrcSimplePat contained "!\?\^\?[~][ADEFgGklNOpPQRSTuUvV=$]" syntax match muttrcSimplePat contained "!\?\^\?[~][mnXz]\s*\%([<>-][0-9]\+[kM]\?\|[0-9]\+[kM]\?[-]\%([0-9]\+[kM]\?\)\?\)" syntax match muttrcSimplePat contained "!\?\^\?[~][dr]\s*\%(\%(-\?[0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)*\)\|\%(\%([0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)*\)-\%([0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)\?\)\?\)\|\%([<>=][0-9]\+[ymwd]\)\|\%(`[^`]\+`\)\|\%(\$[a-zA-Z0-9_-]\+\)\)" contains=muttrcShellString,muttrcVariable syntax match muttrcSimplePat contained "!\?\^\?[~][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatRXContainer syntax match muttrcSimplePat contained "!\?\^\?[%][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString syntax match muttrcSimplePat contained "!\?\^\?[=][bcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString syntax region muttrcSimplePat contained keepend start=+!\?\^\?[~](+ end=+)+ contains=muttrcSimplePat "syn match muttrcSimplePat contained /'[^~=%][^']*/ contains=muttrcRXString syntax region muttrcSimplePatString contained keepend start=+"+ end=+"+ skip=+\\"+ syntax region muttrcSimplePatString contained keepend start=+'+ end=+'+ skip=+\\'+ syntax region muttrcSimplePatString contained keepend start=+[^ "']+ skip=+\\ + end=+\s+re=e-1 syntax region muttrcSimplePatRXContainer contained keepend start=+"+ end=+"+ skip=+\\"+ contains=muttrcRXString syntax region muttrcSimplePatRXContainer contained keepend start=+'+ end=+'+ skip=+\\'+ contains=muttrcRXString syntax region muttrcSimplePatRXContainer contained keepend start=+[^ "']+ skip=+\\ + end=+\s+re=e-1 contains=muttrcRXString syntax match muttrcSimplePatMetas contained /[(|)]/ syntax match muttrcOptSimplePat contained skipwhite /[~=%!(^].*/ contains=muttrcSimplePat,muttrcSimplePatMetas syntax match muttrcOptSimplePat contained skipwhite /[^~=%!(^].*/ contains=muttrcRXString syntax region muttrcOptPattern contained matchgroup=Type keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcOptSimplePat,muttrcUnHighlightSpace nextgroup=muttrcString,muttrcStringNL syntax region muttrcOptPattern contained matchgroup=Type keepend skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcOptSimplePat,muttrcUnHighlightSpace nextgroup=muttrcString,muttrcStringNL syntax region muttrcOptPattern contained keepend skipwhite start=+[~](+ end=+)+ skip=+\\)+ contains=muttrcSimplePat nextgroup=muttrcString,muttrcStringNL syntax match muttrcOptPattern contained skipwhite /[~][A-Za-z]/ contains=muttrcSimplePat nextgroup=muttrcString,muttrcStringNL syntax match muttrcOptPattern contained skipwhite /[.]/ nextgroup=muttrcString,muttrcStringNL " Keep muttrcPattern and muttrcOptPattern synchronized syntax region muttrcPattern contained matchgroup=Type keepend skipwhite start=+"+ skip=+\\"+ end=+"+ contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas syntax region muttrcPattern contained matchgroup=Type keepend skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas syntax region muttrcPattern contained keepend skipwhite start=+[~](+ end=+)+ skip=+\\)+ contains=muttrcSimplePat syntax match muttrcPattern contained skipwhite /[~][A-Za-z]/ contains=muttrcSimplePat syntax match muttrcPattern contained skipwhite /[.]/ syntax region muttrcPatternInner contained keepend start=+"[~=%!(^]+ms=s+1 skip=+\\"+ end=+"+me=e-1 contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas syntax region muttrcPatternInner contained keepend start=+'[~=%!(^]+ms=s+1 skip=+\\'+ end=+'+me=e-1 contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas " Colour definitions takes object, foreground and background arguments (regexps excluded). syntax match muttrcColorMatchCount contained "[0-9]\+" syntax match muttrcColorMatchCountNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL syntax region muttrcColorRXPat contained start=+\s*'+ skip=+\\'+ end=+'\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL syntax region muttrcColorRXPat contained start=+\s*"+ skip=+\\"+ end=+"\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL syntax keyword muttrcColor contained black blue cyan default green magenta red white yellow syntax keyword muttrcColor contained brightblack brightblue brightcyan brightdefault brightgreen brightmagenta brightred brightwhite brightyellow syntax match muttrcColor contained "\<\%(bright\)\=color\d\{1,3}\>" " Now for the structure of the color line syntax match muttrcColorRXNL contained skipnl "\s*\\$" nextgroup=muttrcColorRXPat,muttrcColorRXNL syntax match muttrcColorBG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorRXPat,muttrcColorRXNL syntax match muttrcColorBGNL contained skipnl "\s*\\$" nextgroup=muttrcColorBG,muttrcColorBGNL syntax match muttrcColorFG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorBG,muttrcColorBGNL syntax match muttrcColorFGNL contained skipnl "\s*\\$" nextgroup=muttrcColorFG,muttrcColorFGNL syntax match muttrcColorContext contained /\s*[$]\?\w\+/ contains=muttrcColorField,muttrcVariable,muttrcUnHighlightSpace,muttrcColorCompose nextgroup=muttrcColorFG,muttrcColorFGNL syntax match muttrcColorNL contained skipnl "\s*\\$" nextgroup=muttrcColorContext,muttrcColorNL,muttrcColorCompose syntax match muttrcColorKeyword contained /^\s*color\s\+/ nextgroup=muttrcColorContext,muttrcColorNL,muttrcColorCompose " And now color's brother: syntax region muttrcUnColorPatterns contained skipwhite start=+\s*'+ end=+'+ skip=+\\'+ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL syntax region muttrcUnColorPatterns contained skipwhite start=+\s*"+ end=+"+ skip=+\\"+ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL syntax match muttrcUnColorPatterns contained skipwhite /\s*[^'"\s]\S\*/ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL syntax match muttrcUnColorPatNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL syntax match muttrcUnColorAll contained skipwhite /[*]/ syntax match muttrcUnColorAPNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorPatterns,muttrcUnColorAll,muttrcUnColorAPNL syntax match muttrcUnColorIndex contained skipwhite /\s*index\s\+/ nextgroup=muttrcUnColorPatterns,muttrcUnColorAll,muttrcUnColorAPNL syntax match muttrcUnColorIndexNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorIndex,muttrcUnColorIndexNL syntax match muttrcUnColorKeyword contained skipwhite /^\s*uncolor\s\+/ nextgroup=muttrcUnColorIndex,muttrcUnColorIndexNL syntax region muttrcUnColorLine keepend start=+^\s*uncolor\s+ skip=+\\$+ end=+$+ contains=muttrcUnColorKeyword,muttrcComment,muttrcUnHighlightSpace syntax keyword muttrcMonoAttrib contained bold none normal reverse standout underline syntax keyword muttrcMono contained mono skipwhite nextgroup=muttrcColorField,muttrcColorCompose syntax match muttrcMonoLine "^\s*mono\s\+\S\+" skipwhite nextgroup=muttrcMonoAttrib contains=muttrcMono " CHECKED 2018-04-18 " List of fields in Fields in color.c syntax keyword muttrcColorField skipwhite contained \ attachment attach_headers body bold error hdrdefault header index \ index_author index_collapsed index_date index_flags index_label \ index_number index_size index_subject index_tag index_tags indicator \ markers message normal progress prompt quoted search sidebar_divider \ sidebar_flagged sidebar_highlight sidebar_indicator sidebar_new \ sidebar_ordinary sidebar_spoolfile signature status tilde tree underline \ nextgroup=muttrcColor syntax match muttrcColorField contained "\" syntax match muttrcColorCompose skipwhite contained /\s*compose\s*/ nextgroup=muttrcColorComposeField " CHECKED 2018-04-18 " List of fields in ComposeFields in color.c syntax keyword muttrcColorComposeField skipwhite contained \ header security_both security_encrypt security_none security_sign \ nextgroup=muttrcColorFG,muttrcColorFGNL syntax region muttrcColorLine keepend start=/^\s*color\s\+/ skip=+\\$+ end=+$+ contains=muttrcColorKeyword,muttrcComment,muttrcUnHighlightSpace function! s:boolQuadGen(type, vars, deprecated) let l:novars = copy(a:vars) call map(l:novars, '"no" . v:val') let l:invvars = copy(a:vars) call map(l:invvars, '"inv" . v:val') let l:orig_type = copy(a:type) if a:deprecated let l:type = 'Deprecated' . a:type else let l:type = a:type endif exec 'syntax keyword muttrcVar' . l:type . ' skipwhite contained ' . join(a:vars) . ' nextgroup=muttrcSet' . l:orig_type . 'Assignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr' exec 'syntax keyword muttrcVar' . l:type . ' skipwhite contained ' . join(l:novars) . ' nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr' exec 'syntax keyword muttrcVar' . l:type . ' skipwhite contained ' . join(l:invvars) . ' nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr' endfunction " CHECKED 2018-04-18 " List of DT_BOOL in MuttVars in init.h call s:boolQuadGen('Bool', [ \ 'allow_8bit', 'allow_ansi', 'arrow_cursor', 'ascii_chars', 'askbcc', \ 'askcc', 'ask_follow_up', 'ask_x_comment_to', 'attach_split', 'autoedit', \ 'auto_tag', 'beep', 'beep_new', 'bounce_delivered', 'braille_friendly', \ 'change_folder_next', 'check_mbox_size', 'check_new', 'collapse_all', \ 'collapse_flagged', 'collapse_unread', 'confirmappend', 'confirmcreate', \ 'crypt_autoencrypt', 'crypt_autopgp', 'crypt_autosign', 'crypt_autosmime', \ 'crypt_confirmhook', 'crypt_opportunistic_encrypt', 'crypt_replyencrypt', \ 'crypt_replysign', 'crypt_replysignencrypted', 'crypt_timestamp', \ 'crypt_use_gpgme', 'crypt_use_pka', 'delete_untag', 'digest_collapse', \ 'duplicate_threads', 'edit_headers', 'encode_from', 'fast_reply', \ 'fcc_clear', 'flag_safe', 'followup_to', 'force_name', 'forward_decode', \ 'forward_decrypt', 'forward_quote', 'forward_references', 'hdrs', \ 'header', 'header_cache_compress', 'header_color_partial', 'help', \ 'hidden_host', 'hide_limited', 'hide_missing', 'hide_thread_subject', \ 'hide_top_limited', 'hide_top_missing', 'history_remove_dups', \ 'honor_disposition', 'idn_decode', 'idn_encode', 'ignore_list_reply_to', \ 'imap_check_subscribed', 'imap_idle', 'imap_list_subscribed', \ 'imap_passive', 'imap_peek', 'imap_servernoise', 'implicit_autoview', \ 'include_onlyfirst', 'keep_flagged', 'mailcap_sanitize', \ 'maildir_check_cur', 'maildir_header_cache_verify', 'maildir_trash', \ 'mail_check_recent', 'mail_check_stats', 'markers', 'mark_old', \ 'menu_move_off', 'menu_scroll', 'message_cache_clean', 'meta_key', \ 'metoo', 'mh_purge', 'mime_forward_decode', 'mime_subject', \ 'mime_type_query_first', 'narrow_tree', 'nm_record', 'nntp_listgroup', \ 'nntp_load_description', 'pager_stop', 'pgp_autoinline', \ 'pgp_auto_decode', 'pgp_check_exit', 'pgp_ignore_subkeys', 'pgp_long_ids', \ 'pgp_replyinline', 'pgp_retainable_sigs', 'pgp_self_encrypt', \ 'pgp_show_unusable', 'pgp_strict_enc', 'pgp_use_gpg_agent', 'pipe_decode', \ 'pipe_split', 'pop_auth_try_all', 'pop_last', 'postpone_encrypt', \ 'print_decode', 'print_split', 'prompt_after', 'read_only', \ 'reflow_space_quotes', 'reflow_text', 'reply_self', 'reply_with_xorig', \ 'resolve', 'resume_draft_files', 'resume_edited_draft_files', \ 'reverse_alias', 'reverse_name', 'reverse_realname', 'rfc2047_parameters', \ 'save_address', 'save_empty', 'save_name', 'save_unsubscribed', 'score', \ 'show_new_news', 'show_only_unread', 'sidebar_folder_indent', \ 'sidebar_new_mail_only', 'sidebar_next_new_wrap', 'sidebar_on_right', \ 'sidebar_short_path', 'sidebar_visible', 'sig_dashes', 'sig_on_top', \ 'smart_wrap', 'smime_ask_cert_label', 'smime_decrypt_use_default_key', \ 'smime_is_default', 'smime_self_encrypt', 'sort_re', 'ssl_force_tls', \ 'ssl_usesystemcerts', 'ssl_use_sslv2', 'ssl_use_sslv3', 'ssl_use_tlsv1', \ 'ssl_use_tlsv1_1', 'ssl_use_tlsv1_2', 'ssl_verify_dates', \ 'ssl_verify_host', 'ssl_verify_partial_chains', 'status_on_top', \ 'strict_threads', 'suspend', 'text_flowed', 'thorough_search', \ 'thread_received', 'tilde', 'ts_enabled', 'uncollapse_jump', \ 'uncollapse_new', 'user_agent', 'use_8bitmime', 'use_domain', \ 'use_envelope_from', 'use_from', 'use_ipv6', 'virtual_spoolfile', \ 'wait_key', 'weed', 'wrap_search', 'write_bcc', 'x_comment_to' \ ], 0) " CHECKED 2018-04-18 " Deprecated Bools " List of DT_SYNONYM synonyms of Bools in MuttVars in init.h call s:boolQuadGen('Bool', [ \ 'edit_hdrs', 'envelope_from', 'forw_decode', 'forw_decrypt', \ 'forw_quote', 'ignore_linear_white_space', 'pgp_autoencrypt', \ 'pgp_autosign', 'pgp_auto_traditional', 'pgp_create_traditional', \ 'pgp_replyencrypt', 'pgp_replysign', 'pgp_replysignencrypted', \ 'xterm_set_titles' \ ], 1) " CHECKED 2018-04-18 " List of DT_QUAD in MuttVars in init.h call s:boolQuadGen('Quad', [ \ 'abort_noattach', 'abort_nosubject', 'abort_unmodified', 'bounce', \ 'catchup_newsgroup', 'copy', 'crypt_verify_sig', 'delete', 'fcc_attach', \ 'followup_to_poster', 'forward_edit', 'honor_followup_to', 'include', \ 'mime_forward', 'mime_forward_rest', 'move', 'pgp_mime_auto', \ 'pop_delete', 'pop_reconnect', 'postpone', 'post_moderated', 'print', \ 'quit', 'recall', 'reply_to', 'ssl_starttls' \ ], 0) " CHECKED 2018-04-18 " Deprecated Quads " List of DT_SYNONYM synonyms of Quads in MuttVars in init.h call s:boolQuadGen('Quad', [ \ 'mime_fwd', 'pgp_encrypt_self', 'pgp_verify_sig', 'smime_encrypt_self' \ ], 1) " CHECKED 2018-04-18 " List of DT_NUMBER in MuttVars in init.h syntax keyword muttrcVarNum skipwhite contained \ connect_timeout debug_level history imap_keepalive imap_pipeline_depth \ imap_poll_timeout mail_check mail_check_stats_interval menu_context \ net_inc nm_db_limit nm_open_timeout nm_query_window_current_position \ nm_query_window_duration nntp_context nntp_poll pager_context \ pager_index_lines pgp_timeout pop_checkinterval read_inc reflow_wrap \ save_history score_threshold_delete score_threshold_flag \ score_threshold_read search_context sendmail_wait sidebar_component_depth \ sidebar_width skip_quoted_offset sleep_time smime_timeout \ ssl_min_dh_prime_bits timeout time_inc wrap wrap_headers write_inc \ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax keyword muttrcVarDeprecatedNum contained skipwhite \ wrapmargin \ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " CHECKED 2018-04-18 " List of DT_STRING in MuttVars in init.h " Special cases first, and all the rest at the end " Formats themselves must be updated in their respective groups " See s:escapesConditionals syntax match muttrcVarStr contained skipwhite 'my_[a-zA-Z0-9_]\+' nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax keyword muttrcVarStr contained skipwhite alias_format nextgroup=muttrcVarEqualsAliasFmt syntax keyword muttrcVarStr contained skipwhite attach_format nextgroup=muttrcVarEqualsAttachFmt syntax keyword muttrcVarStr contained skipwhite compose_format nextgroup=muttrcVarEqualsComposeFmt syntax keyword muttrcVarStr contained skipwhite folder_format vfolder_format nextgroup=muttrcVarEqualsFolderFmt syntax keyword muttrcVarStr contained skipwhite attribution index_format message_format pager_format nextgroup=muttrcVarEqualsIdxFmt " Deprecated format syntax keyword muttrcVarDeprecatedStr contained skipwhite hdr_format msg_format nextgroup=muttrcVarEqualsIdxFmt syntax keyword muttrcVarStr contained skipwhite mix_entry_format nextgroup=muttrcVarEqualsMixFmt syntax keyword muttrcVarStr contained skipwhite \ pgp_clearsign_command pgp_decode_command pgp_decrypt_command \ pgp_encrypt_only_command pgp_encrypt_sign_command pgp_export_command \ pgp_import_command pgp_list_pubring_command pgp_list_secring_command \ pgp_sign_command pgp_verify_command pgp_verify_key_command \ nextgroup=muttrcVarEqualsPGPCmdFmt syntax keyword muttrcVarStr contained skipwhite pgp_entry_format nextgroup=muttrcVarEqualsPGPFmt syntax keyword muttrcVarStr contained skipwhite pgp_getkeys_command nextgroup=muttrcVarEqualsPGPGetKeysFmt syntax keyword muttrcVarStr contained skipwhite query_format nextgroup=muttrcVarEqualsQueryFmt syntax keyword muttrcVarStr contained skipwhite \ smime_decrypt_command smime_encrypt_command smime_get_cert_command \ smime_get_cert_email_command smime_get_signer_cert_command \ smime_import_cert_command smime_pk7out_command smime_sign_command \ smime_verify_command smime_verify_opaque_command \ nextgroup=muttrcVarEqualsSmimeFmt syntax keyword muttrcVarStr contained skipwhite ts_icon_format ts_status_format status_format nextgroup=muttrcVarEqualsStatusFmt " Deprecated format syntax keyword muttrcVarDeprecatedStr contained skipwhite xterm_icon xterm_title nextgroup=muttrcVarEqualsStatusFmt syntax keyword muttrcVarStr contained skipwhite date_format nextgroup=muttrcVarEqualsStrftimeFmt syntax keyword muttrcVarStr contained skipwhite group_index_format nextgroup=muttrcVarEqualsGrpIdxFmt syntax keyword muttrcVarStr contained skipwhite sidebar_format nextgroup=muttrcVarEqualsSdbFmt syntax keyword muttrcVarStr contained skipwhite \ assumed_charset attach_charset attach_sep attribution_locale charset \ config_charset content_type default_hook dsn_notify dsn_return \ empty_subject escape forward_attribution_intro forward_attribution_trailer \ forward_format header_cache_pagesize hidden_tags hostname \ imap_authenticators imap_delim_chars imap_headers imap_login imap_pass \ imap_user indent_string mailcap_path mark_macro_prefix mh_seq_flagged \ mh_seq_replied mh_seq_unseen mime_type_query_command newsgroups_charset \ news_server nm_default_uri nm_exclude_tags nm_query_type \ nm_query_window_current_search nm_query_window_timebase nm_record_tags \ nm_unread_tag nntp_authenticators nntp_pass nntp_user pgp_default_key \ pgp_sign_as pipe_sep pop_authenticators pop_host pop_pass pop_user \ postpone_encrypt_as post_indent_string preconnect realname send_charset \ show_multipart_alternative sidebar_delim_chars sidebar_divider_char \ sidebar_indent_string simple_search smime_default_key smime_encrypt_with \ smime_sign_as smime_sign_digest_alg smtp_authenticators smtp_pass smtp_url \ spam_separator ssl_ciphers tunnel \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " Deprecated strings syntax keyword muttrcVarDeprecatedStr contained skipwhite \ forw_format indent_str pgp_self_encrypt_as post_indent_str \ smime_self_encrypt_as \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " CHECKED 2018-04-18 " List of DT_ADDRESS syntax keyword muttrcVarStr contained skipwhite envelope_from_address from nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " List of DT_HCACHE syntax keyword muttrcVarStr contained skipwhite header_cache_backend nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " List of DT_MAGIC syntax keyword muttrcVarStr contained skipwhite mbox_type nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " List of DT_MBTABLE syntax keyword muttrcVarStr contained skipwhite flag_chars from_chars status_chars to_chars nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " CHECKED 2018-04-18 " List of DT_PATH syntax keyword muttrcVarStr contained skipwhite \ alias_file certificate_file debug_file display_filter editor entropy_file \ folder header_cache history_file inews ispell mbox message_cachedir mixmaster \ new_mail_command news_cache_dir newsrc pager postponed print_command \ query_command record sendmail shell signature smime_ca_location \ smime_certificates smime_keys spoolfile ssl_ca_certificates_file \ ssl_client_cert tmpdir trash visual \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " CHECKED 2018-04-18 " List of DT_REGEX syntax keyword muttrcVarStr contained skipwhite \ abort_noattach_regex gecos_mask mask pgp_decryption_okay pgp_good_sign \ quote_regex reply_regex smileys \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " List of deprecated DT_PATH syntax keyword muttrcVarDeprecatedStr contained skipwhite print_cmd nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " List of deprecated DT_REGEX syntax keyword muttrcVarDeprecatedStr contained skipwhite abort_noattach_regexp attach_keyword quote_regexp reply_regexp nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " List of DT_SORT syntax keyword muttrcVarStr contained skipwhite \ pgp_sort_keys sidebar_sort_method sort sort_alias sort_aux sort_browser \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr " CHECKED 2018-04-18 " List of commands in Commands in init.h " Remember to remove hooks, they have already been dealt with syntax keyword muttrcCommand skipwhite charset-hook nextgroup=muttrcRXString syntax keyword muttrcCommand skipwhite unhook nextgroup=muttrcHooks syntax keyword muttrcCommand skipwhite spam nextgroup=muttrcSpamPattern syntax keyword muttrcCommand skipwhite nospam nextgroup=muttrcNoSpamPattern syntax keyword muttrcCommand skipwhite bind nextgroup=muttrcBindMenuList,muttrcBindMenuListNL syntax keyword muttrcCommand skipwhite macro nextgroup=muttrcMacroMenuList,muttrcMacroMenuListNL syntax keyword muttrcCommand skipwhite alias nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL syntax keyword muttrcCommand skipwhite unalias nextgroup=muttrcUnAliasKey,muttrcUnAliasNL syntax keyword muttrcCommand skipwhite set unset reset toggle nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr syntax keyword muttrcCommand skipwhite exec nextgroup=muttrcFunction syntax keyword muttrcCommand skipwhite \ alternative_order attachments auto_view finish hdr_order ifdef ifndef \ ignore lua lua-source mailboxes mailto_allow mime_lookup my_hdr push score \ setenv sidebar_whitelist source subjectrx subscribe-to tag-formats \ tag-transforms unalternative_order unattachments unauto_view uncolor \ unhdr_order unignore unmailboxes unmailto_allow unmime_lookup unmono \ unmy_hdr unscore unsetenv unsidebar_whitelist unsubjectrx unsubscribe-from \ unvirtual-mailboxes virtual-mailboxes " CHECKED 2018-04-18 " List of functions in functions.h syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" syntax match muttrcFunction contained "\" " Define the default highlighting. " Only when an item doesn't have highlighting yet highlight def link muttrcComment Comment highlight def link muttrcEscape SpecialChar highlight def link muttrcRXChars SpecialChar highlight def link muttrcString String highlight def link muttrcRXString String highlight def link muttrcRXString2 String highlight def link muttrcSpecial Special highlight def link muttrcHooks Type highlight def link muttrcGroupFlag Type highlight def link muttrcGroupDef Macro highlight def link muttrcAddrDef muttrcGroupFlag highlight def link muttrcRXDef muttrcGroupFlag highlight def link muttrcRXPat String highlight def link muttrcAliasGroupName Macro highlight def link muttrcAliasKey Identifier highlight def link muttrcUnAliasKey Identifier highlight def link muttrcAliasEncEmail Identifier highlight def link muttrcAliasParens Type highlight def link muttrcSetNumAssignment Number highlight def link muttrcSetBoolAssignment Boolean highlight def link muttrcSetQuadAssignment Boolean highlight def link muttrcSetStrAssignment String highlight def link muttrcEmail Special highlight def link muttrcVariableInner Special highlight def link muttrcEscapedVariable String highlight def link muttrcHeader Type highlight def link muttrcKeySpecial SpecialChar highlight def link muttrcKey Type highlight def link muttrcKeyName SpecialChar highlight def link muttrcVarBool Identifier highlight def link muttrcVarQuad Identifier highlight def link muttrcVarNum Identifier highlight def link muttrcVarStr Identifier highlight def link muttrcMenu Identifier highlight def link muttrcCommand Keyword highlight def link muttrcMacroDescr String highlight def link muttrcAction Macro highlight def link muttrcBadAction Error highlight def link muttrcBindFunction Error highlight def link muttrcBindMenuList Error highlight def link muttrcFunction Macro highlight def link muttrcGroupKeyword muttrcCommand highlight def link muttrcGroupLine Error highlight def link muttrcSubscribeKeyword muttrcCommand highlight def link muttrcSubscribeLine Error highlight def link muttrcListsKeyword muttrcCommand highlight def link muttrcListsLine Error highlight def link muttrcAlternateKeyword muttrcCommand highlight def link muttrcAlternatesLine Error highlight def link muttrcAttachmentsLine muttrcCommand highlight def link muttrcAttachmentsFlag Type highlight def link muttrcAttachmentsMimeType String highlight def link muttrcColorLine Error highlight def link muttrcColorContext Error highlight def link muttrcColorContextI Identifier highlight def link muttrcColorContextH Identifier highlight def link muttrcColorKeyword muttrcCommand highlight def link muttrcColorField Identifier highlight def link muttrcColorCompose Identifier highlight def link muttrcColorComposeField Identifier highlight def link muttrcColor Type highlight def link muttrcColorFG Error highlight def link muttrcColorFGI Error highlight def link muttrcColorFGH Error highlight def link muttrcColorBG Error highlight def link muttrcColorBGI Error highlight def link muttrcColorBGH Error highlight def link muttrcMonoAttrib muttrcColor highlight def link muttrcMono muttrcCommand highlight def link muttrcSimplePat Identifier highlight def link muttrcSimplePatString Macro highlight def link muttrcSimplePatMetas Special highlight def link muttrcPattern Error highlight def link muttrcUnColorLine Error highlight def link muttrcUnColorKeyword muttrcCommand highlight def link muttrcUnColorIndex Identifier highlight def link muttrcShellString muttrcEscape highlight def link muttrcRXHooks muttrcCommand highlight def link muttrcRXHookNot Type highlight def link muttrcPatHooks muttrcCommand highlight def link muttrcPatHookNot Type highlight def link muttrcFormatConditionals2 Type highlight def link muttrcIndexFormatStr muttrcString highlight def link muttrcIndexFormatEscapes muttrcEscape highlight def link muttrcIndexFormatConditionals muttrcFormatConditionals2 highlight def link muttrcAliasFormatStr muttrcString highlight def link muttrcAliasFormatEscapes muttrcEscape highlight def link muttrcAttachFormatStr muttrcString highlight def link muttrcAttachFormatEscapes muttrcEscape highlight def link muttrcAttachFormatConditionals muttrcFormatConditionals2 highlight def link muttrcComposeFormatStr muttrcString highlight def link muttrcComposeFormatEscapes muttrcEscape highlight def link muttrcFolderFormatStr muttrcString highlight def link muttrcFolderFormatEscapes muttrcEscape highlight def link muttrcFolderFormatConditionals muttrcFormatConditionals2 highlight def link muttrcMixFormatStr muttrcString highlight def link muttrcMixFormatEscapes muttrcEscape highlight def link muttrcMixFormatConditionals muttrcFormatConditionals2 highlight def link muttrcPGPFormatStr muttrcString highlight def link muttrcPGPFormatEscapes muttrcEscape highlight def link muttrcPGPFormatConditionals muttrcFormatConditionals2 highlight def link muttrcPGPCmdFormatStr muttrcString highlight def link muttrcPGPCmdFormatEscapes muttrcEscape highlight def link muttrcPGPCmdFormatConditionals muttrcFormatConditionals2 highlight def link muttrcStatusFormatStr muttrcString highlight def link muttrcStatusFormatEscapes muttrcEscape highlight def link muttrcStatusFormatConditionals muttrcFormatConditionals2 highlight def link muttrcPGPGetKeysFormatStr muttrcString highlight def link muttrcPGPGetKeysFormatEscapes muttrcEscape highlight def link muttrcSmimeFormatStr muttrcString highlight def link muttrcSmimeFormatEscapes muttrcEscape highlight def link muttrcSmimeFormatConditionals muttrcFormatConditionals2 highlight def link muttrcTimeEscapes muttrcEscape highlight def link muttrcPGPTimeEscapes muttrcEscape highlight def link muttrcStrftimeEscapes Type highlight def link muttrcStrftimeFormatStr muttrcString highlight def link muttrcFormatErrors Error highlight def link muttrcBindFunctionNL SpecialChar highlight def link muttrcBindKeyNL SpecialChar highlight def link muttrcBindMenuListNL SpecialChar highlight def link muttrcMacroDescrNL SpecialChar highlight def link muttrcMacroBodyNL SpecialChar highlight def link muttrcMacroKeyNL SpecialChar highlight def link muttrcMacroMenuListNL SpecialChar highlight def link muttrcColorMatchCountNL SpecialChar highlight def link muttrcColorNL SpecialChar highlight def link muttrcColorRXNL SpecialChar highlight def link muttrcColorBGNL SpecialChar highlight def link muttrcColorFGNL SpecialChar highlight def link muttrcAliasNameNL SpecialChar highlight def link muttrcAliasENNL SpecialChar highlight def link muttrcAliasNL SpecialChar highlight def link muttrcUnAliasNL SpecialChar highlight def link muttrcAliasGroupDefNL SpecialChar highlight def link muttrcAliasEncEmailNL SpecialChar highlight def link muttrcPatternNL SpecialChar highlight def link muttrcUnColorPatNL SpecialChar highlight def link muttrcUnColorAPNL SpecialChar highlight def link muttrcUnColorIndexNL SpecialChar highlight def link muttrcStringNL SpecialChar highlight def link muttrcVarDeprecatedBool Error highlight def link muttrcVarDeprecatedQuad Error highlight def link muttrcVarDeprecatedStr Error let b:current_syntax = "neomuttrc" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 noet tw=100 sw=8 sts=0 ft=vim isk+=- PK&]jN.t<t<vim80/syntax/mupad.vimnu[" Vim syntax file " Language: MuPAD source " Maintainer: Dave Silvia " Filenames: *.mu " Date: 6/30/2004 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Set default highlighting to Win2k if !exists("mupad_cmdextversion") let mupad_cmdextversion = 2 endif syn case match syn match mupadComment "//\p*$" syn region mupadComment start="/\*" end="\*/" syn region mupadString start="\"" skip=/\\"/ end="\"" syn match mupadOperator "(\|)\|:=\|::\|:\|;" " boolean syn keyword mupadOperator and or not xor syn match mupadOperator "==>\|\<=\>" " Informational syn keyword mupadSpecial FILEPATH NOTEBOOKFILE NOTEBOOKPATH " Set-able, e.g., DIGITS:=10 syn keyword mupadSpecial DIGITS HISTORY LEVEL syn keyword mupadSpecial MAXLEVEL MAXDEPTH ORDER syn keyword mupadSpecial TEXTWIDTH " Set-able, e.g., PRETTYPRINT:=TRUE syn keyword mupadSpecial PRETTYPRINT " Set-able, e.g., LIBPATH:="C:\\MuPAD Pro\\mylibdir" or LIBPATH:="/usr/MuPAD Pro/mylibdir" syn keyword mupadSpecial LIBPATH PACKAGEPATH syn keyword mupadSpecial READPATH TESTPATH WRITEPATH " Symbols and Constants syn keyword mupadDefine FAIL NIL syn keyword mupadDefine TRUE FALSE UNKNOWN syn keyword mupadDefine complexInfinity infinity syn keyword mupadDefine C_ CATALAN E EULER I PI Q_ R_ syn keyword mupadDefine RD_INF RD_NINF undefined unit universe Z_ " print() directives syn keyword mupadDefine Unquoted NoNL KeepOrder Typeset " domain specifics syn keyword mupadStatement domain begin end_domain end syn keyword mupadIdentifier inherits category axiom info doc interface " basic programming statements syn keyword mupadStatement proc begin end_proc syn keyword mupadUnderlined name local option save syn keyword mupadConditional if then elif else end_if syn keyword mupadConditional case of do break end_case syn keyword mupadRepeat for do next break end_for syn keyword mupadRepeat while do next break end_while syn keyword mupadRepeat repeat next break until end_repeat " domain packages/libraries syn keyword mupadType detools import linalg numeric numlib plot polylib syn match mupadType '\' "syn keyword mupadFunction contains " Functions dealing with prime numbers syn keyword mupadFunction phi invphi mersenne nextprime numprimedivisors syn keyword mupadFunction pollard prevprime primedivisors " Functions operating on Lists, Matrices, Sets, ... syn keyword mupadFunction array _index " Evaluation syn keyword mupadFunction float contains " stdlib syn keyword mupadFunction _exprseq _invert _lazy_and _lazy_or _negate syn keyword mupadFunction _stmtseq _invert intersect minus union syn keyword mupadFunction Ci D Ei O Re Im RootOf Si syn keyword mupadFunction Simplify syn keyword mupadFunction abs airyAi airyBi alias unalias anames append syn keyword mupadFunction arcsin arccos arctan arccsc arcsec arccot syn keyword mupadFunction arcsinh arccosh arctanh arccsch arcsech arccoth syn keyword mupadFunction arg args array assert assign assignElements syn keyword mupadFunction assume assuming asympt bernoulli syn keyword mupadFunction besselI besselJ besselK besselY beta binomial bool syn keyword mupadFunction bytes card syn keyword mupadFunction ceil floor round trunc syn keyword mupadFunction coeff coerce collect combine copyClosure syn keyword mupadFunction conjugate content context contfrac syn keyword mupadFunction debug degree degreevec delete _delete denom syn keyword mupadFunction densematrix diff dilog dirac discont div _div syn keyword mupadFunction divide domtype doprint erf erfc error eval evalassign syn keyword mupadFunction evalp exp expand export unexport expose expr syn keyword mupadFunction expr2text external extnops extop extsubsop syn keyword mupadFunction fact fact2 factor fclose finput fname fopen fprint syn keyword mupadFunction fread ftextinput readbitmap readdata pathname syn keyword mupadFunction protocol read readbytes write writebytes syn keyword mupadFunction float frac frame _frame frandom freeze unfreeze syn keyword mupadFunction funcenv gamma gcd gcdex genident genpoly syn keyword mupadFunction getpid getprop ground has hastype heaviside help syn keyword mupadFunction history hold hull hypergeom icontent id syn keyword mupadFunction ifactor igamma igcd igcdex ilcm in _in syn keyword mupadFunction indets indexval info input int int2text syn keyword mupadFunction interpolate interval irreducible is syn keyword mupadFunction isprime isqrt iszero ithprime kummerU lambertW syn keyword mupadFunction last lasterror lcm lcoeff ldegree length syn keyword mupadFunction level lhs rhs limit linsolve lllint syn keyword mupadFunction lmonomial ln loadmod loadproc log lterm syn keyword mupadFunction match map mapcoeffs maprat matrix max min syn keyword mupadFunction mod modp mods monomials multcoeffs new syn keyword mupadFunction newDomain _next nextprime nops syn keyword mupadFunction norm normal nterms nthcoeff nthmonomial nthterm syn keyword mupadFunction null numer ode op operator package syn keyword mupadFunction pade partfrac patchlevel pdivide syn keyword mupadFunction piecewise plot plotfunc2d plotfunc3d syn keyword mupadFunction poly poly2list polylog powermod print syn keyword mupadFunction product protect psi quit _quit radsimp random rationalize syn keyword mupadFunction rec rectform register reset return revert syn keyword mupadFunction rewrite select series setuserinfo share sign signIm syn keyword mupadFunction simplify syn keyword mupadFunction sin cos tan csc sec cot syn keyword mupadFunction sinh cosh tanh csch sech coth syn keyword mupadFunction slot solve syn keyword mupadFunction pdesolve matlinsolve matlinsolveLU toeplitzSolve syn keyword mupadFunction vandermondeSolve fsolve odesolve odesolve2 syn keyword mupadFunction polyroots polysysroots odesolveGeometric syn keyword mupadFunction realroot realroots mroots lincongruence syn keyword mupadFunction msqrts syn keyword mupadFunction sort split sqrt strmatch strprint syn keyword mupadFunction subs subset subsex subsop substring sum syn keyword mupadFunction surd sysname sysorder system table taylor tbl2text syn keyword mupadFunction tcoeff testargs testeq testtype text2expr syn keyword mupadFunction text2int text2list text2tbl rtime time syn keyword mupadFunction traperror type unassume unit universe syn keyword mupadFunction unloadmod unprotect userinfo val version syn keyword mupadFunction warning whittakerM whittakerW zeta zip " graphics plot:: syn keyword mupadFunction getDefault setDefault copy modify Arc2d Arrow2d syn keyword mupadFunction Arrow3d Bars2d Bars3d Box Boxplot Circle2d Circle3d syn keyword mupadFunction Cone Conformal Curve2d Curve3d Cylinder Cylindrical syn keyword mupadFunction Density Ellipse2d Function2d Function3d Hatch syn keyword mupadFunction Histogram2d HOrbital Implicit2d Implicit3d syn keyword mupadFunction Inequality Iteration Line2d Line3d Lsys Matrixplot syn keyword mupadFunction MuPADCube Ode2d Ode3d Parallelogram2d Parallelogram3d syn keyword mupadFunction Piechart2d Piechart3d Point2d Point3d Polar syn keyword mupadFunction Polygon2d Polygon3d Raster Rectangle Sphere syn keyword mupadFunction Ellipsoid Spherical Sum Surface SurfaceSet syn keyword mupadFunction SurfaceSTL Tetrahedron Hexahedron Octahedron syn keyword mupadFunction Dodecahedron Icosahedron Text2d Text3d Tube Turtle syn keyword mupadFunction VectorField2d XRotate ZRotate Canvas CoordinateSystem2d syn keyword mupadFunction CoordinateSystem3d Group2d Group3d Scene2d Scene3d ClippingBox syn keyword mupadFunction Rotate2d Rotate3d Scale2d Scale3d Transform2d syn keyword mupadFunction Transform3d Translate2d Translate3d AmbientLight syn keyword mupadFunction Camera DistantLight PointLight SpotLight " graphics Attributes " graphics Output Attributes syn keyword mupadIdentifier OutputFile OutputOptions " graphics Defining Attributes syn keyword mupadIdentifier Angle AngleRange AngleBegin AngleEnd syn keyword mupadIdentifier Area Axis AxisX AxisY AxisZ Base Top syn keyword mupadIdentifier BaseX TopX BaseY TopY BaseZ TopZ syn keyword mupadIdentifier BaseRadius TopRadius Cells syn keyword mupadIdentifier Center CenterX CenterY CenterZ syn keyword mupadIdentifier Closed ColorData CommandList Contours CoordinateType syn keyword mupadIdentifier Data DensityData DensityFunction From To syn keyword mupadIdentifier FromX ToX FromY ToY FromZ ToZ syn keyword mupadIdentifier Function FunctionX FunctionY FunctionZ syn keyword mupadIdentifier Function1 Function2 Baseline syn keyword mupadIdentifier Generations RotationAngle IterationRules StartRule StepLength syn keyword mupadIdentifier TurtleRules Ground Heights Moves Inequalities syn keyword mupadIdentifier InputFile Iterations StartingPoint syn keyword mupadIdentifier LineColorFunction FillColorFunction syn keyword mupadIdentifier Matrix2d Matrix3d syn keyword mupadIdentifier MeshList MeshListType MeshListNormals syn keyword mupadIdentifier MagneticQuantumNumber MomentumQuantumNumber PrincipalQuantumNumber syn keyword mupadIdentifier Name Normal NormalX NormalY NormalZ syn keyword mupadIdentifier ParameterName ParameterBegin ParameterEnd ParameterRange syn keyword mupadIdentifier Points2d Points3d Radius RadiusFunction syn keyword mupadIdentifier Position PositionX PositionY PositionZ syn keyword mupadIdentifier Scale ScaleX ScaleY ScaleZ Shift ShiftX ShiftY ShiftZ syn keyword mupadIdentifier SemiAxes SemiAxisX SemiAxisY SemiAxisZ syn keyword mupadIdentifier Tangent1 Tangent1X Tangent1Y Tangent1Z syn keyword mupadIdentifier Tangent2 Tangent2X Tangent2Y Tangent2Z syn keyword mupadIdentifier Text TextOrientation TextRotation syn keyword mupadIdentifier UName URange UMin UMax VName VRange VMin VMax syn keyword mupadIdentifier XName XRange XMin XMax YName YRange YMin YMax syn keyword mupadIdentifier ZName ZRange ZMin ZMax ViewingBox syn keyword mupadIdentifier ViewingBoxXMin ViewingBoxXMax ViewingBoxXRange syn keyword mupadIdentifier ViewingBoxYMin ViewingBoxYMax ViewingBoxYRange syn keyword mupadIdentifier ViewingBoxZMin ViewingBoxZMax ViewingBoxZRange syn keyword mupadIdentifier Visible " graphics Axis Attributes syn keyword mupadIdentifier Axes AxesInFront AxesLineColor AxesLineWidth syn keyword mupadIdentifier AxesOrigin AxesOriginX AxesOriginY AxesOriginZ syn keyword mupadIdentifier AxesTips AxesTitleAlignment syn keyword mupadIdentifier AxesTitleAlignmentX AxesTitleAlignmentY AxesTitleAlignmentZ syn keyword mupadIdentifier AxesTitles XAxisTitle YAxisTitle ZAxisTitle syn keyword mupadIdentifier AxesVisible XAxisVisible YAxisVisible ZAxisVisible syn keyword mupadIdentifier YAxisTitleOrientation " graphics Tick Marks Attributes syn keyword mupadIdentifier TicksAnchor XTicksAnchor YTicksAnchor ZTicksAnchor syn keyword mupadIdentifier TicksAt XTicksAt YTicksAt ZTicksAt syn keyword mupadIdentifier TicksBetween XTicksBetween YTicksBetween ZTicksBetween syn keyword mupadIdentifier TicksDistance XTicksDistance YTicksDistance ZTicksDistance syn keyword mupadIdentifier TicksNumber XTicksNumber YTicksNumber ZTicksNumber syn keyword mupadIdentifier TicksVisible XTicksVisible YTicksVisible ZTicksVisible syn keyword mupadIdentifier TicksLength TicksLabelStyle syn keyword mupadIdentifier XTicksLabelStyle YTicksLabelStyle ZTicksLabelStyle syn keyword mupadIdentifier TicksLabelsVisible syn keyword mupadIdentifier XTicksLabelsVisible YTicksLabelsVisible ZTicksLabelsVisible " graphics Grid Lines Attributes syn keyword mupadIdentifier GridInFront GridLineColor SubgridLineColor syn keyword mupadIdentifier GridLineStyle SubgridLineStyle GridLineWidth SubgridLineWidth syn keyword mupadIdentifier GridVisible XGridVisible YGridVisible ZGridVisible syn keyword mupadIdentifier SubgridVisible XSubgridVisible YSubgridVisible ZSubgridVisible " graphics Animation Attributes syn keyword mupadIdentifier Frames TimeRange TimeBegin TimeEnd syn keyword mupadIdentifier VisibleAfter VisibleBefore VisibleFromTo syn keyword mupadIdentifier VisibleAfterEnd VisibleBeforeBegin " graphics Annotation Attributes syn keyword mupadIdentifier Footer Header FooterAlignment HeaderAlignment syn keyword mupadIdentifier HorizontalAlignment TitleAlignment VerticalAlignment syn keyword mupadIdentifier Legend LegendEntry LegendText syn keyword mupadIdentifier LegendAlignment LegendPlacement LegendVisible syn keyword mupadIdentifier Title Titles syn keyword mupadIdentifier TitlePosition TitlePositionX TitlePositionY TitlePositionZ " graphics Layout Attributes syn keyword mupadIdentifier Bottom Left Height Width Layout Rows Columns syn keyword mupadIdentifier Margin BottomMargin TopMargin LeftMargin RightMargin syn keyword mupadIdentifier OutputUnits Spacing " graphics Calculation Attributes syn keyword mupadIdentifier AdaptiveMesh DiscontinuitySearch Mesh SubMesh syn keyword mupadIdentifier UMesh USubMesh VMesh VSubMesh syn keyword mupadIdentifier XMesh XSubMesh YMesh YSubMesh Zmesh " graphics Camera and Lights Attributes syn keyword mupadIdentifier CameraCoordinates CameraDirection syn keyword mupadIdentifier CameraDirectionX CameraDirectionY CameraDirectionZ syn keyword mupadIdentifier FocalPoint FocalPointX FocalPointY FocalPointZ syn keyword mupadIdentifier LightColor Lighting LightIntensity OrthogonalProjection syn keyword mupadIdentifier SpotAngle ViewingAngle syn keyword mupadIdentifier Target TargetX TargetY TargetZ " graphics Presentation Style and Fonts Attributes syn keyword mupadIdentifier ArrowLength syn keyword mupadIdentifier AxesTitleFont FooterFont HeaderFont LegendFont syn keyword mupadIdentifier TextFont TicksLabelFont TitleFont syn keyword mupadIdentifier BackgroundColor BackgroundColor2 BackgroundStyle syn keyword mupadIdentifier BackgroundTransparent Billboarding BorderColor BorderWidth syn keyword mupadIdentifier BoxCenters BoxWidths DrawMode Gap XGap YGap syn keyword mupadIdentifier Notched NotchWidth Scaling YXRatio ZXRatio syn keyword mupadIdentifier VerticalAsymptotesVisible VerticalAsymptotesStyle syn keyword mupadIdentifier VerticalAsymptotesColor VerticalAsymptotesWidth " graphics Line Style Attributes syn keyword mupadIdentifier LineColor LineColor2 LineColorType LineStyle syn keyword mupadIdentifier LinesVisible ULinesVisible VLinesVisible XLinesVisible syn keyword mupadIdentifier YLinesVisible LineWidth MeshVisible " graphics Point Style Attributes syn keyword mupadIdentifier PointColor PointSize PointStyle PointsVisible " graphics Surface Style Attributes syn keyword mupadIdentifier BarStyle Shadows Color Colors FillColor FillColor2 syn keyword mupadIdentifier FillColorTrue FillColorFalse FillColorUnknown FillColorType syn keyword mupadIdentifier Filled FillPattern FillPatterns FillStyle syn keyword mupadIdentifier InterpolationStyle Shading UseNormals " graphics Arrow Style Attributes syn keyword mupadIdentifier TipAngle TipLength TipStyle TubeDiameter syn keyword mupadIdentifier Tubular " graphics meta-documentation Attributes syn keyword mupadIdentifier objectGroupsListed hi def link mupadComment Comment hi def link mupadString String hi def link mupadOperator Operator hi def link mupadSpecial Special hi def link mupadStatement Statement hi def link mupadUnderlined Underlined hi def link mupadConditional Conditional hi def link mupadRepeat Repeat hi def link mupadFunction Function hi def link mupadType Type hi def link mupadDefine Define hi def link mupadIdentifier Identifier " TODO More comprehensive listing. PK&]:N;ffvim80/syntax/gitolite.vimnu[" Vim syntax file " Language: gitolite configuration " URL: https://github.com/sitaramc/gitolite/blob/master/contrib/vim/syntax/gitolite.vim " (https://raw.githubusercontent.com/sitaramc/gitolite/master/contrib/vim/syntax/gitolite.vim) " Maintainer: Sitaram Chamarty " (former Maintainer: Teemu Matilainen ) " Last Change: 2017 Oct 05 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " this seems to be the best way, for now. syntax sync fromstart " ---- common stuff syn match gitoliteGroup '@\S\+' syn match gitoliteComment '#.*' contains=gitoliteTodo syn keyword gitoliteTodo TODO FIXME XXX NOT contained " ---- main section " catch template-data syntax appearing outside template-data section syn match gitoliteRepoError '^\s*repo.*=' syn match gitoliteRepoError '^\s*\S\+\s*=' " this gets overridden later when first word is a perm, don't worry " normal gitolite group and repo lines syn match gitoliteGroupLine '^\s*@\S\+\s*=\s*\S.*$' contains=gitoliteGroup,gitoliteComment syn match gitoliteRepoLine '^\s*repo\s\+[^=]*$' contains=gitoliteRepo,gitoliteGroup,gitoliteComment syn keyword gitoliteRepo repo contained syn keyword gitoliteSpecialRepo CREATOR " normal gitolite rule lines syn match gitoliteRuleLine '^\s*\(-\|C\|R\|RW+\?C\?D\?\)\s[^#]*' contains=gitoliteRule,gitoliteCreateRule,gitoliteDenyRule,gitoliteRefex,gitoliteUsers,gitoliteGroup syn match gitoliteRule '\(^\s*\)\@<=\(-\|C\|R\|RW+\?C\?D\?\)\s\@=' contained syn match gitoliteRefex '\(^\s*\(-\|R\|RW+\?C\?D\?\)\s\+\)\@<=\S.\{-}\(\s*=\)\@=' contains=gitoliteSpecialRefex syn match gitoliteSpecialRefex 'NAME/' syn match gitoliteSpecialRefex '/USER/' syn match gitoliteCreateRule '\(^\s*C\s.*=\s*\)\@<=\S[^#]*[^# ]' contained contains=gitoliteGroup syn match gitoliteDenyRule '\(^\s*-\s.*=\s*\)\@<=\S[^#]*[^# ]' contained " normal gitolite config (and similar) lines syn match gitoliteConfigLine '^\s*\(config\|option\|include\|subconf\)\s[^#]*' contains=gitoliteConfigKW,gitoliteConfigKey,gitoliteConfigVal,gitoliteComment syn keyword gitoliteConfigKW config option include subconf contained syn match gitoliteConfigKey '\(\(config\|option\)\s\+\)\@<=[^ =]*' contained syn match gitoliteConfigVal '\(=\s*\)\@<=\S.*' contained " ---- template-data section syn region gitoliteTemplateLine matchgroup=PreProc start='^=begin template-data$' end='^=end$' contains=gitoliteTplRepoLine,gitoliteTplRoleLine,gitoliteGroup,gitoliteComment,gitoliteTplError syn match gitoliteTplRepoLine '^\s*repo\s\+\S.*=.*' contained contains=gitoliteTplRepo,gitoliteTplTemplates,gitoliteGroup syn keyword gitoliteTplRepo repo contained syn match gitoliteTplTemplates '\(=\s*\)\@<=\S.*' contained contains=gitoliteGroup,gitoliteComment syn match gitoliteTplRoleLine '^\s*\S\+\s*=\s*.*' contained contains=gitoliteTplRole,gitoliteGroup,gitoliteComment syn match gitoliteTplRole '\S\+\s*='he=e-1 contained " catch normal gitolite rules appearing in template-data section syn match gitoliteTplError '^\s*repo[^=]*$' contained syn match gitoliteTplError '^\s*\(-\|R\|RW+\?C\?D\?\)\s'he=e-1 contained syn match gitoliteTplError '^\s*\(config\|option\|include\|subconf\)\s'he=e-1 contained syn match gitoliteTplError '^\s*@\S\+\s*=' contained contains=NONE hi def link gitoliteGroup Identifier hi def link gitoliteComment Comment hi def link gitoliteTodo ToDo hi def link gitoliteRepoError Error hi def link gitoliteGroupLine PreProc hi def link gitoliteRepo Keyword hi def link gitoliteSpecialRepo PreProc hi def link gitoliteRule Keyword hi def link gitoliteCreateRule PreProc hi def link gitoliteDenyRule WarningMsg hi def link gitoliteRefex Constant hi def link gitoliteSpecialRefex PreProc hi def link gitoliteConfigKW Keyword hi def link gitoliteConfigKey Identifier hi def link gitoliteConfigVal String hi def link gitoliteTplRepo Keyword hi def link gitoliteTplTemplates Constant hi def link gitoliteTplRole Constant hi def link gitoliteTplError Error let b:current_syntax = "gitolite" let &cpo = s:cpo_save unlet s:cpo_save PK&]JuY- vim80/syntax/mib.vimnu[" Vim syntax file " Language: Vim syntax file for SNMPv1 and SNMPv2 MIB and SMI files " Maintainer: Martin Smat " Original Author: David Pascoe " Written: Wed Jan 28 14:37:23 GMT--8:00 1998 " Last Changed: Mon Mar 23 2010 if exists("b:current_syntax") finish endif setlocal iskeyword=@,48-57,_,128-167,224-235,- syn keyword mibImplicit ACCESS ANY AUGMENTS BEGIN BIT BITS BOOLEAN CHOICE syn keyword mibImplicit COMPONENTS CONTACT-INFO DEFINITIONS DEFVAL syn keyword mibImplicit DESCRIPTION DISPLAY-HINT END ENTERPRISE EXTERNAL FALSE syn keyword mibImplicit FROM GROUP IMPLICIT IMPLIED IMPORTS INDEX syn keyword mibImplicit LAST-UPDATED MANDATORY-GROUPS MAX-ACCESS syn keyword mibImplicit MIN-ACCESS MODULE MODULE-COMPLIANCE MODULE-IDENTITY syn keyword mibImplicit NOTIFICATION-GROUP NOTIFICATION-TYPE NOTIFICATIONS syn keyword mibImplicit NULL OBJECT-GROUP OBJECT-IDENTITY OBJECT-TYPE syn keyword mibImplicit OBJECTS OF OPTIONAL ORGANIZATION REFERENCE syn keyword mibImplicit REVISION SEQUENCE SET SIZE STATUS SYNTAX syn keyword mibImplicit TEXTUAL-CONVENTION TRAP-TYPE TRUE UNITS VARIABLES syn keyword mibImplicit WRITE-SYNTAX syn keyword mibValue accessible-for-notify current DisplayString syn keyword mibValue deprecated mandatory not-accessible obsolete optional syn keyword mibValue read-create read-only read-write write-only INTEGER syn keyword mibValue Counter Gauge IpAddress OCTET STRING experimental mib-2 syn keyword mibValue TimeTicks RowStatus TruthValue UInteger32 snmpModules syn keyword mibValue Integer32 Counter32 TestAndIncr TimeStamp InstancePointer syn keyword mibValue OBJECT IDENTIFIER Gauge32 AutonomousType Counter64 syn keyword mibValue PhysAddress TimeInterval MacAddress StorageType RowPointer syn keyword mibValue TDomain TAddress ifIndex " Epilogue SMI extensions syn keyword mibEpilogue FORCE-INCLUDE EXCLUDE cookie get-function set-function syn keyword mibEpilogue test-function get-function-async set-function-async syn keyword mibEpilogue test-function-async next-function next-function-async syn keyword mibEpilogue leaf-name syn keyword mibEpilogue DEFAULT contained syn match mibOperator "::=" syn match mibComment "\ *--.\{-}\(--\|$\)" syn match mibNumber "\<['0-9a-fA-FhH]*\>" syn region mibDescription start="\"" end="\"" contains=DEFAULT hi def link mibImplicit Statement hi def link mibOperator Statement hi def link mibComment Comment hi def link mibConstants String hi def link mibNumber Number hi def link mibDescription Identifier hi def link mibEpilogue SpecialChar hi def link mibValue Structure let b:current_syntax = "mib" PK&]B^^vim80/syntax/django.vimnu[" Vim syntax file " Language: Django template " Maintainer: Dave Hodder " Last Change: 2014 Jul 13 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syntax case match " Mark illegal characters syn match djangoError "%}\|}}\|#}" " Django template built-in tags and parameters " 'comment' doesn't appear here because it gets special treatment syn keyword djangoStatement contained autoescape csrf_token empty " FIXME ==, !=, <, >, <=, and >= should be djangoStatements: " syn keyword djangoStatement contained == != < > <= >= syn keyword djangoStatement contained and as block endblock by cycle debug else elif syn keyword djangoStatement contained extends filter endfilter firstof for syn keyword djangoStatement contained endfor if endif ifchanged endifchanged syn keyword djangoStatement contained ifequal endifequal ifnotequal syn keyword djangoStatement contained endifnotequal in include load not now or syn keyword djangoStatement contained parsed regroup reversed spaceless syn keyword djangoStatement contained endspaceless ssi templatetag openblock syn keyword djangoStatement contained closeblock openvariable closevariable syn keyword djangoStatement contained openbrace closebrace opencomment syn keyword djangoStatement contained closecomment widthratio url with endwith syn keyword djangoStatement contained get_current_language trans noop blocktrans syn keyword djangoStatement contained endblocktrans get_available_languages syn keyword djangoStatement contained get_current_language_bidi plural " Django templete built-in filters syn keyword djangoFilter contained add addslashes capfirst center cut date syn keyword djangoFilter contained default default_if_none dictsort syn keyword djangoFilter contained dictsortreversed divisibleby escape escapejs syn keyword djangoFilter contained filesizeformat first fix_ampersands syn keyword djangoFilter contained floatformat get_digit join last length length_is syn keyword djangoFilter contained linebreaks linebreaksbr linenumbers ljust syn keyword djangoFilter contained lower make_list phone2numeric pluralize syn keyword djangoFilter contained pprint random removetags rjust slice slugify syn keyword djangoFilter contained safe safeseq stringformat striptags syn keyword djangoFilter contained time timesince timeuntil title truncatechars syn keyword djangoFilter contained truncatewords truncatewords_html unordered_list upper urlencode syn keyword djangoFilter contained urlize urlizetrunc wordcount wordwrap yesno " Keywords to highlight within comments syn keyword djangoTodo contained TODO FIXME XXX " Django template constants (always surrounded by double quotes) syn region djangoArgument contained start=/"/ skip=/\\"/ end=/"/ " Mark illegal characters within tag and variables blocks syn match djangoTagError contained "#}\|{{\|[^%]}}\|[&#]" syn match djangoVarError contained "#}\|{%\|%}\|[<>!&#%]" " Django template tag and variable blocks syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFilter,djangoArgument,djangoTagError display syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument,djangoVarError display " Django template 'comment' tag and comment block syn region djangoComment start="{%\s*comment\(\s\+.\{-}\)\?%}" end="{%\s*endcomment\s*%}" contains=djangoTodo syn region djangoComBlock start="{#" end="#}" contains=djangoTodo " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link djangoTagBlock PreProc hi def link djangoVarBlock PreProc hi def link djangoStatement Statement hi def link djangoFilter Identifier hi def link djangoArgument Constant hi def link djangoTagError Error hi def link djangoVarError Error hi def link djangoError Error hi def link djangoComment Comment hi def link djangoComBlock Comment hi def link djangoTodo Todo let b:current_syntax = "django" PK&]g=  vim80/syntax/slrnsc.vimnu[" Vim syntax file " Language: Slrn score file (based on slrn 0.9.8.0) " Maintainer: Preben 'Peppe' Guldberg " Last Change: 8 Oct 2004 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " characters in newsgroup names setlocal isk=@,48-57,.,-,_,+ syn match slrnscComment "%.*$" syn match slrnscSectionCom ".].*"lc=2 syn match slrnscGroup contained "\(\k\|\*\)\+" syn match slrnscNumber contained "\d\+" syn match slrnscDate contained "\(\d\{1,2}[-/]\)\{2}\d\{4}" syn match slrnscDelim contained ":" syn match slrnscComma contained "," syn match slrnscOper contained "\~" syn match slrnscEsc contained "\\[ecC<>.]" syn match slrnscEsc contained "[?^]" syn match slrnscEsc contained "[^\\]$\s*$"lc=1 syn keyword slrnscInclude contained include syn match slrnscIncludeLine "^\s*Include\s\+\S.*$" syn region slrnscSection matchgroup=slrnscSectionStd start="^\s*\[" end='\]' contains=slrnscGroup,slrnscComma,slrnscSectionCom syn region slrnscSection matchgroup=slrnscSectionNot start="^\s*\[\~" end='\]' contains=slrnscGroup,slrnscCommas,slrnscSectionCom syn keyword slrnscItem contained Age Bytes Date Expires From Has-Body Lines Message-Id Newsgroup References Subject Xref syn match slrnscScoreItem contained "%.*$" skipempty nextgroup=slrnscScoreItem contains=slrnscComment syn match slrnscScoreItem contained "^\s*Expires:\s*\(\d\{1,2}[-/]\)\{2}\d\{4}\s*$" skipempty nextgroup=slrnscScoreItem contains=slrnscItem,slrnscDelim,slrnscDate syn match slrnscScoreItem contained "^\s*\~\=\(Age\|Bytes\|Has-Body\|Lines\):\s*\d\+\s*$" skipempty nextgroup=slrnscScoreItem contains=slrnscOper,slrnscItem,slrnscDelim,slrnscNumber syn match slrnscScoreItemFill contained ".*$" skipempty nextgroup=slrnscScoreItem contains=slrnscEsc syn match slrnscScoreItem contained "^\s*\~\=\(Date\|From\|Message-Id\|Newsgroup\|References\|Subject\|Xref\):" nextgroup=slrnscScoreItemFill contains=slrnscOper,slrnscItem,slrnscDelim syn region slrnscScoreItem contained matchgroup=Special start="^\s*\~\={::\=" end="^\s*}" skipempty nextgroup=slrnscScoreItem contains=slrnscScoreItem syn keyword slrnscScore contained Score syn match slrnscScoreIdent contained "%.*" syn match slrnScoreLine "^\s*Score::\=\s\+=\=[-+]\=\d\+\s*\(%.*\)\=$" skipempty nextgroup=slrnscScoreItem contains=slrnscScore,slrnscDelim,slrnscOper,slrnscNumber,slrnscScoreIdent " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link slrnscComment Comment hi def link slrnscSectionCom slrnscComment hi def link slrnscGroup String hi def link slrnscNumber Number hi def link slrnscDate Special hi def link slrnscDelim Delimiter hi def link slrnscComma SpecialChar hi def link slrnscOper SpecialChar hi def link slrnscEsc String hi def link slrnscSectionStd Type hi def link slrnscSectionNot Delimiter hi def link slrnscItem Statement hi def link slrnscScore Keyword hi def link slrnscScoreIdent Identifier hi def link slrnscInclude Keyword let b:current_syntax = "slrnsc" "EOF vim: ts=8 noet tw=200 sw=8 sts=0 PK&]Fr##vim80/syntax/jal.vimnu[" Vim syntax file " Language: JAL " Version: 0.1 " Last Change: 2003 May 11 " Maintainer: Mark Gross " This is a syntax definition for the JAL language. " It is based on the Source Forge compiler source code. " https://sourceforge.net/projects/jal/ " " TODO test. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore syn sync lines=250 syn keyword picTodo NOTE TODO XXX contained syn match picIdentifier "[a-z_$][a-z0-9_$]*" syn match picLabel "^[A-Z_$][A-Z0-9_$]*" syn match picLabel "^[A-Z_$][A-Z0-9_$]*:"me=e-1 syn match picASCII "A\='.'" syn match picBinary "B'[0-1]\+'" syn match picDecimal "D'\d\+'" syn match picDecimal "\d\+" syn match picHexadecimal "0x\x\+" syn match picHexadecimal "H'\x\+'" syn match picHexadecimal "[0-9]\x*h" syn match picOctal "O'[0-7]\o*'" syn match picComment ";.*" contains=picTodo syn region picString start=+"+ end=+"+ syn keyword picRegister indf tmr0 pcl status fsr port_a port_b port_c port_d port_e x84_eedata x84_eeadr pclath intcon syn keyword picRegister f877_tmr1l f877_tmr1h f877_t1con f877_t2con f877_ccpr1l f877_ccpr1h f877_ccp1con syn keyword picRegister f877_pir1 f877_pir2 f877_pie1 f877_adcon1 f877_adcon0 f877_pr2 f877_adresl f877_adresh syn keyword picRegister f877_eeadr f877_eedath f877_eeadrh f877_eedata f877_eecon1 f877_eecon2 f628_EECON2 syn keyword picRegister f877_rcsta f877_txsta f877_spbrg f877_txreg f877_rcreg f628_EEDATA f628_EEADR f628_EECON1 " Register --- bits " STATUS syn keyword picRegisterPart status_c status_dc status_z status_pd syn keyword picRegisterPart status_to status_rp0 status_rp1 status_irp " pins syn keyword picRegisterPart pin_a0 pin_a1 pin_a2 pin_a3 pin_a4 pin_a5 syn keyword picRegisterPart pin_b0 pin_b1 pin_b2 pin_b3 pin_b4 pin_b5 pin_b6 pin_b7 syn keyword picRegisterPart pin_c0 pin_c1 pin_c2 pin_c3 pin_c4 pin_c5 pin_c6 pin_c7 syn keyword picRegisterPart pin_d0 pin_d1 pin_d2 pin_d3 pin_d4 pin_d5 pin_d6 pin_d7 syn keyword picRegisterPart pin_e0 pin_e1 pin_e2 syn keyword picPortDir port_a_direction port_b_direction port_c_direction port_d_direction port_e_direction syn match picPinDir "pin_a[012345]_direction" syn match picPinDir "pin_b[01234567]_direction" syn match picPinDir "pin_c[01234567]_direction" syn match picPinDir "pin_d[01234567]_direction" syn match picPinDir "pin_e[012]_direction" " INTCON syn keyword picRegisterPart intcon_gie intcon_eeie intcon_peie intcon_t0ie intcon_inte syn keyword picRegisterPart intcon_rbie intcon_t0if intcon_intf intcon_rbif " TIMER syn keyword picRegisterPart t1ckps1 t1ckps0 t1oscen t1sync tmr1cs tmr1on tmr1ie tmr1if "cpp bits syn keyword picRegisterPart ccp1x ccp1y " adcon bits syn keyword picRegisterPart adcon0_go adcon0_ch0 adcon0_ch1 adcon0_ch2 " EECON syn keyword picRegisterPart eecon1_rd eecon1_wr eecon1_wren eecon1_wrerr eecon1_eepgd syn keyword picRegisterPart f628_eecon1_rd f628_eecon1_wr f628_eecon1_wren f628_eecon1_wrerr " usart syn keyword picRegisterPart tx9 txen sync brgh tx9d syn keyword picRegisterPart spen rx9 cren ferr oerr rx9d syn keyword picRegisterPart TXIF RCIF " OpCodes... syn keyword picOpcode addlw andlw call clrwdt goto iorlw movlw option retfie retlw return sleep sublw tris syn keyword picOpcode xorlw addwf andwf clrf clrw comf decf decfsz incf incfsz retiw iorwf movf movwf nop syn keyword picOpcode rlf rrf subwf swapf xorwf bcf bsf btfsc btfss skpz skpnz setz clrz skpc skpnc setc clrc syn keyword picOpcode skpdc skpndc setdc clrdc movfw tstf bank page HPAGE mullw mulwf cpfseq cpfsgt cpfslt banka bankb syn keyword jalBoolean true false syn keyword jalBoolean off on syn keyword jalBit high low syn keyword jalConstant Input Output all_input all_output syn keyword jalConditional if else then elsif end if syn keyword jalLabel goto syn keyword jalRepeat for while forever loop syn keyword jalStatement procedure function syn keyword jalStatement return end volatile const var syn keyword jalType bit byte syn keyword jalModifier interrupt assembler asm put get syn keyword jalStatement out in is begin at syn keyword jalDirective pragma jump_table target target_clock target_chip name error test assert syn keyword jalPredefined hs xt rc lp internal 16c84 16f84 16f877 sx18 sx28 12c509a 12c508 syn keyword jalPredefined 12ce674 16f628 18f252 18f242 18f442 18f452 12f629 12f675 16f88 syn keyword jalPredefined 16f876 16f873 sx_12 sx18 sx28 pic_12 pic_14 pic_16 syn keyword jalDirective chip osc clock fuses cpu watchdog powerup protection syn keyword jalFunction bank_0 bank_1 bank_2 bank_3 bank_4 bank_5 bank_6 bank_7 trisa trisb trisc trisd trise syn keyword jalFunction _trisa_flush _trisb_flush _trisc_flush _trisd_flush _trise_flush syn keyword jalPIC local idle_loop syn region jalAsm matchgroup=jalAsmKey start="\" end="\" contains=jalComment,jalPreProc,jalLabel,picIdentifier, picLabel,picASCII,picDecimal,picHexadecimal,picOctal,picComment,picString,picRegister,picRigisterPart,picOpcode,picDirective,jalPIC syn region jalAsm matchgroup=jalAsmKey start="\" end=/$/ contains=jalComment,jalPreProc,jalLabel,picIdentifier, picLabel,picASCII,picDecimal,picHexadecimal,picOctal,picComment,picString,picRegister,picRigisterPart,picOpcode,picDirective,jalPIC syn region jalPsudoVars matchgroup=jalPsudoVarsKey start="\<'put\>" end="/" contains=jalComment syn match jalStringEscape contained "#[12][0-9]\=[0-9]\=" syn match jalIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>" syn match jalSymbolOperator "[+\-/*=]" syn match jalSymbolOperator "!" syn match jalSymbolOperator "<" syn match jalSymbolOperator ">" syn match jalSymbolOperator "<=" syn match jalSymbolOperator ">=" syn match jalSymbolOperator "!=" syn match jalSymbolOperator "==" syn match jalSymbolOperator "<<" syn match jalSymbolOperator ">>" syn match jalSymbolOperator "|" syn match jalSymbolOperator "&" syn match jalSymbolOperator "%" syn match jalSymbolOperator "?" syn match jalSymbolOperator "[()]" syn match jalSymbolOperator "[\^.]" syn match jalLabel "[\^]*:" syn match jalNumber "-\=\<\d[0-9_]\+\>" syn match jalHexNumber "0x[0-9A-Fa-f_]\+\>" syn match jalBinNumber "0b[01_]\+\>" " String "wrong strings syn region jalStringError matchgroup=jalStringError start=+"+ end=+"+ end=+$+ contains=jalStringEscape "right strings syn region jalString matchgroup=jalString start=+'+ end=+'+ oneline contains=jalStringEscape " To see the start and end of strings: syn region jalString matchgroup=jalString start=+"+ end=+"+ oneline contains=jalStringEscapeGPC syn keyword jalTodo contained TODO syn region jalComment start=/-- / end=/$/ oneline contains=jalTodo syn region jalComment start=/--\t/ end=/$/ oneline contains=jalTodo syn match jalComment /--\_$/ syn region jalPreProc start="include" end=/$/ contains=JalComment,jalToDo if exists("jal_no_tabs") syn match jalShowTab "\t" endif " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link jalAcces jalStatement hi def link jalBoolean Boolean hi def link jalBit Boolean hi def link jalComment Comment hi def link jalConditional Conditional hi def link jalConstant Constant hi def link jalDelimiter Identifier hi def link jalDirective PreProc hi def link jalException Exception hi def link jalFloat Float hi def link jalFunction Function hi def link jalPsudoVarsKey Function hi def link jalLabel Label hi def link jalMatrixDelimiter Identifier hi def link jalModifier Type hi def link jalNumber Number hi def link jalBinNumber Number hi def link jalHexNumber Number hi def link jalOperator Operator hi def link jalPredefined Constant hi def link jalPreProc PreProc hi def link jalRepeat Repeat hi def link jalStatement Statement hi def link jalString String hi def link jalStringEscape Special hi def link jalStringEscapeGPC Special hi def link jalStringError Error hi def link jalStruct jalStatement hi def link jalSymbolOperator jalOperator hi def link jalTodo Todo hi def link jalType Type hi def link jalUnclassified Statement hi def link jalAsm Assembler hi def link jalError Error hi def link jalAsmKey Statement hi def link jalPIC Statement hi def link jalShowTab Error hi def link picTodo Todo hi def link picComment Comment hi def link picDirective Statement hi def link picLabel Label hi def link picString String hi def link picOpcode Keyword hi def link picRegister Structure hi def link picRegisterPart Special hi def link picPinDir SPecial hi def link picPortDir SPecial hi def link picASCII String hi def link picBinary Number hi def link picDecimal Number hi def link picHexadecimal Number hi def link picOctal Number hi def link picIdentifier Identifier let b:current_syntax = "jal" " vim: ts=8 sw=2 PK&]r^3)3)vim80/syntax/ia64.vimnu[" Vim syntax file " Language: IA-64 (Itanium) assembly language " Maintainer: Parth Malwankar " URL: http://www.geocities.com/pmalwankar (Home Page with link to my Vim page) " http://www.geocities.com/pmalwankar/vim.htm (for VIM) " File Version: 0.7 " Last Change: 2006 Sep 08 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif "ignore case for assembly syn case ignore " Identifier Keyword characters (defines \k) setlocal iskeyword=@,48-57,#,$,.,:,?,@-@,_,~ syn sync minlines=5 " Read the MASM syntax to start with " This is needed as both IA-64 as well as IA-32 instructions are supported source :p:h/masm.vim syn region ia64Comment start="//" end="$" contains=ia64Todo syn region ia64Comment start="/\*" end="\*/" contains=ia64Todo syn match ia64Identifier "[a-zA-Z_$][a-zA-Z0-9_$]*" syn match ia64Directive "\.[a-zA-Z_$][a-zA-Z_$.]\+" syn match ia64Label "[a-zA-Z_$.][a-zA-Z0-9_$.]*\s\=:\>"he=e-1 syn match ia64Label "[a-zA-Z_$.][a-zA-Z0-9_$.]*\s\=::\>"he=e-2 syn match ia64Label "[a-zA-Z_$.][a-zA-Z0-9_$.]*\s\=#\>"he=e-1 syn region ia64string start=+L\="+ skip=+\\\\\|\\"+ end=+"+ syn match ia64Octal "0[0-7_]*\>" syn match ia64Binary "0[bB][01_]*\>" syn match ia64Hex "0[xX][0-9a-fA-F_]*\>" syn match ia64Decimal "[1-9_][0-9_]*\>" syn match ia64Float "[0-9_]*\.[0-9_]*\([eE][+-]\=[0-9_]*\)\=\>" "simple instructions syn keyword ia64opcode add adds addl addp4 alloc and andcm cover epc syn keyword ia64opcode fabs fand fandcm fc flushrs fneg fnegabs for syn keyword ia64opcode fpabs fpack fpneg fpnegabs fselect fand fabdcm syn keyword ia64opcode fc fwb fxor loadrs movl mux1 mux2 or padd4 syn keyword ia64opcode pavgsub1 pavgsub2 popcnt psad1 pshl2 pshl4 pshladd2 syn keyword ia64opcode pshradd2 psub4 rfi rsm rum shl shladd shladdp4 syn keyword ia64opcode shrp ssm sub sum sync.i tak thash syn keyword ia64opcode tpa ttag xor "put to override these being recognized as floats. They are orignally from masm.vim "put here to avoid confusion with float syn match ia64Directive "\.186" syn match ia64Directive "\.286" syn match ia64Directive "\.286c" syn match ia64Directive "\.286p" syn match ia64Directive "\.287" syn match ia64Directive "\.386" syn match ia64Directive "\.386c" syn match ia64Directive "\.386p" syn match ia64Directive "\.387" syn match ia64Directive "\.486" syn match ia64Directive "\.486c" syn match ia64Directive "\.486p" syn match ia64Directive "\.8086" syn match ia64Directive "\.8087" "delimiters syn match ia64delimiter ";;" "operators syn match ia64operators "[\[\]()#,]" syn match ia64operators "\(+\|-\|=\)" "TODO syn match ia64Todo "\(TODO\|XXX\|FIXME\|NOTE\)" "What follows is a long list of regular expressions for parsing the "ia64 instructions that use many completers "br syn match ia64opcode "br\(\(\.\(cond\|call\|ret\|ia\|cloop\|ctop\|cexit\|wtop\|wexit\)\)\=\(\.\(spnt\|dpnt\|sptk\|dptk\)\)\=\(\.few\|\.many\)\=\(\.clr\)\=\)\=\>" "break syn match ia64opcode "break\(\.[ibmfx]\)\=\>" "brp syn match ia64opcode "brp\(\.\(sptk\|dptk\|loop\|exit\)\)\(\.imp\)\=\>" syn match ia64opcode "brp\.ret\(\.\(sptk\|dptk\)\)\{1}\(\.imp\)\=\>" "bsw syn match ia64opcode "bsw\.[01]\>" "chk syn match ia64opcode "chk\.\(s\(\.[im]\)\=\)\>" syn match ia64opcode "chk\.a\.\(clr\|nc\)\>" "clrrrb syn match ia64opcode "clrrrb\(\.pr\)\=\>" "cmp/cmp4 syn match ia64opcode "cmp4\=\.\(eq\|ne\|l[te]\|g[te]\|[lg]tu\|[lg]eu\)\(\.unc\)\=\>" syn match ia64opcode "cmp4\=\.\(eq\|[lgn]e\|[lg]t\)\.\(\(or\(\.andcm\|cm\)\=\)\|\(and\(\(\.or\)\=cm\)\=\)\)\>" "cmpxchg syn match ia64opcode "cmpxchg[1248]\.\(acq\|rel\)\(\.nt1\|\.nta\)\=\>" "czx syn match ia64opcode "czx[12]\.[lr]\>" "dep syn match ia64opcode "dep\(\.z\)\=\>" "extr syn match ia64opcode "extr\(\.u\)\=\>" "fadd syn match ia64opcode "fadd\(\.[sd]\)\=\(\.s[0-3]\)\=\>" "famax/famin syn match ia64opcode "fa\(max\|min\)\(\.s[0-3]\)\=\>" "fchkf/fmax/fmin syn match ia64opcode "f\(chkf\|max\|min\)\(\.s[0-3]\)\=\>" "fclass syn match ia64opcode "fclass\(\.n\=m\)\(\.unc\)\=\>" "fclrf/fpamax syn match ia64opcode "f\(clrf\|pamax\|pamin\)\(\.s[0-3]\)\=\>" "fcmp syn match ia64opcode "fcmp\.\(n\=[lg][te]\|n\=eq\|\(un\)\=ord\)\(\.unc\)\=\(\.s[0-3]\)\=\>" "fcvt/fcvt.xf/fcvt.xuf.pc.sf syn match ia64opcode "fcvt\.\(\(fxu\=\(\.trunc\)\=\(\.s[0-3]\)\=\)\|\(xf\|xuf\(\.[sd]\)\=\(\.s[0-3]\)\=\)\)\>" "fetchadd syn match ia64opcode "fetchadd[48]\.\(acq\|rel\)\(\.nt1\|\.nta\)\=\>" "fma/fmpy/fms syn match ia64opcode "fm\([as]\|py\)\(\.[sd]\)\=\(\.s[0-3]\)\=\>" "fmerge/fpmerge syn match ia64opcode "fp\=merge\.\(ns\|se\=\)\>" "fmix syn match ia64opcode "fmix\.\(lr\|[lr]\)\>" "fnma/fnorm/fnmpy syn match ia64opcode "fn\(ma\|mpy\|orm\)\(\.[sd]\)\=\(\.s[0-3]\)\=\>" "fpcmp syn match ia64opcode "fpcmp\.\(n\=[lg][te]\|n\=eq\|\(un\)\=ord\)\(\.s[0-3]\)\=\>" "fpcvt syn match ia64opcode "fpcvt\.fxu\=\(\(\.trunc\)\=\(\.s[0-3]\)\=\)\>" "fpma/fpmax/fpmin/fpmpy/fpms/fpnma/fpnmpy/fprcpa/fpsqrta syn match ia64opcode "fp\(max\=\|min\|n\=mpy\|ms\|nma\|rcpa\|sqrta\)\(\.s[0-3]\)\=\>" "frcpa/frsqrta syn match ia64opcode "fr\(cpa\|sqrta\)\(\.s[0-3]\)\=\>" "fsetc/famin/fchkf syn match ia64opcode "f\(setc\|amin\|chkf\)\(\.s[0-3]\)\=\>" "fsub syn match ia64opcode "fsub\(\.[sd]\)\=\(\.s[0-3]\)\=\>" "fswap syn match ia64opcode "fswap\(\.n[lr]\=\)\=\>" "fsxt syn match ia64opcode "fsxt\.[lr]\>" "getf syn match ia64opcode "getf\.\([sd]\|exp\|sig\)\>" "invala syn match ia64opcode "invala\(\.[ae]\)\=\>" "itc/itr syn match ia64opcode "it[cr]\.[id]\>" "ld syn match ia64opcode "ld[1248]\>\|ld[1248]\(\.\(sa\=\|a\|c\.\(nc\|clr\(\.acq\)\=\)\|acq\|bias\)\)\=\(\.nt[1a]\)\=\>" syn match ia64opcode "ld8\.fill\(\.nt[1a]\)\=\>" "ldf syn match ia64opcode "ldf[sde8]\(\(\.\(sa\=\|a\|c\.\(nc\|clr\)\)\)\=\(\.nt[1a]\)\=\)\=\>" syn match ia64opcode "ldf\.fill\(\.nt[1a]\)\=\>" "ldfp syn match ia64opcode "ldfp[sd8]\(\(\.\(sa\=\|a\|c\.\(nc\|clr\)\)\)\=\(\.nt[1a]\)\=\)\=\>" "lfetch syn match ia64opcode "lfetch\(\.fault\(\.excl\)\=\|\.excl\)\=\(\.nt[12a]\)\=\>" "mf syn match ia64opcode "mf\(\.a\)\=\>" "mix syn match ia64opcode "mix[124]\.[lr]\>" "mov syn match ia64opcode "mov\(\.[im]\)\=\>" syn match ia64opcode "mov\(\.ret\)\=\(\(\.sptk\|\.dptk\)\=\(\.imp\)\=\)\=\>" "nop syn match ia64opcode "nop\(\.[ibmfx]\)\=\>" "pack syn match ia64opcode "pack\(2\.[su]ss\|4\.sss\)\>" "padd //padd4 added to keywords syn match ia64opcode "padd[12]\(\.\(sss\|uus\|uuu\)\)\=\>" "pavg syn match ia64opcode "pavg[12]\(\.raz\)\=\>" "pcmp syn match ia64opcode "pcmp[124]\.\(eq\|gt\)\>" "pmax/pmin syn match ia64opcode "pm\(ax\|in\)\(\(1\.u\)\|2\)\>" "pmpy syn match ia64opcode "pmpy2\.[rl]\>" "pmpyshr syn match ia64opcode "pmpyshr2\(\.u\)\=\>" "probe syn match ia64opcode "probe\.[rw]\>" syn match ia64opcode "probe\.\(\(r\|w\|rw\)\.fault\)\>" "pshr syn match ia64opcode "pshr[24]\(\.u\)\=\>" "psub syn match ia64opcode "psub[12]\(\.\(sss\|uu[su]\)\)\=\>" "ptc syn match ia64opcode "ptc\.\(l\|e\|ga\=\)\>" "ptr syn match ia64opcode "ptr\.\(d\|i\)\>" "setf syn match ia64opcode "setf\.\(s\|d\|exp\|sig\)\>" "shr syn match ia64opcode "shr\(\.u\)\=\>" "srlz syn match ia64opcode "srlz\(\.[id]\)\>" "st syn match ia64opcode "st[1248]\(\.rel\)\=\(\.nta\)\=\>" syn match ia64opcode "st8\.spill\(\.nta\)\=\>" "stf syn match ia64opcode "stf[1248]\(\.nta\)\=\>" syn match ia64opcode "stf\.spill\(\.nta\)\=\>" "sxt syn match ia64opcode "sxt[124]\>" "tbit/tnat syn match ia64opcode "t\(bit\|nat\)\(\.nz\|\.z\)\=\(\.\(unc\|or\(\.andcm\|cm\)\=\|and\(\.orcm\|cm\)\=\)\)\=\>" "unpack syn match ia64opcode "unpack[124]\.[lh]\>" "xchq syn match ia64opcode "xchg[1248]\(\.nt[1a]\)\=\>" "xma/xmpy syn match ia64opcode "xm\(a\|py\)\.[lh]u\=\>" "zxt syn match ia64opcode "zxt[124]\>" "The regex for different ia64 registers are given below "limits the rXXX and fXXX and cr suffix in the range 0-127 syn match ia64registers "\([fr]\|cr\)\([0-9]\|[1-9][0-9]\|1[0-1][0-9]\|12[0-7]\)\{1}\>" "branch ia64registers syn match ia64registers "b[0-7]\>" "predicate ia64registers syn match ia64registers "p\([0-9]\|[1-5][0-9]\|6[0-3]\)\>" "application ia64registers syn match ia64registers "ar\.\(fpsr\|mat\|unat\|rnat\|pfs\|bsp\|bspstore\|rsc\|lc\|ec\|ccv\|itc\|k[0-7]\)\>" "ia32 AR's syn match ia64registers "ar\.\(eflag\|fcr\|csd\|ssd\|cflg\|fsr\|fir\|fdr\)\>" "sp/gp/pr/pr.rot/rp syn keyword ia64registers sp gp pr pr.rot rp ip tp "in/out/local syn match ia64registers "\(in\|out\|loc\)\([0-9]\|[1-8][0-9]\|9[0-5]\)\>" "argument ia64registers syn match ia64registers "farg[0-7]\>" "return value ia64registers syn match ia64registers "fret[0-7]\>" "psr syn match ia64registers "psr\(\.\(l\|um\)\)\=\>" "cr syn match ia64registers "cr\.\(dcr\|itm\|iva\|pta\|ipsr\|isr\|ifa\|iip\|itir\|iipa\|ifs\|iim\|iha\|lid\|ivr\|tpr\|eoi\|irr[0-3]\|itv\|pmv\|lrr[01]\|cmcv\)\>" "Indirect registers syn match ia64registers "\(cpuid\|dbr\|ibr\|pkr\|pmc\|pmd\|rr\|itr\|dtr\)\>" "MUX permutations for 8-bit elements syn match ia64registers "\(@rev\|@mix\|@shuf\|@alt\|@brcst\)\>" "floating point classes syn match ia64registers "\(@nat\|@qnan\|@snan\|@pos\|@neg\|@zero\|@unorm\|@norm\|@inf\)\>" "link relocation operators syn match ia64registers "\(@\(\(\(gp\|sec\|seg\|image\)rel\)\|ltoff\|fptr\|ptloff\|ltv\|section\)\)\>" "Data allocation syntax syn match ia64data "data[1248]\(\(\(\.ua\)\=\(\.msb\|\.lsb\)\=\)\|\(\(\.msb\|\.lsb\)\=\(\.ua\)\=\)\)\=\>" syn match ia64data "real\([48]\|1[06]\)\(\(\(\.ua\)\=\(\.msb\|\.lsb\)\=\)\|\(\(\.msb\|\.lsb\)\=\(\.ua\)\=\)\)\=\>" syn match ia64data "stringz\=\(\(\(\.ua\)\=\(\.msb\|\.lsb\)\=\)\|\(\(\.msb\|\.lsb\)\=\(\.ua\)\=\)\)\=\>" " Define the default highlighting. " Only when an item doesn't have highlighting yet "put masm groups with our groups hi def link masmOperator ia64operator hi def link masmDirective ia64Directive hi def link masmOpcode ia64Opcode hi def link masmIdentifier ia64Identifier hi def link masmFloat ia64Float "ia64 specific stuff hi def link ia64Label Define hi def link ia64Comment Comment hi def link ia64Directive Type hi def link ia64opcode Statement hi def link ia64registers Operator hi def link ia64string String hi def link ia64Hex Number hi def link ia64Binary Number hi def link ia64Octal Number hi def link ia64Float Float hi def link ia64Decimal Number hi def link ia64Identifier Identifier hi def link ia64data Type hi def link ia64delimiter Delimiter hi def link ia64operator Operator hi def link ia64Todo Todo let b:current_syntax = "ia64" " vim: ts=8 sw=2 PK&]q9!!vim80/syntax/csc.vimnu[" Vim syntax file " Language: Essbase script " Maintainer: Raul Segura Acevedo " Last change: 2011 Dec 25 by Thilo Six " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " folds: fix/endfix and comments sy region EssFold start="\" "hex number sy match cscNumber contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>" " Flag the first zero of an octal number as something special sy match cscOctal contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>" sy match cscFloat contained "\d\+f" "floating point number, with dot, optional exponent sy match cscFloat contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=" "floating point number, starting with a dot, optional exponent sy match cscFloat contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>" "floating point number, without dot, with exponent sy match cscFloat contained "\d\+e[-+]\=\d\+[fl]\=\>" sy region cscComment start="/\*" end="\*/" contains=@cscCommentGroup,cscSpaceE fold sy match cscCommentE "\*/" sy keyword cscIfError IF ELSE ENDIF ELSEIF sy keyword cscCondition contained IF ELSE ENDIF ELSEIF sy keyword cscFunction contained VARPER VAR UDA TRUNCATE SYD SUMRANGE SUM sy keyword cscFunction contained STDDEVRANGE STDDEV SPARENTVAL SLN SIBLINGS SHIFT sy keyword cscFunction contained SANCESTVAL RSIBLINGS ROUND REMAINDER RELATIVE PTD sy keyword cscFunction contained PRIOR POWER PARENTVAL NPV NEXT MOD MINRANGE MIN sy keyword cscFunction contained MDSHIFT MDPARENTVAL MDANCESTVAL MAXRANGE MAX MATCH sy keyword cscFunction contained LSIBLINGS LEVMBRS LEV sy keyword cscFunction contained ISUDA ISSIBLING ISSAMELEV ISSAMEGEN ISPARENT ISMBR sy keyword cscFunction contained ISLEV ISISIBLING ISIPARENT ISIDESC ISICHILD ISIBLINGS sy keyword cscFunction contained ISIANCEST ISGEN ISDESC ISCHILD ISANCEST ISACCTYPE sy keyword cscFunction contained IRSIBLINGS IRR INTEREST INT ILSIBLINGS IDESCENDANTS sy keyword cscFunction contained ICHILDREN IANCESTORS IALLANCESTORS sy keyword cscFunction contained GROWTH GENMBRS GEN FACTORIAL DISCOUNT DESCENDANTS sy keyword cscFunction contained DECLINE CHILDREN CURRMBRRANGE CURLEV CURGEN sy keyword cscFunction contained COMPOUNDGROWTH COMPOUND AVGRANGE AVG ANCESTVAL sy keyword cscFunction contained ANCESTORS ALLANCESTORS ACCUM ABS sy keyword cscFunction contained @VARPER @VAR @UDA @TRUNCATE @SYD @SUMRANGE @SUM sy keyword cscFunction contained @STDDEVRANGE @STDDEV @SPARENTVAL @SLN @SIBLINGS @SHIFT sy keyword cscFunction contained @SANCESTVAL @RSIBLINGS @ROUND @REMAINDER @RELATIVE @PTD sy keyword cscFunction contained @PRIOR @POWER @PARENTVAL @NPV @NEXT @MOD @MINRANGE @MIN sy keyword cscFunction contained @MDSHIFT @MDPARENTVAL @MDANCESTVAL @MAXRANGE @MAX @MATCH sy keyword cscFunction contained @LSIBLINGS @LEVMBRS @LEV sy keyword cscFunction contained @ISUDA @ISSIBLING @ISSAMELEV @ISSAMEGEN @ISPARENT @ISMBR sy keyword cscFunction contained @ISLEV @ISISIBLING @ISIPARENT @ISIDESC @ISICHILD @ISIBLINGS sy keyword cscFunction contained @ISIANCEST @ISGEN @ISDESC @ISCHILD @ISANCEST @ISACCTYPE sy keyword cscFunction contained @IRSIBLINGS @IRR @INTEREST @INT @ILSIBLINGS @IDESCENDANTS sy keyword cscFunction contained @ICHILDREN @IANCESTORS @IALLANCESTORS sy keyword cscFunction contained @GROWTH @GENMBRS @GEN @FACTORIAL @DISCOUNT @DESCENDANTS sy keyword cscFunction contained @DECLINE @CHILDREN @CURRMBRRANGE @CURLEV @CURGEN sy keyword cscFunction contained @COMPOUNDGROWTH @COMPOUND @AVGRANGE @AVG @ANCESTVAL sy keyword cscFunction contained @ANCESTORS @ALLANCESTORS @ACCUM @ABS sy match cscFunction contained "@" sy match cscError "@\s*\a*" contains=cscFunction sy match cscStatement "&" sy keyword cscStatement AGG ARRAY VAR CCONV CLEARDATA DATACOPY sy match cscComE contained "^\s*CALC.*" sy match cscComE contained "^\s*CLEARBLOCK.*" sy match cscComE contained "^\s*SET.*" sy match cscComE contained "^\s*FIX" sy match cscComE contained "^\s*ENDFIX" sy match cscComE contained "^\s*ENDLOOP" sy match cscComE contained "^\s*LOOP" " sy keyword cscCom FIX ENDFIX LOOP ENDLOOP sy match cscComW "^\s*CALC.*" sy match cscCom "^\s*CALC\s*ALL" sy match cscCom "^\s*CALC\s*AVERAGE" sy match cscCom "^\s*CALC\s*DIM" sy match cscCom "^\s*CALC\s*FIRST" sy match cscCom "^\s*CALC\s*LAST" sy match cscCom "^\s*CALC\s*TWOPASS" sy match cscComW "^\s*CLEARBLOCK.*" sy match cscCom "^\s*CLEARBLOCK\s\+ALL" sy match cscCom "^\s*CLEARBLOCK\s\+UPPER" sy match cscCom "^\s*CLEARBLOCK\s\+NONINPUT" sy match cscComW "^\s*\{}~]\+\s*\|->\s*\)*=\([^=]\@=\|$\)' sy region cscFormula transparent matchgroup=cscVarName start='\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\s*=\([^=]\@=\|\n\)' skip='"[^"]*"' end=';' contains=ALLBUT,cscFormula,cscFormulaIn,cscBPMacro,cscCondition sy region cscFormulaIn matchgroup=cscVarName transparent start='\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\(->\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\)*\s*=\([^=]\@=\|$\)' skip='"[^"]*"' end=';' contains=ALLBUT,cscFormula,cscFormulaIn,cscBPMacro,cscCondition contained sy match cscEq "==" endif if !exists("csc_minlines") let csc_minlines = 50 " mostly for () constructs endif exec "sy sync ccomment cscComment minlines=" . csc_minlines " Define the default highlighting. " Only when an item doesn't have highlighting yet hi cscVarName term=bold ctermfg=9 gui=bold guifg=blue hi def link cscNumber Number hi def link cscOctal Number hi def link cscFloat Float hi def link cscParenE Error hi def link cscCommentE Error hi def link cscSpaceE Error hi def link cscError Error hi def link cscString String hi def link cscComment Comment hi def link cscTodo Todo hi def link cscStatement Statement hi def link cscIfError Error hi def link cscEqError Error hi def link cscFunction Statement hi def link cscCondition Statement hi def link cscWarn WarningMsg hi def link cscComE Error hi def link cscCom Statement hi def link cscComW WarningMsg hi def link cscBPMacro Identifier hi def link cscBPW WarningMsg let b:current_syntax = "csc" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]Y. . vim80/syntax/dictconf.vimnu[" Vim syntax file " Language: dict(1) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword dictconfTodo contained TODO FIXME XXX NOTE syn region dictconfComment display oneline start='#' end='$' \ contains=dictconfTodo,@Spell syn match dictconfBegin display '^' \ nextgroup=dictconfKeyword,dictconfComment \ skipwhite syn keyword dictconfKeyword contained server \ nextgroup=dictconfServer skipwhite syn keyword dictconfKeyword contained pager \ nextgroup=dictconfPager syn match dictconfServer contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictconfServerOptG skipwhite syn region dictconfServer contained display oneline \ start=+"+ skip=+""+ end=+"+ \ nextgroup=dictconfServerOptG skipwhite syn region dictconfServerOptG contained transparent \ matchgroup=dictconfServerOptsD start='{' \ matchgroup=dictconfServerOptsD end='}' \ contains=dictconfServerOpts,dictconfComment syn keyword dictconfServerOpts contained port \ nextgroup=dictconfNumber skipwhite syn keyword dictconfServerOpts contained user \ nextgroup=dictconfUsername skipwhite syn match dictconfUsername contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictconfSecret skipwhite syn region dictconfUsername contained display oneline \ start=+"+ skip=+""+ end=+"+ \ nextgroup=dictconfSecret skipwhite syn match dictconfSecret contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' syn region dictconfSecret contained display oneline \ start=+"+ skip=+""+ end=+"+ syn match dictconfNumber contained '\<\d\+\>' syn match dictconfPager contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' syn region dictconfPager contained display oneline \ start=+"+ skip=+""+ end=+"+ hi def link dictconfTodo Todo hi def link dictconfComment Comment hi def link dictconfKeyword Keyword hi def link dictconfServer String hi def link dictconfServerOptsD Delimiter hi def link dictconfServerOpts Identifier hi def link dictconfUsername String hi def link dictconfSecret Special hi def link dictconfNumber Number hi def link dictconfPager String let b:current_syntax = "dictconf" let &cpo = s:cpo_save unlet s:cpo_save PK&]_UB22vim80/syntax/ada.vimnu["---------------------------------------------------------------------------- " Description: Vim Ada syntax file " Language: Ada (2005) " $Id: ada.vim 887 2008-07-08 14:29:01Z krischik $ " Copyright: Copyright (C) 2006 Martin Krischik " Maintainer: Martin Krischik " David A. Wheeler " Simon Bradley " Contributors: Preben Randhol. " $Author: krischik $ " $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $ " Version: 4.6 " $Revision: 887 $ " $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/syntax/ada.vim $ " http://www.dwheeler.com/vim " History: 24.05.2006 MK Unified Headers " 26.05.2006 MK ' should not be in iskeyword. " 16.07.2006 MK Ada-Mode as vim-ball " 02.10.2006 MK Better folding. " 15.10.2006 MK Bram's suggestion for runtime integration " 05.11.2006 MK Spell check for comments and strings only " 05.11.2006 MK Bram suggested to save on spaces " Help Page: help ft-ada-syntax "------------------------------------------------------------------------------ " The formal spec of Ada 2005 (ARM) is the "Ada 2005 Reference Manual". " For more Ada 2005 info, see http://www.gnuada.org and http://www.adapower.com. " " This vim syntax file works on vim 7.0 only and makes use of most of Voim 7.0 " advanced features. "------------------------------------------------------------------------------ if exists("b:current_syntax") || version < 700 finish endif let s:keepcpo= &cpo set cpo&vim let b:current_syntax = "ada" " Section: Ada is entirely case-insensitive. {{{1 " syntax case ignore " Section: Highlighting commands {{{1 " " There are 72 reserved words in total in Ada2005. Some keywords are " used in more than one way. For example: " 1. "end" is a general keyword, but "end if" ends a Conditional. " 2. "then" is a conditional, but "and then" is an operator. " for b:Item in g:ada#Keywords " Standard Exceptions (including I/O). " We'll highlight the standard exceptions, similar to vim's Python mode. " It's possible to redefine the standard exceptions as something else, " but doing so is very bad practice, so simply highlighting them makes sense. if b:Item['kind'] == "x" execute "syntax keyword adaException " . b:Item['word'] endif if b:Item['kind'] == "a" execute 'syntax match adaAttribute "\V' . b:Item['word'] . '"' endif " We don't normally highlight types in package Standard " (Integer, Character, Float, etc.). I don't think it looks good " with the other type keywords, and many Ada programs define " so many of their own types that it looks inconsistent. " However, if you want this highlighting, turn on "ada_standard_types". " For package Standard's definition, see ARM section A.1. if b:Item['kind'] == "t" && exists ("g:ada_standard_types") execute "syntax keyword adaBuiltinType " . b:Item['word'] endif endfor " Section: others {{{1 " syntax keyword adaLabel others " Section: Operatoren {{{1 " syntax keyword adaOperator abs mod not rem xor syntax match adaOperator "\" syntax match adaOperator "\" syntax match adaOperator "\" syntax match adaOperator "\" syntax match adaOperator "[-+*/<>&]" syntax keyword adaOperator ** syntax match adaOperator "[/<>]=" syntax keyword adaOperator => syntax match adaOperator "\.\." syntax match adaOperator "=" " Section: <> {{{1 " " Handle the box, <>, specially: " syntax keyword adaSpecial <> " Section: rainbow color {{{1 " if exists("g:ada_rainbow_color") syntax match adaSpecial "[:;.,]" call rainbow_parenthsis#LoadRound () call rainbow_parenthsis#Activate () else syntax match adaSpecial "[:;().,]" endif " Section: := {{{1 " " We won't map "adaAssignment" by default, but we need to map ":=" to " something or the "=" inside it will be mislabelled as an operator. " Note that in Ada, assignment (:=) is not considered an operator. " syntax match adaAssignment ":=" " Section: Numbers, including floating point, exponents, and alternate bases. {{{1 " syntax match adaNumber "\<\d[0-9_]*\(\.\d[0-9_]*\)\=\([Ee][+-]\=\d[0-9_]*\)\=\>" syntax match adaNumber "\<\d\d\=#\x[0-9A-Fa-f_]*\(\.\x[0-9A-Fa-f_]*\)\=#\([Ee][+-]\=\d[0-9_]*\)\=" " Section: Identify leading numeric signs {{{1 " " In "A-5" the "-" is an operator, " but in "A:=-5" the "-" is a sign. This " handles "A3+-5" (etc.) correctly. " This assumes that if you put a " don't put a space after +/- when it's used " as an operator, you won't " put a space before it either -- which is true " in code I've seen. " syntax match adaSign "[[:space:]<>=(,|:;&*/+-][+-]\d"lc=1,hs=s+1,he=e-1,me=e-1 " Section: Labels for the goto statement. {{{1 " syntax region adaLabel start="<<" end=">>" " Section: Boolean Constants {{{1 " Boolean Constants. syntax keyword adaBoolean true false " Section: Warn C/C++ {{{1 " " Warn people who try to use C/C++ notation erroneously: " syntax match adaError "//" syntax match adaError "/\*" syntax match adaError "==" " Section: Space Errors {{{1 " if exists("g:ada_space_errors") if !exists("g:ada_no_trail_space_error") syntax match adaSpaceError excludenl "\s\+$" endif if !exists("g:ada_no_tab_space_error") syntax match adaSpaceError " \+\t"me=e-1 endif if !exists("g:ada_all_tab_usage") syntax match adaSpecial "\t" endif endif " Section: end {{{1 " Unless special ("end loop", "end if", etc.), "end" marks the end of a " begin, package, task etc. Assiging it to adaEnd. syntax match adaEnd /\/ syntax keyword adaPreproc pragma syntax keyword adaRepeat exit for loop reverse while syntax match adaRepeat "\" syntax keyword adaStatement accept delay goto raise requeue return syntax keyword adaStatement terminate syntax match adaStatement "\" " Section: Handle Ada's record keywords. {{{1 " " 'record' usually starts a structure, but "with null record;" does not, " and 'end record;' ends a structure. The ordering here is critical - " 'record;' matches a "with null record", so make it a keyword (this can " match when the 'with' or 'null' is on a previous line). " We see the "end" in "end record" before the word record, so we match that " pattern as adaStructure (and it won't match the "record;" pattern). " syntax match adaStructure "\" contains=adaRecord syntax match adaStructure "\" contains=adaRecord syntax match adaKeyword "\" syntax match adaConditional "\" syntax match adaConditional "\" syntax match adaConditional "\" syntax match adaConditional "\" syntax match adaConditional "\" syntax keyword adaConditional if case select syntax keyword adaConditional elsif when " Section: other keywords {{{1 syntax match adaKeyword "\" contains=adaRecord syntax keyword adaKeyword all do exception in new null out syntax keyword adaKeyword separate until overriding " Section: begin keywords {{{1 " " These keywords begin various constructs, and you _might_ want to " highlight them differently. " syntax keyword adaBegin begin body declare entry generic syntax keyword adaBegin protected renames task syntax match adaBegin "\" contains=adaFunction syntax match adaBegin "\" contains=adaProcedure syntax match adaBegin "\" contains=adaPackage if exists("ada_with_gnat_project_files") syntax keyword adaBegin project endif " Section: with, use {{{1 " if exists("ada_withuse_ordinary") " Don't be fancy. Display "with" and "use" as ordinary keywords in all cases. syntax keyword adaKeyword with use else " Highlight "with" and "use" clauses like C's "#include" when they're used " to reference other compilation units; otherwise they're ordinary keywords. " If we have vim 6.0 or later, we'll use its advanced pattern-matching " capabilities so that we won't match leading spaces. syntax match adaKeyword "\" syntax match adaKeyword "\" syntax match adaBeginWith "^\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc syntax match adaSemiWith ";\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc syntax match adaInc "\" contained contains=NONE syntax match adaInc "\" contained contains=NONE syntax match adaInc "\" contained contains=NONE " Recognize "with null record" as a keyword (even the "record"). syntax match adaKeyword "\" " Consider generic formal parameters of subprograms and packages as keywords. syntax match adaKeyword ";\s*\zswith\s\+\(function\|procedure\|package\)\>" syntax match adaKeyword "^\s*\zswith\s\+\(function\|procedure\|package\)\>" endif " Section: String and character constants. {{{1 " syntax region adaString contains=@Spell start=+"+ skip=+""+ end=+"+ syntax match adaCharacter "'.'" " Section: Todo (only highlighted in comments) {{{1 " syntax keyword adaTodo contained TODO FIXME XXX NOTE " Section: Comments. {{{1 " syntax region adaComment \ oneline \ contains=adaTodo,adaLineError,@Spell \ start="--" \ end="$" " Section: line errors {{{1 " " Note: Line errors have become quite slow with Vim 7.0 " if exists("g:ada_line_errors") syntax match adaLineError "\(^.\{79}\)\@<=." contains=ALL containedin=ALL endif " Section: syntax folding {{{1 " " Syntax folding is very tricky - for now I still suggest to use " indent folding " if exists("g:ada_folding") && g:ada_folding[0] == 's' if stridx (g:ada_folding, 'p') >= 0 syntax region adaPackage \ start="\(\\|\\)\s*\z(\k*\)" \ end="end\s\+\z1\s*;" \ keepend extend transparent fold contains=ALL endif if stridx (g:ada_folding, 'f') >= 0 syntax region adaProcedure \ start="\\s*\z(\k*\)" \ end="\\s\+\z1\s*;" \ keepend extend transparent fold contains=ALL syntax region adaFunction \ start="\\s*\z(\k*\)" \ end="end\s\+\z1\s*;" \ keepend extend transparent fold contains=ALL endif if stridx (g:ada_folding, 'f') >= 0 syntax region adaRecord \ start="\" \ end="\" \ keepend extend transparent fold contains=ALL endif endif " Section: The default methods for highlighting. Can be overridden later. {{{1 " highlight def link adaCharacter Character highlight def link adaComment Comment highlight def link adaConditional Conditional highlight def link adaKeyword Keyword highlight def link adaLabel Label highlight def link adaNumber Number highlight def link adaSign Number highlight def link adaOperator Operator highlight def link adaPreproc PreProc highlight def link adaRepeat Repeat highlight def link adaSpecial Special highlight def link adaStatement Statement highlight def link adaString String highlight def link adaStructure Structure highlight def link adaTodo Todo highlight def link adaType Type highlight def link adaTypedef Typedef highlight def link adaStorageClass StorageClass highlight def link adaBoolean Boolean highlight def link adaException Exception highlight def link adaAttribute Tag highlight def link adaInc Include highlight def link adaError Error highlight def link adaSpaceError Error highlight def link adaLineError Error highlight def link adaBuiltinType Type highlight def link adaAssignment Special " Subsection: Begin, End {{{2 " if exists ("ada_begin_preproc") " This is the old default display: highlight def link adaBegin PreProc highlight def link adaEnd PreProc else " This is the new default display: highlight def link adaBegin Keyword highlight def link adaEnd Keyword endif " Section: sync {{{1 " " We don't need to look backwards to highlight correctly; " this speeds things up greatly. syntax sync minlines=1 maxlines=1 let &cpo = s:keepcpo unlet s:keepcpo finish " 1}}} "------------------------------------------------------------------------------ " Copyright (C) 2006 Martin Krischik " " Vim is Charityware - see ":help license" or uganda.txt for licence details. "------------------------------------------------------------------------------ "vim: textwidth=78 nowrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab "vim: foldmethod=marker PK&]ޜx+vim80/syntax/netrc.vimnu[" Vim syntax file " Language: netrc(5) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2010-01-03 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword netrcKeyword machine nextgroup=netrcMachine skipwhite skipnl syn keyword netrcKeyword account \ login \ nextgroup=netrcLogin,netrcSpecial skipwhite skipnl syn keyword netrcKeyword password nextgroup=netrcPassword skipwhite skipnl syn keyword netrcKeyword default syn keyword netrcKeyword macdef \ nextgroup=netrcInit,netrcMacroName skipwhite skipnl syn region netrcMacro contained start='.' end='^$' syn match netrcMachine contained display '\S\+' syn match netrcMachine contained display '"[^\\"]*\(\\.[^\\"]*\)*"' syn match netrcLogin contained display '\S\+' syn match netrcLogin contained display '"[^\\"]*\(\\.[^\\"]*\)*"' syn match netrcPassword contained display '\S\+' syn match netrcPassword contained display '"[^\\"]*\(\\.[^\\"]*\)*"' syn match netrcMacroName contained display '\S\+' \ nextgroup=netrcMacro skipwhite skipnl syn match netrcMacroName contained display '"[^\\"]*\(\\.[^\\"]*\)*"' \ nextgroup=netrcMacro skipwhite skipnl syn keyword netrcSpecial contained anonymous syn match netrcInit contained '\ " Maintainer: Evan Hanson " Previous Author: Dirk van Deun " Previous Maintainer: Sergey Khorev " URL: https://foldling.org/vim/syntax/scheme.vim if exists('b:current_syntax') finish endif let s:cpo = &cpo set cpo&vim syn match schemeParentheses "[^ '`\t\n()\[\]";]\+" syn match schemeParentheses "[)\]]" syn match schemeIdentifier /[^ '`\t\n()\[\]"|;][^ '`\t\n()\[\]"|;]*/ syn region schemeQuote matchgroup=schemeData start=/'[`']*/ end=/[ \t\n()\[\]";]/me=e-1 syn region schemeQuote matchgroup=schemeData start=/'['`]*"/ skip=/\\[\\"]/ end=/"/ syn region schemeQuote matchgroup=schemeData start=/'['`]*|/ skip=/\\[\\|]/ end=/|/ syn region schemeQuote matchgroup=schemeData start=/'['`]*#\?(/ end=/)/ contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster syn region schemeQuasiquote matchgroup=schemeData start=/`['`]*/ end=/[ \t\n()\[\]";]/me=e-1 syn region schemeQuasiquote matchgroup=schemeData start=/`['`]*#\?(/ end=/)/ contains=ALLBUT,schemeQuote,schemeQuoteForm,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster syn region schemeUnquote matchgroup=schemeParentheses start=/,/ end=/[ `'\t\n\[\]()";]/me=e-1 contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster syn region schemeUnquote matchgroup=schemeParentheses start=/,@/ end=/[ `'\t\n\[\]()";]/me=e-1 contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster syn region schemeUnquote matchgroup=schemeParentheses start=/,(/ end=/)/ contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster syn region schemeUnquote matchgroup=schemeParentheses start=/,@(/ end=/)/ contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster syn region schemeQuoteForm matchgroup=schemeData start=/(/ end=/)/ contained contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster syn region schemeQuasiquoteForm matchgroup=schemeData start=/(/ end=/)/ contained contains=ALLBUT,schemeQuote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster syn region schemeString start=/\(\\\)\@/ syn match schemeNumber /#x[+\-]*[0-9a-fA-F]\+\>/ syn match schemeBoolean /#t\(rue\)\?/ syn match schemeBoolean /#f\(alse\)\?/ syn match schemeCharacter /#\\.[^ `'\t\n\[\]()]*/ syn match schemeCharacter /#\\x[0-9a-fA-F]\+/ syn match schemeComment /;.*$/ syn region schemeMultilineComment start=/#|/ end=/|#/ contains=schemeMultilineComment syn region schemeForm matchgroup=schemeParentheses start="(" end=")" contains=ALLBUT,schemeUnquote,schemeDatumCommentForm,@schemeImportCluster syn region schemeForm matchgroup=schemeParentheses start="\[" end="\]" contains=ALLBUT,schemeUnquote,schemeDatumCommentForm,@schemeImportCluster syn region schemeVector matchgroup=schemeData start="#(" end=")" contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster syn region schemeVector matchgroup=schemeData start="#[fsu]\d\+(" end=")" contains=schemeNumber,schemeComment,schemeDatumComment if exists('g:is_chicken') || exists('b:is_chicken') syn region schemeImport matchgroup=schemeImport start="\(([ \t\n]*\)\@<=\(import\|import-syntax\|use\|require-extension\)\(-for-syntax\)\?\>" end=")"me=e-1 contained contains=schemeImportForm,schemeIdentifier,schemeComment,schemeDatumComment else syn region schemeImport matchgroup=schemeImport start="\(([ \t\n]*\)\@<=\(import\)\>" end=")"me=e-1 contained contains=schemeImportForm,schemeIdentifier,schemeComment,schemeDatumComment endif syn match schemeImportKeyword "\(([ \t\n]*\)\@<=\(except\|only\|prefix\|rename\|srfi\)\>" syn region schemeImportForm matchgroup=schemeParentheses start="(" end=")" contained contains=schemeIdentifier,schemeComment,schemeDatumComment,@schemeImportCluster syn cluster schemeImportCluster contains=schemeImportForm,schemeImportKeyword syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*/ end=/[ \t\n()\[\]";]/me=e-1 syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*"/ skip=/\\[\\"]/ end=/"/ syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*|/ skip=/\\[\\|]/ end=/|/ syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*\(#\([usf]\d\+\)\?\)\?(/ end=/)/ contains=schemeDatumCommentForm syn region schemeDatumCommentForm start="(" end=")" contained contains=schemeDatumCommentForm syn cluster schemeSyntaxCluster contains=schemeFunction,schemeKeyword,schemeSyntax,schemeExtraSyntax,schemeLibrarySyntax,schemeSyntaxSyntax syn keyword schemeLibrarySyntax define-library syn keyword schemeLibrarySyntax export syn keyword schemeLibrarySyntax include syn keyword schemeLibrarySyntax include-ci syn keyword schemeLibrarySyntax include-library-declarations syn keyword schemeLibrarySyntax library syn keyword schemeLibrarySyntax cond-expand syn keyword schemeSyntaxSyntax define-syntax syn keyword schemeSyntaxSyntax let-syntax syn keyword schemeSyntaxSyntax letrec-syntax syn keyword schemeSyntaxSyntax syntax-rules syn keyword schemeSyntax => syn keyword schemeSyntax and syn keyword schemeSyntax begin syn keyword schemeSyntax case syn keyword schemeSyntax case-lambda syn keyword schemeSyntax cond syn keyword schemeSyntax define syn keyword schemeSyntax define-record-type syn keyword schemeSyntax define-values syn keyword schemeSyntax delay syn keyword schemeSyntax delay-force syn keyword schemeSyntax do syn keyword schemeSyntax else syn keyword schemeSyntax guard syn keyword schemeSyntax if syn keyword schemeSyntax lambda syn keyword schemeSyntax let syn keyword schemeSyntax let* syn keyword schemeSyntax let*-values syn keyword schemeSyntax let-values syn keyword schemeSyntax letrec syn keyword schemeSyntax letrec* syn keyword schemeSyntax or syn keyword schemeSyntax parameterize syn keyword schemeSyntax quasiquote syn keyword schemeSyntax quote syn keyword schemeSyntax set! syn keyword schemeSyntax unless syn keyword schemeSyntax unquote syn keyword schemeSyntax unquote-splicing syn keyword schemeSyntax when syn keyword schemeFunction * syn keyword schemeFunction + syn keyword schemeFunction - syn keyword schemeFunction / syn keyword schemeFunction < syn keyword schemeFunction <= syn keyword schemeFunction = syn keyword schemeFunction > syn keyword schemeFunction >= syn keyword schemeFunction abs syn keyword schemeFunction acos syn keyword schemeFunction acos syn keyword schemeFunction angle syn keyword schemeFunction append syn keyword schemeFunction apply syn keyword schemeFunction asin syn keyword schemeFunction assoc syn keyword schemeFunction assq syn keyword schemeFunction assv syn keyword schemeFunction atan syn keyword schemeFunction binary-port? syn keyword schemeFunction boolean=? syn keyword schemeFunction boolean? syn keyword schemeFunction bytevector syn keyword schemeFunction bytevector-append syn keyword schemeFunction bytevector-append syn keyword schemeFunction bytevector-copy syn keyword schemeFunction bytevector-copy! syn keyword schemeFunction bytevector-length syn keyword schemeFunction bytevector-u8-ref syn keyword schemeFunction bytevector-u8-set! syn keyword schemeFunction bytevector? syn keyword schemeFunction caaaar syn keyword schemeFunction caaadr syn keyword schemeFunction caaar syn keyword schemeFunction caadar syn keyword schemeFunction caaddr syn keyword schemeFunction caadr syn keyword schemeFunction caar syn keyword schemeFunction cadaar syn keyword schemeFunction cadadr syn keyword schemeFunction cadar syn keyword schemeFunction caddar syn keyword schemeFunction cadddr syn keyword schemeFunction caddr syn keyword schemeFunction cadr syn keyword schemeFunction call-with-current-continuation syn keyword schemeFunction call-with-input-file syn keyword schemeFunction call-with-output-file syn keyword schemeFunction call-with-port syn keyword schemeFunction call-with-values syn keyword schemeFunction call/cc syn keyword schemeFunction car syn keyword schemeFunction cdaaar syn keyword schemeFunction cdaadr syn keyword schemeFunction cdaar syn keyword schemeFunction cdadar syn keyword schemeFunction cdaddr syn keyword schemeFunction cdadr syn keyword schemeFunction cdar syn keyword schemeFunction cddaar syn keyword schemeFunction cddadr syn keyword schemeFunction cddar syn keyword schemeFunction cdddar syn keyword schemeFunction cddddr syn keyword schemeFunction cdddr syn keyword schemeFunction cddr syn keyword schemeFunction cdr syn keyword schemeFunction ceiling syn keyword schemeFunction char->integer syn keyword schemeFunction char-alphabetic? syn keyword schemeFunction char-ci<=? syn keyword schemeFunction char-ci=? syn keyword schemeFunction char-ci>? syn keyword schemeFunction char-downcase syn keyword schemeFunction char-foldcase syn keyword schemeFunction char-lower-case? syn keyword schemeFunction char-numeric? syn keyword schemeFunction char-ready? syn keyword schemeFunction char-upcase syn keyword schemeFunction char-upper-case? syn keyword schemeFunction char-whitespace? syn keyword schemeFunction char<=? syn keyword schemeFunction char=? syn keyword schemeFunction char>? syn keyword schemeFunction char? syn keyword schemeFunction close-input-port syn keyword schemeFunction close-output-port syn keyword schemeFunction close-port syn keyword schemeFunction command-line syn keyword schemeFunction complex? syn keyword schemeFunction cons syn keyword schemeFunction cos syn keyword schemeFunction current-error-port syn keyword schemeFunction current-input-port syn keyword schemeFunction current-jiffy syn keyword schemeFunction current-output-port syn keyword schemeFunction current-second syn keyword schemeFunction delete-file syn keyword schemeFunction denominator syn keyword schemeFunction digit-value syn keyword schemeFunction display syn keyword schemeFunction dynamic-wind syn keyword schemeFunction emergency-exit syn keyword schemeFunction environment syn keyword schemeFunction eof-object syn keyword schemeFunction eof-object? syn keyword schemeFunction eq? syn keyword schemeFunction equal? syn keyword schemeFunction eqv? syn keyword schemeFunction error syn keyword schemeFunction error-object-irritants syn keyword schemeFunction error-object-message syn keyword schemeFunction error-object? syn keyword schemeFunction eval syn keyword schemeFunction even? syn keyword schemeFunction exact syn keyword schemeFunction exact->inexact syn keyword schemeFunction exact-integer-sqrt syn keyword schemeFunction exact-integer? syn keyword schemeFunction exact? syn keyword schemeFunction exit syn keyword schemeFunction exp syn keyword schemeFunction expt syn keyword schemeFunction features syn keyword schemeFunction file-error? syn keyword schemeFunction file-exists? syn keyword schemeFunction finite? syn keyword schemeFunction floor syn keyword schemeFunction floor-quotient syn keyword schemeFunction floor-remainder syn keyword schemeFunction floor/ syn keyword schemeFunction flush-output-port syn keyword schemeFunction for-each syn keyword schemeFunction force syn keyword schemeFunction gcd syn keyword schemeFunction get-environment-variable syn keyword schemeFunction get-environment-variables syn keyword schemeFunction get-output-bytevector syn keyword schemeFunction get-output-string syn keyword schemeFunction imag-part syn keyword schemeFunction inexact syn keyword schemeFunction inexact->exact syn keyword schemeFunction inexact? syn keyword schemeFunction infinite? syn keyword schemeFunction input-port-open? syn keyword schemeFunction input-port? syn keyword schemeFunction integer->char syn keyword schemeFunction integer? syn keyword schemeFunction interaction-environment syn keyword schemeFunction jiffies-per-second syn keyword schemeFunction lcm syn keyword schemeFunction length syn keyword schemeFunction list syn keyword schemeFunction list->string syn keyword schemeFunction list->vector syn keyword schemeFunction list-copy syn keyword schemeFunction list-ref syn keyword schemeFunction list-set! syn keyword schemeFunction list-tail syn keyword schemeFunction list? syn keyword schemeFunction load syn keyword schemeFunction log syn keyword schemeFunction magnitude syn keyword schemeFunction make-bytevector syn keyword schemeFunction make-list syn keyword schemeFunction make-parameter syn keyword schemeFunction make-polar syn keyword schemeFunction make-promise syn keyword schemeFunction make-rectangular syn keyword schemeFunction make-string syn keyword schemeFunction make-vector syn keyword schemeFunction map syn keyword schemeFunction max syn keyword schemeFunction member syn keyword schemeFunction memq syn keyword schemeFunction memv syn keyword schemeFunction min syn keyword schemeFunction modulo syn keyword schemeFunction nan? syn keyword schemeFunction negative? syn keyword schemeFunction newline syn keyword schemeFunction not syn keyword schemeFunction null-environment syn keyword schemeFunction null? syn keyword schemeFunction number->string syn keyword schemeFunction number? syn keyword schemeFunction numerator syn keyword schemeFunction odd? syn keyword schemeFunction open-binary-input-file syn keyword schemeFunction open-binary-output-file syn keyword schemeFunction open-input-bytevector syn keyword schemeFunction open-input-file syn keyword schemeFunction open-input-string syn keyword schemeFunction open-output-bytevector syn keyword schemeFunction open-output-file syn keyword schemeFunction open-output-string syn keyword schemeFunction output-port-open? syn keyword schemeFunction output-port? syn keyword schemeFunction pair? syn keyword schemeFunction peek-char syn keyword schemeFunction peek-u8 syn keyword schemeFunction port? syn keyword schemeFunction positive? syn keyword schemeFunction procedure? syn keyword schemeFunction promise? syn keyword schemeFunction quotient syn keyword schemeFunction raise syn keyword schemeFunction raise-continuable syn keyword schemeFunction rational? syn keyword schemeFunction rationalize syn keyword schemeFunction read syn keyword schemeFunction read-bytevector syn keyword schemeFunction read-bytevector! syn keyword schemeFunction read-char syn keyword schemeFunction read-error? syn keyword schemeFunction read-line syn keyword schemeFunction read-string syn keyword schemeFunction read-u8 syn keyword schemeFunction real-part syn keyword schemeFunction real? syn keyword schemeFunction remainder syn keyword schemeFunction reverse syn keyword schemeFunction round syn keyword schemeFunction scheme-report-environment syn keyword schemeFunction set-car! syn keyword schemeFunction set-cdr! syn keyword schemeFunction sin syn keyword schemeFunction sqrt syn keyword schemeFunction square syn keyword schemeFunction string syn keyword schemeFunction string->list syn keyword schemeFunction string->number syn keyword schemeFunction string->symbol syn keyword schemeFunction string->utf8 syn keyword schemeFunction string->vector syn keyword schemeFunction string-append syn keyword schemeFunction string-ci<=? syn keyword schemeFunction string-ci=? syn keyword schemeFunction string-ci>? syn keyword schemeFunction string-copy syn keyword schemeFunction string-copy! syn keyword schemeFunction string-downcase syn keyword schemeFunction string-fill! syn keyword schemeFunction string-foldcase syn keyword schemeFunction string-for-each syn keyword schemeFunction string-length syn keyword schemeFunction string-map syn keyword schemeFunction string-ref syn keyword schemeFunction string-set! syn keyword schemeFunction string-upcase syn keyword schemeFunction string<=? syn keyword schemeFunction string=? syn keyword schemeFunction string>? syn keyword schemeFunction string? syn keyword schemeFunction substring syn keyword schemeFunction symbol->string syn keyword schemeFunction symbol=? syn keyword schemeFunction symbol? syn keyword schemeFunction syntax-error syn keyword schemeFunction tan syn keyword schemeFunction textual-port? syn keyword schemeFunction transcript-off syn keyword schemeFunction transcript-on syn keyword schemeFunction truncate syn keyword schemeFunction truncate-quotient syn keyword schemeFunction truncate-remainder syn keyword schemeFunction truncate/ syn keyword schemeFunction u8-ready? syn keyword schemeFunction utf8->string syn keyword schemeFunction values syn keyword schemeFunction vector syn keyword schemeFunction vector->list syn keyword schemeFunction vector->string syn keyword schemeFunction vector-append syn keyword schemeFunction vector-copy syn keyword schemeFunction vector-copy! syn keyword schemeFunction vector-fill! syn keyword schemeFunction vector-for-each syn keyword schemeFunction vector-length syn keyword schemeFunction vector-map syn keyword schemeFunction vector-ref syn keyword schemeFunction vector-set! syn keyword schemeFunction vector? syn keyword schemeFunction with-exception-handler syn keyword schemeFunction with-input-from-file syn keyword schemeFunction with-output-to-file syn keyword schemeFunction write syn keyword schemeFunction write-bytevector syn keyword schemeFunction write-char syn keyword schemeFunction write-shared syn keyword schemeFunction write-simple syn keyword schemeFunction write-string syn keyword schemeFunction write-u8 syn keyword schemeFunction zero? hi def link schemeBoolean Boolean hi def link schemeCharacter Character hi def link schemeComment Comment hi def link schemeConstant Constant hi def link schemeData Delimiter hi def link schemeDatumComment Comment hi def link schemeDatumCommentForm Comment hi def link schemeDelimiter Delimiter hi def link schemeError Error hi def link schemeExtraSyntax Underlined hi def link schemeFunction Function hi def link schemeIdentifier Normal hi def link schemeImport PreProc hi def link schemeImportKeyword PreProc hi def link schemeKeyword Type hi def link schemeLibrarySyntax PreProc hi def link schemeMultilineComment Comment hi def link schemeNumber Number hi def link schemeParentheses Normal hi def link schemeQuasiquote Delimiter hi def link schemeQuote Delimiter hi def link schemeSpecialSyntax Special hi def link schemeString String hi def link schemeSymbol Normal hi def link schemeSyntax Statement hi def link schemeSyntaxSyntax PreProc hi def link schemeTypeSyntax Type let b:did_scheme_syntax = 1 if exists('b:is_chicken') || exists('g:is_chicken') exe 'ru! syntax/chicken.vim' endif unlet b:did_scheme_syntax let b:current_syntax = 'scheme' let &cpo = s:cpo unlet s:cpo PK&]#wTɣɣvim80/syntax/sqlanywhere.vimnu[" Vim syntax file " Language: SQL, Adaptive Server Anywhere " Maintainer: David Fishburn " Last Change: 2013 May 13 " Version: 16.0.0 " Description: Updated to Adaptive Server Anywhere 16.0.0 " Updated to Adaptive Server Anywhere 12.0.1 (including spatial data) " Updated to Adaptive Server Anywhere 11.0.1 " Updated to Adaptive Server Anywhere 10.0.1 " Updated to Adaptive Server Anywhere 9.0.2 " Updated to Adaptive Server Anywhere 9.0.1 " Updated to Adaptive Server Anywhere 9.0.0 " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " The SQL reserved words, defined as keywords. syn keyword sqlSpecial false null true " common functions syn keyword sqlFunction abs argn avg bintohex bintostr syn keyword sqlFunction byte_length byte_substr char_length syn keyword sqlFunction compare count count_big datalength date syn keyword sqlFunction date_format dateadd datediff datename syn keyword sqlFunction datepart day dayname days debug_eng syn keyword sqlFunction dense_rank density dialect difference syn keyword sqlFunction dow estimate estimate_source evaluate syn keyword sqlFunction experience_estimate explanation syn keyword sqlFunction get_identity graphical_plan syn keyword sqlFunction graphical_ulplan greater grouping syn keyword sqlFunction hextobin hextoint hour hours identity syn keyword sqlFunction ifnull index_estimate inttohex isdate syn keyword sqlFunction isencrypted isnull isnumeric syn keyword sqlFunction lang_message length lesser like_end syn keyword sqlFunction like_start list long_ulplan lookup max syn keyword sqlFunction min minute minutes month monthname syn keyword sqlFunction months newid now nullif number syn keyword sqlFunction percent_rank plan quarter rand rank syn keyword sqlFunction regexp_compile regexp_compile_patindex syn keyword sqlFunction remainder rewrite rowid second seconds syn keyword sqlFunction short_ulplan similar sortkey soundex syn keyword sqlFunction stddev stack_trace str string strtobin strtouuid stuff syn keyword sqlFunction subpartition substr substring sum switchoffset sysdatetimeoffset syn keyword sqlFunction textptr todate todatetimeoffset today totimestamp traceback transactsql syn keyword sqlFunction ts_index_statistics ts_table_statistics syn keyword sqlFunction tsequal ulplan user_id user_name utc_now syn keyword sqlFunction uuidtostr varexists variance watcomsql syn keyword sqlFunction weeks wsql_state year years ymd " 9.0.1 functions syn keyword sqlFunction acos asin atan atn2 cast ceiling convert cos cot syn keyword sqlFunction char_length coalesce dateformat datetime degrees exp syn keyword sqlFunction floor getdate insertstr syn keyword sqlFunction log log10 lower mod pi power syn keyword sqlFunction property radians replicate round sign sin syn keyword sqlFunction sqldialect tan truncate truncnum syn keyword sqlFunction base64_encode base64_decode syn keyword sqlFunction hash compress decompress encrypt decrypt " 11.0.1 functions syn keyword sqlFunction connection_extended_property text_handle_vector_match syn keyword sqlFunction read_client_file write_client_file " 12.0.1 functions syn keyword sqlFunction http_response_header " string functions syn keyword sqlFunction ascii char left ltrim repeat syn keyword sqlFunction space right rtrim trim lcase ucase syn keyword sqlFunction locate charindex patindex replace syn keyword sqlFunction errormsg csconvert " property functions syn keyword sqlFunction db_id db_name property_name syn keyword sqlFunction property_description property_number syn keyword sqlFunction next_connection next_database property syn keyword sqlFunction connection_property db_property db_extended_property syn keyword sqlFunction event_parmeter event_condition event_condition_name " sa_ procedures syn keyword sqlFunction sa_add_index_consultant_analysis syn keyword sqlFunction sa_add_workload_query syn keyword sqlFunction sa_app_deregister syn keyword sqlFunction sa_app_get_infoStr syn keyword sqlFunction sa_app_get_status syn keyword sqlFunction sa_app_register syn keyword sqlFunction sa_app_registration_unlock syn keyword sqlFunction sa_app_set_infoStr syn keyword sqlFunction sa_audit_string syn keyword sqlFunction sa_check_commit syn keyword sqlFunction sa_checkpoint_execute syn keyword sqlFunction sa_conn_activity syn keyword sqlFunction sa_conn_compression_info syn keyword sqlFunction sa_conn_deregister syn keyword sqlFunction sa_conn_info syn keyword sqlFunction sa_conn_properties syn keyword sqlFunction sa_conn_properties_by_conn syn keyword sqlFunction sa_conn_properties_by_name syn keyword sqlFunction sa_conn_register syn keyword sqlFunction sa_conn_set_status syn keyword sqlFunction sa_create_analysis_from_query syn keyword sqlFunction sa_db_info syn keyword sqlFunction sa_db_properties syn keyword sqlFunction sa_disable_auditing_type syn keyword sqlFunction sa_disable_index syn keyword sqlFunction sa_disk_free_space syn keyword sqlFunction sa_enable_auditing_type syn keyword sqlFunction sa_enable_index syn keyword sqlFunction sa_end_forward_to syn keyword sqlFunction sa_eng_properties syn keyword sqlFunction sa_event_schedules syn keyword sqlFunction sa_exec_script syn keyword sqlFunction sa_flush_cache syn keyword sqlFunction sa_flush_statistics syn keyword sqlFunction sa_forward_to syn keyword sqlFunction sa_get_dtt syn keyword sqlFunction sa_get_histogram syn keyword sqlFunction sa_get_request_profile syn keyword sqlFunction sa_get_request_profile_sub syn keyword sqlFunction sa_get_request_times syn keyword sqlFunction sa_get_server_messages syn keyword sqlFunction sa_get_simulated_scale_factors syn keyword sqlFunction sa_get_workload_capture_status syn keyword sqlFunction sa_index_density syn keyword sqlFunction sa_index_levels syn keyword sqlFunction sa_index_statistics syn keyword sqlFunction sa_internal_alter_index_ability syn keyword sqlFunction sa_internal_create_analysis_from_query syn keyword sqlFunction sa_internal_disk_free_space syn keyword sqlFunction sa_internal_get_dtt syn keyword sqlFunction sa_internal_get_histogram syn keyword sqlFunction sa_internal_get_request_times syn keyword sqlFunction sa_internal_get_simulated_scale_factors syn keyword sqlFunction sa_internal_get_workload_capture_status syn keyword sqlFunction sa_internal_index_density syn keyword sqlFunction sa_internal_index_levels syn keyword sqlFunction sa_internal_index_statistics syn keyword sqlFunction sa_internal_java_loaded_classes syn keyword sqlFunction sa_internal_locks syn keyword sqlFunction sa_internal_pause_workload_capture syn keyword sqlFunction sa_internal_procedure_profile syn keyword sqlFunction sa_internal_procedure_profile_summary syn keyword sqlFunction sa_internal_read_backup_history syn keyword sqlFunction sa_internal_recommend_indexes syn keyword sqlFunction sa_internal_reset_identity syn keyword sqlFunction sa_internal_resume_workload_capture syn keyword sqlFunction sa_internal_start_workload_capture syn keyword sqlFunction sa_internal_stop_index_consultant syn keyword sqlFunction sa_internal_stop_workload_capture syn keyword sqlFunction sa_internal_table_fragmentation syn keyword sqlFunction sa_internal_table_page_usage syn keyword sqlFunction sa_internal_table_stats syn keyword sqlFunction sa_internal_virtual_sysindex syn keyword sqlFunction sa_internal_virtual_sysixcol syn keyword sqlFunction sa_java_loaded_classes syn keyword sqlFunction sa_jdk_version syn keyword sqlFunction sa_locks syn keyword sqlFunction sa_make_object syn keyword sqlFunction sa_pause_workload_capture syn keyword sqlFunction sa_proc_debug_attach_to_connection syn keyword sqlFunction sa_proc_debug_connect syn keyword sqlFunction sa_proc_debug_detach_from_connection syn keyword sqlFunction sa_proc_debug_disconnect syn keyword sqlFunction sa_proc_debug_get_connection_name syn keyword sqlFunction sa_proc_debug_release_connection syn keyword sqlFunction sa_proc_debug_request syn keyword sqlFunction sa_proc_debug_version syn keyword sqlFunction sa_proc_debug_wait_for_connection syn keyword sqlFunction sa_procedure_profile syn keyword sqlFunction sa_procedure_profile_summary syn keyword sqlFunction sa_read_backup_history syn keyword sqlFunction sa_recommend_indexes syn keyword sqlFunction sa_recompile_views syn keyword sqlFunction sa_remove_index_consultant_analysis syn keyword sqlFunction sa_remove_index_consultant_workload syn keyword sqlFunction sa_reset_identity syn keyword sqlFunction sa_resume_workload_capture syn keyword sqlFunction sa_server_option syn keyword sqlFunction sa_set_simulated_scale_factor syn keyword sqlFunction sa_setremoteuser syn keyword sqlFunction sa_setsubscription syn keyword sqlFunction sa_start_recording_commits syn keyword sqlFunction sa_start_workload_capture syn keyword sqlFunction sa_statement_text syn keyword sqlFunction sa_stop_index_consultant syn keyword sqlFunction sa_stop_recording_commits syn keyword sqlFunction sa_stop_workload_capture syn keyword sqlFunction sa_sync syn keyword sqlFunction sa_sync_sub syn keyword sqlFunction sa_table_fragmentation syn keyword sqlFunction sa_table_page_usage syn keyword sqlFunction sa_table_stats syn keyword sqlFunction sa_update_index_consultant_workload syn keyword sqlFunction sa_validate syn keyword sqlFunction sa_virtual_sysindex syn keyword sqlFunction sa_virtual_sysixcol " sp_ procedures syn keyword sqlFunction sp_addalias syn keyword sqlFunction sp_addauditrecord syn keyword sqlFunction sp_adddumpdevice syn keyword sqlFunction sp_addgroup syn keyword sqlFunction sp_addlanguage syn keyword sqlFunction sp_addlogin syn keyword sqlFunction sp_addmessage syn keyword sqlFunction sp_addremotelogin syn keyword sqlFunction sp_addsegment syn keyword sqlFunction sp_addserver syn keyword sqlFunction sp_addthreshold syn keyword sqlFunction sp_addtype syn keyword sqlFunction sp_adduser syn keyword sqlFunction sp_auditdatabase syn keyword sqlFunction sp_auditlogin syn keyword sqlFunction sp_auditobject syn keyword sqlFunction sp_auditoption syn keyword sqlFunction sp_auditsproc syn keyword sqlFunction sp_bindefault syn keyword sqlFunction sp_bindmsg syn keyword sqlFunction sp_bindrule syn keyword sqlFunction sp_changedbowner syn keyword sqlFunction sp_changegroup syn keyword sqlFunction sp_checknames syn keyword sqlFunction sp_checkperms syn keyword sqlFunction sp_checkreswords syn keyword sqlFunction sp_clearstats syn keyword sqlFunction sp_column_privileges syn keyword sqlFunction sp_columns syn keyword sqlFunction sp_commonkey syn keyword sqlFunction sp_configure syn keyword sqlFunction sp_cursorinfo syn keyword sqlFunction sp_databases syn keyword sqlFunction sp_datatype_info syn keyword sqlFunction sp_dboption syn keyword sqlFunction sp_dbremap syn keyword sqlFunction sp_depends syn keyword sqlFunction sp_diskdefault syn keyword sqlFunction sp_displaylogin syn keyword sqlFunction sp_dropalias syn keyword sqlFunction sp_dropdevice syn keyword sqlFunction sp_dropgroup syn keyword sqlFunction sp_dropkey syn keyword sqlFunction sp_droplanguage syn keyword sqlFunction sp_droplogin syn keyword sqlFunction sp_dropmessage syn keyword sqlFunction sp_dropremotelogin syn keyword sqlFunction sp_dropsegment syn keyword sqlFunction sp_dropserver syn keyword sqlFunction sp_dropthreshold syn keyword sqlFunction sp_droptype syn keyword sqlFunction sp_dropuser syn keyword sqlFunction sp_estspace syn keyword sqlFunction sp_extendsegment syn keyword sqlFunction sp_fkeys syn keyword sqlFunction sp_foreignkey syn keyword sqlFunction sp_getmessage syn keyword sqlFunction sp_help syn keyword sqlFunction sp_helpconstraint syn keyword sqlFunction sp_helpdb syn keyword sqlFunction sp_helpdevice syn keyword sqlFunction sp_helpgroup syn keyword sqlFunction sp_helpindex syn keyword sqlFunction sp_helpjoins syn keyword sqlFunction sp_helpkey syn keyword sqlFunction sp_helplanguage syn keyword sqlFunction sp_helplog syn keyword sqlFunction sp_helpprotect syn keyword sqlFunction sp_helpremotelogin syn keyword sqlFunction sp_helpsegment syn keyword sqlFunction sp_helpserver syn keyword sqlFunction sp_helpsort syn keyword sqlFunction sp_helptext syn keyword sqlFunction sp_helpthreshold syn keyword sqlFunction sp_helpuser syn keyword sqlFunction sp_indsuspect syn keyword sqlFunction sp_lock syn keyword sqlFunction sp_locklogin syn keyword sqlFunction sp_logdevice syn keyword sqlFunction sp_login_environment syn keyword sqlFunction sp_modifylogin syn keyword sqlFunction sp_modifythreshold syn keyword sqlFunction sp_monitor syn keyword sqlFunction sp_password syn keyword sqlFunction sp_pkeys syn keyword sqlFunction sp_placeobject syn keyword sqlFunction sp_primarykey syn keyword sqlFunction sp_procxmode syn keyword sqlFunction sp_recompile syn keyword sqlFunction sp_remap syn keyword sqlFunction sp_remote_columns syn keyword sqlFunction sp_remote_exported_keys syn keyword sqlFunction sp_remote_imported_keys syn keyword sqlFunction sp_remote_pcols syn keyword sqlFunction sp_remote_primary_keys syn keyword sqlFunction sp_remote_procedures syn keyword sqlFunction sp_remote_tables syn keyword sqlFunction sp_remoteoption syn keyword sqlFunction sp_rename syn keyword sqlFunction sp_renamedb syn keyword sqlFunction sp_reportstats syn keyword sqlFunction sp_reset_tsql_environment syn keyword sqlFunction sp_role syn keyword sqlFunction sp_server_info syn keyword sqlFunction sp_servercaps syn keyword sqlFunction sp_serverinfo syn keyword sqlFunction sp_serveroption syn keyword sqlFunction sp_setlangalias syn keyword sqlFunction sp_setreplicate syn keyword sqlFunction sp_setrepproc syn keyword sqlFunction sp_setreptable syn keyword sqlFunction sp_spaceused syn keyword sqlFunction sp_special_columns syn keyword sqlFunction sp_sproc_columns syn keyword sqlFunction sp_statistics syn keyword sqlFunction sp_stored_procedures syn keyword sqlFunction sp_syntax syn keyword sqlFunction sp_table_privileges syn keyword sqlFunction sp_tables syn keyword sqlFunction sp_tsql_environment syn keyword sqlFunction sp_tsql_feature_not_supported syn keyword sqlFunction sp_unbindefault syn keyword sqlFunction sp_unbindmsg syn keyword sqlFunction sp_unbindrule syn keyword sqlFunction sp_volchanged syn keyword sqlFunction sp_who syn keyword sqlFunction xp_scanf syn keyword sqlFunction xp_sprintf " server functions syn keyword sqlFunction col_length syn keyword sqlFunction col_name syn keyword sqlFunction index_col syn keyword sqlFunction object_id syn keyword sqlFunction object_name syn keyword sqlFunction proc_role syn keyword sqlFunction show_role syn keyword sqlFunction xp_cmdshell syn keyword sqlFunction xp_msver syn keyword sqlFunction xp_read_file syn keyword sqlFunction xp_real_cmdshell syn keyword sqlFunction xp_real_read_file syn keyword sqlFunction xp_real_sendmail syn keyword sqlFunction xp_real_startmail syn keyword sqlFunction xp_real_startsmtp syn keyword sqlFunction xp_real_stopmail syn keyword sqlFunction xp_real_stopsmtp syn keyword sqlFunction xp_real_write_file syn keyword sqlFunction xp_scanf syn keyword sqlFunction xp_sendmail syn keyword sqlFunction xp_sprintf syn keyword sqlFunction xp_startmail syn keyword sqlFunction xp_startsmtp syn keyword sqlFunction xp_stopmail syn keyword sqlFunction xp_stopsmtp syn keyword sqlFunction xp_write_file " http functions syn keyword sqlFunction http_header http_variable syn keyword sqlFunction next_http_header next_http_response_header next_http_variable syn keyword sqlFunction sa_set_http_header sa_set_http_option syn keyword sqlFunction sa_http_variable_info sa_http_header_info " http functions 9.0.1 syn keyword sqlFunction http_encode http_decode syn keyword sqlFunction html_encode html_decode " XML function support syn keyword sqlFunction openxml xmlelement xmlforest xmlgen xmlconcat xmlagg syn keyword sqlFunction xmlattributes " Spatial Compatibility Functions syn keyword sqlFunction ST_BdMPolyFromText syn keyword sqlFunction ST_BdMPolyFromWKB syn keyword sqlFunction ST_BdPolyFromText syn keyword sqlFunction ST_BdPolyFromWKB syn keyword sqlFunction ST_CPolyFromText syn keyword sqlFunction ST_CPolyFromWKB syn keyword sqlFunction ST_CircularFromTxt syn keyword sqlFunction ST_CircularFromWKB syn keyword sqlFunction ST_CompoundFromTxt syn keyword sqlFunction ST_CompoundFromWKB syn keyword sqlFunction ST_GeomCollFromTxt syn keyword sqlFunction ST_GeomCollFromWKB syn keyword sqlFunction ST_GeomFromText syn keyword sqlFunction ST_GeomFromWKB syn keyword sqlFunction ST_LineFromText syn keyword sqlFunction ST_LineFromWKB syn keyword sqlFunction ST_MCurveFromText syn keyword sqlFunction ST_MCurveFromWKB syn keyword sqlFunction ST_MLineFromText syn keyword sqlFunction ST_MLineFromWKB syn keyword sqlFunction ST_MPointFromText syn keyword sqlFunction ST_MPointFromWKB syn keyword sqlFunction ST_MPolyFromText syn keyword sqlFunction ST_MPolyFromWKB syn keyword sqlFunction ST_MSurfaceFromTxt syn keyword sqlFunction ST_MSurfaceFromWKB syn keyword sqlFunction ST_OrderingEquals syn keyword sqlFunction ST_PointFromText syn keyword sqlFunction ST_PointFromWKB syn keyword sqlFunction ST_PolyFromText syn keyword sqlFunction ST_PolyFromWKB " Spatial Structural Methods syn keyword sqlFunction ST_CoordDim syn keyword sqlFunction ST_CurveN syn keyword sqlFunction ST_Dimension syn keyword sqlFunction ST_EndPoint syn keyword sqlFunction ST_ExteriorRing syn keyword sqlFunction ST_GeometryN syn keyword sqlFunction ST_GeometryType syn keyword sqlFunction ST_InteriorRingN syn keyword sqlFunction ST_Is3D syn keyword sqlFunction ST_IsClosed syn keyword sqlFunction ST_IsEmpty syn keyword sqlFunction ST_IsMeasured syn keyword sqlFunction ST_IsRing syn keyword sqlFunction ST_IsSimple syn keyword sqlFunction ST_IsValid syn keyword sqlFunction ST_NumCurves syn keyword sqlFunction ST_NumGeometries syn keyword sqlFunction ST_NumInteriorRing syn keyword sqlFunction ST_NumPoints syn keyword sqlFunction ST_PointN syn keyword sqlFunction ST_StartPoint "Spatial Computation syn keyword sqlFunction ST_Length syn keyword sqlFunction ST_Area syn keyword sqlFunction ST_Centroid syn keyword sqlFunction ST_Area syn keyword sqlFunction ST_Centroid syn keyword sqlFunction ST_IsWorld syn keyword sqlFunction ST_Perimeter syn keyword sqlFunction ST_PointOnSurface syn keyword sqlFunction ST_Distance " Spatial Input/Output syn keyword sqlFunction ST_AsBinary syn keyword sqlFunction ST_AsGML syn keyword sqlFunction ST_AsGeoJSON syn keyword sqlFunction ST_AsSVG syn keyword sqlFunction ST_AsSVGAggr syn keyword sqlFunction ST_AsText syn keyword sqlFunction ST_AsWKB syn keyword sqlFunction ST_AsWKT syn keyword sqlFunction ST_AsXML syn keyword sqlFunction ST_GeomFromBinary syn keyword sqlFunction ST_GeomFromShape syn keyword sqlFunction ST_GeomFromText syn keyword sqlFunction ST_GeomFromWKB syn keyword sqlFunction ST_GeomFromWKT syn keyword sqlFunction ST_GeomFromXML " Spatial Cast Methods syn keyword sqlFunction ST_CurvePolyToPoly syn keyword sqlFunction ST_CurveToLine syn keyword sqlFunction ST_ToCircular syn keyword sqlFunction ST_ToCompound syn keyword sqlFunction ST_ToCurve syn keyword sqlFunction ST_ToCurvePoly syn keyword sqlFunction ST_ToGeomColl syn keyword sqlFunction ST_ToLineString syn keyword sqlFunction ST_ToMultiCurve syn keyword sqlFunction ST_ToMultiLine syn keyword sqlFunction ST_ToMultiPoint syn keyword sqlFunction ST_ToMultiPolygon syn keyword sqlFunction ST_ToMultiSurface syn keyword sqlFunction ST_ToPoint syn keyword sqlFunction ST_ToPolygon syn keyword sqlFunction ST_ToSurface " Array functions 16.x syn keyword sqlFunction array array_agg array_max_cardinality trim_array syn keyword sqlFunction error_line error_message error_procedure syn keyword sqlFunction error_sqlcode error_sqlstate error_stack_trace " keywords syn keyword sqlKeyword absolute accent access account action active activate add address admin syn keyword sqlKeyword aes_decrypt after aggregate algorithm allow_dup_row allow allowed alter syn keyword sqlKeyword always and angular ansi_substring any as append apply syn keyword sqlKeyword arbiter array asc ascii ase syn keyword sqlKeyword assign at atan2 atomic attended syn keyword sqlKeyword audit auditing authentication authorization axis syn keyword sqlKeyword autoincrement autostop batch bcp before syn keyword sqlKeyword between bit_and bit_length bit_or bit_substr bit_xor syn keyword sqlKeyword blank blanks block syn keyword sqlKeyword both bottom unbounded breaker bufferpool syn keyword sqlKeyword build bulk by byte bytes cache calibrate calibration syn keyword sqlKeyword cancel capability cardinality cascade cast syn keyword sqlKeyword catalog catch ceil change changes char char_convert syn keyword sqlKeyword check checkpointlog checksum class classes client cmp syn keyword sqlKeyword cluster clustered collation syn keyword sqlKeyword column columns syn keyword sqlKeyword command comments committed commitid comparisons syn keyword sqlKeyword compatible component compressed compute computes syn keyword sqlKeyword concat configuration confirm conflict connection syn keyword sqlKeyword console consolidate consolidated syn keyword sqlKeyword constraint constraints content syn keyword sqlKeyword convert coordinate coordinator copy count count_set_bits syn keyword sqlKeyword crc createtime critical cross cube cume_dist syn keyword sqlKeyword current cursor data data database syn keyword sqlKeyword current_timestamp current_user cycle syn keyword sqlKeyword databases datatype dba dbfile syn keyword sqlKeyword dbspace dbspaces dbspacename debug decoupled syn keyword sqlKeyword decrypted default defaults default_dbspace deferred syn keyword sqlKeyword definer definition syn keyword sqlKeyword delay deleting delimited dependencies desc syn keyword sqlKeyword description deterministic directory syn keyword sqlKeyword disable disabled disallow distinct disksandbox disk_sandbox syn keyword sqlKeyword dn do domain download duplicate syn keyword sqlKeyword dsetpass dttm dynamic each earth editproc effective ejb syn keyword sqlKeyword elimination ellipsoid else elseif syn keyword sqlKeyword email empty enable encapsulated encrypted encryption end syn keyword sqlKeyword encoding endif engine environment erase error errors escape escapes event syn keyword sqlKeyword event_parameter every exception exclude excluded exclusive exec syn keyword sqlKeyword existing exists expanded expiry express exprtype extended_property syn keyword sqlKeyword external externlogin factor failover false syn keyword sqlKeyword fastfirstrow feature fieldproc file files filler syn keyword sqlKeyword fillfactor final finish first first_keyword first_value syn keyword sqlKeyword flattening syn keyword sqlKeyword following force foreign format forjson forxml forxml_sep fp frame syn keyword sqlKeyword free freepage french fresh full function syn keyword sqlKeyword gb generic get_bit go global grid syn keyword sqlKeyword group handler hash having header hexadecimal syn keyword sqlKeyword hidden high history hg hng hold holdlock host syn keyword sqlKeyword hours http_body http_session_timeout id identified identity ignore syn keyword sqlKeyword ignore_dup_key ignore_dup_row immediate syn keyword sqlKeyword in inactiv inactive inactivity included increment incremental syn keyword sqlKeyword index index_enabled index_lparen indexonly info information syn keyword sqlKeyword inheritance inline inner inout insensitive inserting syn keyword sqlKeyword instead syn keyword sqlKeyword internal intersection into introduced inverse invoker syn keyword sqlKeyword iq is isolation syn keyword sqlKeyword jar java java_location java_main_userid java_vm_options syn keyword sqlKeyword jconnect jdk join json kb key keys keep language last syn keyword sqlKeyword last_keyword last_value lateral latitude syn keyword sqlKeyword ld ldap left len linear lf ln level like syn keyword sqlKeyword limit local location log syn keyword sqlKeyword logging logical login logscan long longitude low lru ls syn keyword sqlKeyword main major manage manual mark master syn keyword sqlKeyword match matched materialized max maxvalue maximum mb measure median membership syn keyword sqlKeyword merge metadata methods migrate minimum minor minutes minvalue mirror syn keyword sqlKeyword mode modify monitor move mru multiplex syn keyword sqlKeyword name named namespaces national native natural new next nextval syn keyword sqlKeyword ngram no noholdlock nolock nonclustered none normal not syn keyword sqlKeyword notify null nullable_constant nulls syn keyword sqlKeyword object objects oem_string of off offline offset olap syn keyword sqlKeyword old on online only openstring operator syn keyword sqlKeyword optimization optimizer option syn keyword sqlKeyword or order ordinality organization others out outer over owner syn keyword sqlKeyword package packetsize padding page pages syn keyword sqlKeyword paglock parallel parameter parent part partial syn keyword sqlKeyword partition partitions partner password path pctfree syn keyword sqlKeyword permissions perms plan planar policy polygon populate port postfilter preceding syn keyword sqlKeyword precisionprefetch prefilter prefix preserve preview previous syn keyword sqlKeyword primary prior priority priqty private privilege privileges procedure profile profiling syn keyword sqlKeyword property_is_cumulative property_is_numeric public publication publish publisher syn keyword sqlKeyword quiesce quote quotes range readclientfile readcommitted reader readfile readonly syn keyword sqlKeyword readpast readuncommitted readwrite rebuild syn keyword sqlKeyword received recompile recover recursive references syn keyword sqlKeyword referencing regex regexp regexp_substr relative relocate syn keyword sqlKeyword rename repeatable repeatableread replicate replication syn keyword sqlKeyword requests request_timeout required rereceive resend reserve reset syn keyword sqlKeyword resizing resolve resource respect restart syn keyword sqlKeyword restrict result retain retries syn keyword sqlKeyword returns reverse right role roles syn keyword sqlKeyword rollup root row row_number rowlock rows rowtype syn keyword sqlKeyword sa_index_hash sa_internal_fk_verify sa_internal_termbreak syn keyword sqlKeyword sa_order_preserving_hash sa_order_preserving_hash_big sa_order_preserving_hash_prefix syn keyword sqlKeyword sa_file_free_pages sa_internal_type_from_catalog sa_internal_valid_hash syn keyword sqlKeyword sa_internal_validate_value sa_json_element syn keyword sqlKeyword scale schedule schema scope script scripted scroll search seconds secqty security syn keyword sqlKeyword semi send sensitive sent sequence serializable syn keyword sqlKeyword server severity session set_bit set_bits sets syn keyword sqlKeyword shapefile share side simple since site size skip syn keyword sqlKeyword snap snapshot soapheader soap_header syn keyword sqlKeyword spatial split some sorted_data syn keyword sqlKeyword sql sqlcode sqlid sqlflagger sqlstate sqrt square syn keyword sqlKeyword stacker stale state statement statistics status stddev_pop stddev_samp syn keyword sqlKeyword stemmer stogroup stoplist storage store syn keyword sqlKeyword strip stripesizekb striping subpages subscribe subscription syn keyword sqlKeyword subtransaction suser_id suser_name suspend synchronization syn keyword sqlKeyword syntax_error table tables tablock syn keyword sqlKeyword tablockx target tb temp template temporary term then ties syn keyword sqlKeyword timezone timeout tls to to_char to_nchar tolerance top syn keyword sqlKeyword trace traced_plan tracing syn keyword sqlKeyword transfer transform transaction transactional treat tries syn keyword sqlKeyword true try tsequal type tune uncommitted unconditionally syn keyword sqlKeyword unenforced unicode unique unistr unit unknown unlimited unload syn keyword sqlKeyword unpartition unquiesce updatetime updating updlock upgrade upload syn keyword sqlKeyword upper usage use user syn keyword sqlKeyword using utc utilities validproc syn keyword sqlKeyword value values varchar variable syn keyword sqlKeyword varying var_pop var_samp vcat verbosity syn keyword sqlKeyword verify versions view virtual wait syn keyword sqlKeyword warning wd web when where with with_auto syn keyword sqlKeyword with_auto with_cube with_rollup without syn keyword sqlKeyword with_lparen within word work workload write writefile syn keyword sqlKeyword writeclientfile writer writers writeserver xlock syn keyword sqlKeyword war xml zeros zone " XML syn keyword sqlKeyword raw auto elements explicit " HTTP support syn keyword sqlKeyword authorization secure url service next_soap_header " HTTP 9.0.2 new procedure keywords syn keyword sqlKeyword namespace certificate certificates clientport proxy trusted_certificates_file " OLAP support 9.0.0 syn keyword sqlKeyword covar_pop covar_samp corr regr_slope regr_intercept syn keyword sqlKeyword regr_count regr_r2 regr_avgx regr_avgy syn keyword sqlKeyword regr_sxx regr_syy regr_sxy " Alternate keywords syn keyword sqlKeyword character dec options proc reference syn keyword sqlKeyword subtrans tran syn keyword " Login Mode Options syn keyword sqlKeywordLogin standard integrated kerberos LDAPUA syn keyword sqlKeywordLogin cloudadmin mixed " Spatial Predicates syn keyword sqlKeyword ST_Contains syn keyword sqlKeyword ST_ContainsFilter syn keyword sqlKeyword ST_CoveredBy syn keyword sqlKeyword ST_CoveredByFilter syn keyword sqlKeyword ST_Covers syn keyword sqlKeyword ST_CoversFilter syn keyword sqlKeyword ST_Crosses syn keyword sqlKeyword ST_Disjoint syn keyword sqlKeyword ST_Equals syn keyword sqlKeyword ST_EqualsFilter syn keyword sqlKeyword ST_Intersects syn keyword sqlKeyword ST_IntersectsFilter syn keyword sqlKeyword ST_IntersectsRect syn keyword sqlKeyword ST_OrderingEquals syn keyword sqlKeyword ST_Overlaps syn keyword sqlKeyword ST_Relate syn keyword sqlKeyword ST_Touches syn keyword sqlKeyword ST_Within syn keyword sqlKeyword ST_WithinFilter " Spatial Set operations syn keyword sqlKeyword ST_Affine syn keyword sqlKeyword ST_Boundary syn keyword sqlKeyword ST_Buffer syn keyword sqlKeyword ST_ConvexHull syn keyword sqlKeyword ST_ConvexHullAggr syn keyword sqlKeyword ST_Difference syn keyword sqlKeyword ST_Intersection syn keyword sqlKeyword ST_IntersectionAggr syn keyword sqlKeyword ST_SymDifference syn keyword sqlKeyword ST_Union syn keyword sqlKeyword ST_UnionAggr " Spatial Bounds syn keyword sqlKeyword ST_Envelope syn keyword sqlKeyword ST_EnvelopeAggr syn keyword sqlKeyword ST_Lat syn keyword sqlKeyword ST_LatMax syn keyword sqlKeyword ST_LatMin syn keyword sqlKeyword ST_Long syn keyword sqlKeyword ST_LongMax syn keyword sqlKeyword ST_LongMin syn keyword sqlKeyword ST_M syn keyword sqlKeyword ST_MMax syn keyword sqlKeyword ST_MMin syn keyword sqlKeyword ST_Point syn keyword sqlKeyword ST_X syn keyword sqlKeyword ST_XMax syn keyword sqlKeyword ST_XMin syn keyword sqlKeyword ST_Y syn keyword sqlKeyword ST_YMax syn keyword sqlKeyword ST_YMin syn keyword sqlKeyword ST_Z syn keyword sqlKeyword ST_ZMax syn keyword sqlKeyword ST_ZMin " Spatial Collection Aggregates syn keyword sqlKeyword ST_GeomCollectionAggr syn keyword sqlKeyword ST_LineStringAggr syn keyword sqlKeyword ST_MultiCurveAggr syn keyword sqlKeyword ST_MultiLineStringAggr syn keyword sqlKeyword ST_MultiPointAggr syn keyword sqlKeyword ST_MultiPolygonAggr syn keyword sqlKeyword ST_MultiSurfaceAggr syn keyword sqlKeyword ST_Perimeter syn keyword sqlKeyword ST_PointOnSurface " Spatial SRS syn keyword sqlKeyword ST_CompareWKT syn keyword sqlKeyword ST_FormatWKT syn keyword sqlKeyword ST_ParseWKT syn keyword sqlKeyword ST_TransformGeom syn keyword sqlKeyword ST_GeometryTypeFromBaseType syn keyword sqlKeyword ST_SnapToGrid syn keyword sqlKeyword ST_Transform syn keyword sqlKeyword ST_SRID syn keyword sqlKeyword ST_SRIDFromBaseType syn keyword sqlKeyword ST_LoadConfigurationData " Spatial Indexes syn keyword sqlKeyword ST_LinearHash syn keyword sqlKeyword ST_LinearUnHash syn keyword sqlOperator in any some all between exists syn keyword sqlOperator like escape not is and or syn keyword sqlOperator minus syn keyword sqlOperator prior distinct unnest syn keyword sqlStatement allocate alter attach backup begin break call case catch syn keyword sqlStatement checkpoint clear close comment commit configure connect syn keyword sqlStatement continue create deallocate declare delete describe syn keyword sqlStatement detach disconnect drop except execute exit explain fetch syn keyword sqlStatement for forward from get goto grant help if include syn keyword sqlStatement input insert install intersect leave load lock loop syn keyword sqlStatement message open output parameters passthrough syn keyword sqlStatement prepare print put raiserror read readtext refresh release syn keyword sqlStatement remote remove reorganize resignal restore resume syn keyword sqlStatement return revoke rollback save savepoint select syn keyword sqlStatement set setuser signal start stop synchronize syn keyword sqlStatement system trigger truncate try union unload update syn keyword sqlStatement validate waitfor whenever while window writetext syn keyword sqlType char nchar long varchar nvarchar text ntext uniqueidentifierstr xml syn keyword sqlType bigint bit decimal double varbit syn keyword sqlType float int integer numeric syn keyword sqlType smallint tinyint real syn keyword sqlType money smallmoney syn keyword sqlType date datetime datetimeoffset smalldatetime time timestamp syn keyword sqlType binary image varray varbinary uniqueidentifier syn keyword sqlType unsigned " Spatial types syn keyword sqlType st_geometry st_point st_curve st_surface st_geomcollection syn keyword sqlType st_linestring st_circularstring st_compoundcurve syn keyword sqlType st_curvepolygon st_polygon syn keyword sqlType st_multipoint st_multicurve st_multisurface syn keyword sqlType st_multilinestring st_multipolygon syn keyword sqlOption Allow_nulls_by_default syn keyword sqlOption Allow_read_client_file syn keyword sqlOption Allow_snapshot_isolation syn keyword sqlOption Allow_write_client_file syn keyword sqlOption Ansi_blanks syn keyword sqlOption Ansi_close_cursors_on_rollback syn keyword sqlOption Ansi_permissions syn keyword sqlOption Ansi_substring syn keyword sqlOption Ansi_update_constraints syn keyword sqlOption Ansinull syn keyword sqlOption Auditing syn keyword sqlOption Auditing_options syn keyword sqlOption Auto_commit_on_create_local_temp_index syn keyword sqlOption Background_priority syn keyword sqlOption Blocking syn keyword sqlOption Blocking_others_timeout syn keyword sqlOption Blocking_timeout syn keyword sqlOption Chained syn keyword sqlOption Checkpoint_time syn keyword sqlOption Cis_option syn keyword sqlOption Cis_rowset_size syn keyword sqlOption Close_on_endtrans syn keyword sqlOption Collect_statistics_on_dml_updates syn keyword sqlOption Conn_auditing syn keyword sqlOption Connection_authentication syn keyword sqlOption Continue_after_raiserror syn keyword sqlOption Conversion_error syn keyword sqlOption Cooperative_commit_timeout syn keyword sqlOption Cooperative_commits syn keyword sqlOption Database_authentication syn keyword sqlOption Date_format syn keyword sqlOption Date_order syn keyword sqlOption db_publisher syn keyword sqlOption Debug_messages syn keyword sqlOption Dedicated_task syn keyword sqlOption Default_dbspace syn keyword sqlOption Default_timestamp_increment syn keyword sqlOption Delayed_commit_timeout syn keyword sqlOption Delayed_commits syn keyword sqlOption Divide_by_zero_error syn keyword sqlOption Escape_character syn keyword sqlOption Exclude_operators syn keyword sqlOption Extended_join_syntax syn keyword sqlOption Extern_login_credentials syn keyword sqlOption Fire_triggers syn keyword sqlOption First_day_of_week syn keyword sqlOption For_xml_null_treatment syn keyword sqlOption Force_view_creation syn keyword sqlOption Global_database_id syn keyword sqlOption Http_session_timeout syn keyword sqlOption Http_connection_pool_basesize syn keyword sqlOption Http_connection_pool_timeout syn keyword sqlOption Integrated_server_name syn keyword sqlOption Isolation_level syn keyword sqlOption Java_class_path syn keyword sqlOption Java_location syn keyword sqlOption Java_main_userid syn keyword sqlOption Java_vm_options syn keyword sqlOption Lock_rejected_rows syn keyword sqlOption Log_deadlocks syn keyword sqlOption Login_mode syn keyword sqlOption Login_procedure syn keyword sqlOption Materialized_view_optimization syn keyword sqlOption Max_client_statements_cached syn keyword sqlOption Max_cursor_count syn keyword sqlOption Max_hash_size syn keyword sqlOption Max_plans_cached syn keyword sqlOption Max_priority syn keyword sqlOption Max_query_tasks syn keyword sqlOption Max_recursive_iterations syn keyword sqlOption Max_statement_count syn keyword sqlOption Max_temp_space syn keyword sqlOption Min_password_length syn keyword sqlOption Min_role_admins syn keyword sqlOption Nearest_century syn keyword sqlOption Non_keywords syn keyword sqlOption Odbc_describe_binary_as_varbinary syn keyword sqlOption Odbc_distinguish_char_and_varchar syn keyword sqlOption Oem_string syn keyword sqlOption On_charset_conversion_failure syn keyword sqlOption On_tsql_error syn keyword sqlOption Optimization_goal syn keyword sqlOption Optimization_level syn keyword sqlOption Optimization_workload syn keyword sqlOption Pinned_cursor_percent_of_cache syn keyword sqlOption Post_login_procedure syn keyword sqlOption Precision syn keyword sqlOption Prefetch syn keyword sqlOption Preserve_source_format syn keyword sqlOption Prevent_article_pkey_update syn keyword sqlOption Priority syn keyword sqlOption Progress_messages syn keyword sqlOption Query_mem_timeout syn keyword sqlOption Quoted_identifier syn keyword sqlOption Read_past_deleted syn keyword sqlOption Recovery_time syn keyword sqlOption Remote_idle_timeout syn keyword sqlOption Replicate_all syn keyword sqlOption Request_timeout syn keyword sqlOption Reserved_keywords syn keyword sqlOption Return_date_time_as_string syn keyword sqlOption Rollback_on_deadlock syn keyword sqlOption Row_counts syn keyword sqlOption Scale syn keyword sqlOption Secure_feature_key syn keyword sqlOption Sort_collation syn keyword sqlOption Sql_flagger_error_level syn keyword sqlOption Sql_flagger_warning_level syn keyword sqlOption String_rtruncation syn keyword sqlOption st_geometry_asbinary_format syn keyword sqlOption st_geometry_astext_format syn keyword sqlOption st_geometry_asxml_format syn keyword sqlOption st_geometry_describe_type syn keyword sqlOption st_geometry_interpolation syn keyword sqlOption st_geometry_on_invalid syn keyword sqlOption Subsume_row_locks syn keyword sqlOption Suppress_tds_debugging syn keyword sqlOption Synchronize_mirror_on_commit syn keyword sqlOption Tds_empty_string_is_null syn keyword sqlOption Temp_space_limit_check syn keyword sqlOption Time_format syn keyword sqlOption Time_zone_adjustment syn keyword sqlOption Timestamp_format syn keyword sqlOption Timestamp_with_time_zone_format syn keyword sqlOption Truncate_timestamp_values syn keyword sqlOption Tsql_outer_joins syn keyword sqlOption Tsql_variables syn keyword sqlOption Updatable_statement_isolation syn keyword sqlOption Update_statistics syn keyword sqlOption Upgrade_database_capability syn keyword sqlOption User_estimates syn keyword sqlOption Uuid_has_hyphens syn keyword sqlOption Verify_password_function syn keyword sqlOption Wait_for_commit syn keyword sqlOption Webservice_namespace_host syn keyword sqlOption Webservice_sessionid_name " Strings and characters: syn region sqlString start=+"+ end=+"+ contains=@Spell syn region sqlString start=+'+ end=+'+ contains=@Spell " Numbers: syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>" " Comments: syn region sqlDashComment start=/--/ end=/$/ contains=@Spell syn region sqlSlashComment start=/\/\// end=/$/ contains=@Spell syn region sqlMultiComment start="/\*" end="\*/" contains=sqlMultiComment,@Spell syn cluster sqlComment contains=sqlDashComment,sqlSlashComment,sqlMultiComment,@Spell syn sync ccomment sqlComment syn sync ccomment sqlDashComment syn sync ccomment sqlSlashComment hi def link sqlDashComment Comment hi def link sqlSlashComment Comment hi def link sqlMultiComment Comment hi def link sqlNumber Number hi def link sqlOperator Operator hi def link sqlSpecial Special hi def link sqlKeyword Keyword hi def link sqlStatement Statement hi def link sqlString String hi def link sqlType Type hi def link sqlFunction Function hi def link sqlOption PreProc let b:current_syntax = "sqlanywhere" " vim:sw=4: PK&] jvim80/syntax/htmlcheetah.vimnu[" Vim syntax file " Language: HTML with Cheetah tags " Maintainer: Max Ischenko " Last Change: 2003-05-11 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'html' endif runtime! syntax/cheetah.vim runtime! syntax/html.vim unlet b:current_syntax syntax cluster htmlPreproc add=cheetahPlaceHolder syntax cluster htmlString add=cheetahPlaceHolder let b:current_syntax = "htmlcheetah" PK&]]r\ \ vim80/syntax/eruby.vimnu[" Vim syntax file " Language: eRuby " Maintainer: Tim Pope " URL: https://github.com/vim-ruby/vim-ruby " Release Coordinator: Doug Kearns if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'eruby' endif if !exists("g:eruby_default_subtype") let g:eruby_default_subtype = "html" endif if &filetype =~ '^eruby\.' let b:eruby_subtype = matchstr(&filetype,'^eruby\.\zs\w\+') elseif !exists("b:eruby_subtype") && main_syntax == 'eruby' let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$") let b:eruby_subtype = matchstr(s:lines,'eruby_subtype=\zs\w\+') if b:eruby_subtype == '' let b:eruby_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.erb\|\.eruby\|\.erubis\)\+$','',''),'\.\zs\w\+\%(\ze+\w\+\)\=$') endif if b:eruby_subtype == 'rhtml' let b:eruby_subtype = 'html' elseif b:eruby_subtype == 'rb' let b:eruby_subtype = 'ruby' elseif b:eruby_subtype == 'yml' let b:eruby_subtype = 'yaml' elseif b:eruby_subtype == 'js' let b:eruby_subtype = 'javascript' elseif b:eruby_subtype == 'txt' " Conventional; not a real file type let b:eruby_subtype = 'text' elseif b:eruby_subtype == '' let b:eruby_subtype = g:eruby_default_subtype endif endif if !exists("b:eruby_nest_level") let b:eruby_nest_level = strlen(substitute(substitute(substitute(expand("%:t"),'@','','g'),'\c\.\%(erb\|rhtml\)\>','@','g'),'[^@]','','g')) endif if !b:eruby_nest_level let b:eruby_nest_level = 1 endif if exists("b:eruby_subtype") && b:eruby_subtype != '' exe "runtime! syntax/".b:eruby_subtype.".vim" unlet! b:current_syntax endif syn include @rubyTop syntax/ruby.vim syn cluster erubyRegions contains=erubyOneLiner,erubyBlock,erubyExpression,erubyComment exe 'syn region erubyOneLiner matchgroup=erubyDelimiter start="^%\{1,'.b:eruby_nest_level.'\}%\@!" end="$" contains=@rubyTop containedin=ALLBUT,@erubyRegions keepend oneline' exe 'syn region erubyBlock matchgroup=erubyDelimiter start="<%\{1,'.b:eruby_nest_level.'\}%\@!-\=" end="[=-]\=%\@" contains=@rubyTop containedin=ALLBUT,@erubyRegions keepend' exe 'syn region erubyExpression matchgroup=erubyDelimiter start="<%\{1,'.b:eruby_nest_level.'\}=\{1,4}" end="[=-]\=%\@" contains=@rubyTop containedin=ALLBUT,@erubyRegions keepend' exe 'syn region erubyComment matchgroup=erubyDelimiter start="<%\{1,'.b:eruby_nest_level.'\}-\=#" end="[=-]\=%\@" contains=rubyTodo,@Spell containedin=ALLBUT,@erubyRegions keepend' " Define the default highlighting. hi def link erubyDelimiter PreProc hi def link erubyComment Comment let b:current_syntax = 'eruby' if main_syntax == 'eruby' unlet main_syntax endif " vim: nowrap sw=2 sts=2 ts=8: PK&];^elMMvim80/syntax/xsd.vimnu[" Vim syntax file " Language: XSD (XML Schema) " Maintainer: Johannes Zellner " Last Change: Tue, 27 Apr 2004 14:54:59 CEST " Filenames: *.xsd " $Id: xsd.vim,v 1.1 2004/06/13 18:20:48 vimboss Exp $ " REFERENCES: " [1] http://www.w3.org/TR/xmlschema-0 " " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif runtime syntax/xml.vim syn cluster xmlTagHook add=xsdElement syn case match syn match xsdElement '\%(xsd:\)\@<=all' syn match xsdElement '\%(xsd:\)\@<=annotation' syn match xsdElement '\%(xsd:\)\@<=any' syn match xsdElement '\%(xsd:\)\@<=anyAttribute' syn match xsdElement '\%(xsd:\)\@<=appInfo' syn match xsdElement '\%(xsd:\)\@<=attribute' syn match xsdElement '\%(xsd:\)\@<=attributeGroup' syn match xsdElement '\%(xsd:\)\@<=choice' syn match xsdElement '\%(xsd:\)\@<=complexContent' syn match xsdElement '\%(xsd:\)\@<=complexType' syn match xsdElement '\%(xsd:\)\@<=documentation' syn match xsdElement '\%(xsd:\)\@<=element' syn match xsdElement '\%(xsd:\)\@<=enumeration' syn match xsdElement '\%(xsd:\)\@<=extension' syn match xsdElement '\%(xsd:\)\@<=field' syn match xsdElement '\%(xsd:\)\@<=group' syn match xsdElement '\%(xsd:\)\@<=import' syn match xsdElement '\%(xsd:\)\@<=include' syn match xsdElement '\%(xsd:\)\@<=key' syn match xsdElement '\%(xsd:\)\@<=keyref' syn match xsdElement '\%(xsd:\)\@<=length' syn match xsdElement '\%(xsd:\)\@<=list' syn match xsdElement '\%(xsd:\)\@<=maxInclusive' syn match xsdElement '\%(xsd:\)\@<=maxLength' syn match xsdElement '\%(xsd:\)\@<=minInclusive' syn match xsdElement '\%(xsd:\)\@<=minLength' syn match xsdElement '\%(xsd:\)\@<=pattern' syn match xsdElement '\%(xsd:\)\@<=redefine' syn match xsdElement '\%(xsd:\)\@<=restriction' syn match xsdElement '\%(xsd:\)\@<=schema' syn match xsdElement '\%(xsd:\)\@<=selector' syn match xsdElement '\%(xsd:\)\@<=sequence' syn match xsdElement '\%(xsd:\)\@<=simpleContent' syn match xsdElement '\%(xsd:\)\@<=simpleType' syn match xsdElement '\%(xsd:\)\@<=union' syn match xsdElement '\%(xsd:\)\@<=unique' hi def link xsdElement Statement " vim: ts=8 PK&](iL L vim80/syntax/elmfilt.vimnu[" Vim syntax file " Language: Elm Filter rules " Maintainer: Charles E. Campbell " Last Change: Aug 31, 2016 " Version: 8 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_ELMFILT " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn cluster elmfiltIfGroup contains=elmfiltCond,elmfiltOper,elmfiltOperKey,,elmfiltNumber,elmfiltOperKey syn match elmfiltParenError "[()]" syn match elmfiltMatchError "/" syn region elmfiltIf start="\" end="\" contains=elmfiltParen,elmfiltParenError skipnl skipwhite nextgroup=elmfiltAction syn region elmfiltParen contained matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=elmfiltParen,@elmfiltIfGroup,elmfiltThenError syn region elmfiltMatch contained matchgroup=Delimiter start="/" skip="\\/" matchgroup=Delimiter end="/" skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey syn match elmfiltThenError "\" skipnl skipwhite nextgroup=elmfiltString syn match elmfiltOperKey contained "\=\|!=\|<\|<\|=" skipnl skipwhite nextgroup=elmfiltString,elmfiltCond,elmfiltOperKey syn region elmfiltString contained start='"' skip='"\(\\\\\)*\\["%]' end='"' contains=elmfiltArg skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey,@Spell syn region elmfiltString contained start="'" skip="'\(\\\\\)*\\['%]" end="'" contains=elmfiltArg skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey,@Spell syn match elmfiltSpaceError contained "\s.*$" " Define the default highlighting. if !exists("skip_elmfilt_syntax_inits") hi def link elmfiltAction Statement hi def link elmfiltArg Special hi def link elmfiltComment Comment hi def link elmfiltCond Statement hi def link elmfiltIf Statement hi def link elmfiltMatch Special hi def link elmfiltMatchError Error hi def link elmfiltNumber Number hi def link elmfiltOper Operator hi def link elmfiltOperKey Type hi def link elmfiltParenError Error hi def link elmfiltSpaceError Error hi def link elmfiltString String hi def link elmfiltThenError Error endif let b:current_syntax = "elmfilt" " vim: ts=9 PK&]Eqvim80/syntax/xdefaults.vimnu[" Vim syntax file " Language: X resources files like ~/.Xdefaults (xrdb) " Maintainer: Johannes Zellner " Author and previous maintainer: " Gautam H. Mudunuri " Last Change: Di, 09 Mai 2006 23:10:23 CEST " $Id: xdefaults.vim,v 1.2 2007/05/05 17:19:40 vimboss Exp $ " " REFERENCES: " xrdb manual page " xrdb source: ftp://ftp.x.org/pub/R6.4/xc/programs/xrdb/xrdb.c " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " turn case on syn case match if !exists("xdefaults_no_colon_errors") " mark lines which do not contain a colon as errors. " This does not really catch all errors but only lines " which contain at least two WORDS and no colon. This " was done this way so that a line is not marked as " error while typing (which would be annoying). syntax match xdefaultsErrorLine "^\s*[a-zA-Z.*]\+\s\+[^: ]\+" endif " syn region xdefaultsLabel start=+^[^:]\{-}:+he=e-1 skip=+\\+ end="$" syn match xdefaultsLabel +^[^:]\{-}:+he=e-1 contains=xdefaultsPunct,xdefaultsSpecial,xdefaultsLineEnd syn region xdefaultsValue keepend start=+:+lc=1 skip=+\\+ end=+$+ contains=xdefaultsSpecial,xdefaultsLabel,xdefaultsLineEnd syn match xdefaultsSpecial contained +#override+ syn match xdefaultsSpecial contained +#augment+ syn match xdefaultsPunct contained +[.*:]+ syn match xdefaultsLineEnd contained +\\$+ syn match xdefaultsLineEnd contained +\\n\\$+ syn match xdefaultsLineEnd contained +\\n$+ " COMMENTS " note, that the '!' must be at the very first position of the line syn match xdefaultsComment "^!.*$" contains=xdefaultsTodo,@Spell " lines starting with a '#' mark and which are not preprocessor " lines are skipped. This is not part of the xrdb documentation. " It was reported by Bram Moolenaar and could be confirmed by " having a look at xrdb.c:GetEntries() syn match xdefaultsCommentH "^#.*$" "syn region xdefaultsComment start="^#" end="$" keepend contains=ALL syn region xdefaultsComment start="/\*" end="\*/" contains=xdefaultsTodo,@Spell syntax match xdefaultsCommentError "\*/" syn keyword xdefaultsTodo contained TODO FIXME XXX display " PREPROCESSOR STUFF syn region xdefaultsPreProc start="^\s*#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>" skip="\\$" end="$" contains=xdefaultsSymbol if !exists("xdefaults_no_if0") syn region xdefaultsCppOut start="^\s*#\s*if\s\+0\>" end=".\|$" contains=xdefaultsCppOut2 syn region xdefaultsCppOut2 contained start="0" end="^\s*#\s*\(endif\>\|else\>\|elif\>\)" contains=xdefaultsCppSkip syn region xdefaultsCppSkip contained start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*#\s*endif\>" contains=xdefaultsCppSkip endif syn region xdefaultsIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match xdefaultsIncluded contained "<[^>]*>" syn match xdefaultsInclude "^\s*#\s*include\>\s*["<]" contains=xdefaultsIncluded syn cluster xdefaultsPreProcGroup contains=xdefaultsPreProc,xdefaultsIncluded,xdefaultsInclude,xdefaultsDefine,xdefaultsCppOut,xdefaultsCppOut2,xdefaultsCppSkip syn region xdefaultsDefine start="^\s*#\s*\(define\|undef\)\>" skip="\\$" end="$" contains=ALLBUT,@xdefaultsPreProcGroup,xdefaultsCommentH,xdefaultsErrorLine,xdefaultsLabel,xdefaultsValue syn region xdefaultsPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@xdefaultsPreProcGroup,xdefaultsCommentH,xdefaultsErrorLine,xdefaultsLabel,xdefaultsValue " symbols as defined by xrdb syn keyword xdefaultsSymbol contained SERVERHOST syn match xdefaultsSymbol contained "SRVR_[a-zA-Z0-9_]\+" syn keyword xdefaultsSymbol contained HOST syn keyword xdefaultsSymbol contained DISPLAY_NUM syn keyword xdefaultsSymbol contained CLIENTHOST syn match xdefaultsSymbol contained "CLNT_[a-zA-Z0-9_]\+" syn keyword xdefaultsSymbol contained RELEASE syn keyword xdefaultsSymbol contained REVISION syn keyword xdefaultsSymbol contained VERSION syn keyword xdefaultsSymbol contained VENDOR syn match xdefaultsSymbol contained "VNDR_[a-zA-Z0-9_]\+" syn match xdefaultsSymbol contained "EXT_[a-zA-Z0-9_]\+" syn keyword xdefaultsSymbol contained NUM_SCREENS syn keyword xdefaultsSymbol contained SCREEN_NUM syn keyword xdefaultsSymbol contained BITS_PER_RGB syn keyword xdefaultsSymbol contained CLASS syn keyword xdefaultsSymbol contained StaticGray GrayScale StaticColor PseudoColor TrueColor DirectColor syn match xdefaultsSymbol contained "CLASS_\(StaticGray\|GrayScale\|StaticColor\|PseudoColor\|TrueColor\|DirectColor\)" syn keyword xdefaultsSymbol contained COLOR syn match xdefaultsSymbol contained "CLASS_\(StaticGray\|GrayScale\|StaticColor\|PseudoColor\|TrueColor\|DirectColor\)_[0-9]\+" syn keyword xdefaultsSymbol contained HEIGHT syn keyword xdefaultsSymbol contained WIDTH syn keyword xdefaultsSymbol contained PLANES syn keyword xdefaultsSymbol contained X_RESOLUTION syn keyword xdefaultsSymbol contained Y_RESOLUTION " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link xdefaultsLabel Type hi def link xdefaultsValue Constant hi def link xdefaultsComment Comment hi def link xdefaultsCommentH xdefaultsComment hi def link xdefaultsPreProc PreProc hi def link xdefaultsInclude xdefaultsPreProc hi def link xdefaultsCppSkip xdefaultsCppOut hi def link xdefaultsCppOut2 xdefaultsCppOut hi def link xdefaultsCppOut Comment hi def link xdefaultsIncluded String hi def link xdefaultsDefine Macro hi def link xdefaultsSymbol Statement hi def link xdefaultsSpecial Statement hi def link xdefaultsErrorLine Error hi def link xdefaultsCommentError Error hi def link xdefaultsPunct Normal hi def link xdefaultsLineEnd Special hi def link xdefaultsTodo Todo let b:current_syntax = "xdefaults" " vim:ts=8 PK&]I7yQ??vim80/syntax/mplayerconf.vimnu[" Vim syntax file " Language: mplayer(1) configuration file " Maintainer: Dmitri Vereshchagin " Previous Maintainer: Nikolai Weibull " Latest Revision: 2015-01-24 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn keyword mplayerconfTodo contained TODO FIXME XXX NOTE syn region mplayerconfComment display oneline start='#' end='$' \ contains=mplayerconfTodo,@Spell syn keyword mplayerconfPreProc include syn keyword mplayerconfBoolean yes no true false syn match mplayerconfNumber '\<\d\+\>' syn keyword mplayerconfOption hardframedrop nomouseinput bandwidth dumpstream \ rtsp-stream-over-tcp tv overlapsub \ sub-bg-alpha subfont-outline unicode format \ vo edl cookies fps zrfd af-adv nosound \ audio-density passlogfile vobsuboutindex autoq \ autosync benchmark colorkey nocolorkey edlout \ enqueue fixed-vo framedrop h identify input \ lircconf list-options loop menu menu-cfg \ menu-root nojoystick nolirc nortc playlist \ quiet really-quiet shuffle skin slave \ softsleep speed sstep use-stdin aid alang \ audio-demuxer audiofile audiofile-cache \ cdrom-device cache cdda channels chapter \ cookies-file demuxer dumpaudio dumpfile \ dumpvideo dvbin dvd-device dvdangle forceidx \ frames hr-mp3-seek idx ipv4-only-proxy \ loadidx mc mf ni nobps noextbased \ passwd prefer-ipv4 prefer-ipv6 rawaudio \ rawvideo saveidx sb srate ss tskeepbroken \ tsprog tsprobe user user-agent vid vivo \ dumpjacosub dumpmicrodvdsub dumpmpsub dumpsami \ dumpsrtsub dumpsub ffactor flip-hebrew font \ forcedsubsonly fribidi-charset ifo noautosub \ osdlevel sid slang spuaa spualign spugauss \ sub sub-bg-color sub-demuxer sub-fuzziness \ sub-no-text-pp subalign subcc subcp subdelay \ subfile subfont-autoscale subfont-blur \ subfont-encoding subfont-osd-scale \ subfont-text-scale subfps subpos subwidth \ utf8 vobsub vobsubid abs ao aofile aop delay \ mixer nowaveheader aa bpp brightness contrast \ dfbopts display double dr dxr2 fb fbmode \ fbmodeconfig forcexv fs fsmode-dontuse fstype \ geometry guiwid hue jpeg monitor-dotclock \ monitor-hfreq monitor-vfreq monitoraspect \ nograbpointer nokeepaspect noxv ontop panscan \ rootwin saturation screenw stop-xscreensaver \ vm vsync wid xineramascreen z zrbw zrcrop \ zrdev zrhelp zrnorm zrquality zrvdec zrxdoff \ ac af afm aspect flip lavdopts noaspect \ noslices novideo oldpp pp pphelp ssf stereo \ sws vc vfm x xvidopts xy y zoom vf vop \ audio-delay audio-preload endpos ffourcc \ include info noautoexpand noskip o oac of \ ofps ovc skiplimit v vobsubout vobsuboutid \ lameopts lavcopts nuvopts xvidencopts a52drc \ adapter af-add af-clr af-del af-pre \ allow-dangerous-playlist-parsing ass \ ass-border-color ass-bottom-margin ass-color \ ass-font-scale ass-force-style ass-hinting \ ass-line-spacing ass-styles ass-top-margin \ ass-use-margins ausid bluray-angle \ bluray-device border border-pos-x border-pos-y \ cache-min cache-seek-min capture codecpath \ codecs-file correct-pts crash-debug \ doubleclick-time dvd-speed edl-backward-delay \ edl-start-pts embeddedfonts fafmttag \ field-dominance fontconfig force-avi-aspect \ force-key-frames frameno-file fullscreen gamma \ gui gui-include gui-wid heartbeat-cmd \ heartbeat-interval hr-edl-seek \ http-header-fields idle ignore-start \ key-fifo-size list-properties menu-chroot \ menu-keepdir menu-startup mixer-channel \ monitor-orientation monitorpixelaspect \ mouse-movements msgcharset msgcolor msglevel \ msgmodule name noar nocache noconfig \ noconsolecontrols nocorrect-pts nodouble \ noedl-start-pts noencodedups \ noflip-hebrew-commas nogui noidx noodml \ nostop-xscreensaver nosub noterm-osd \ osd-duration osd-fractions panscanrange \ pausing playing-msg priority profile \ progbar-align psprobe pvr radio referrer \ refreshrate reuse-socket rtc rtc-device \ rtsp-destination rtsp-port \ rtsp-stream-over-http screenh show-profile \ softvol softvol-max sub-paths subfont \ term-osd-esc title tvscan udp-ip udp-master \ udp-port udp-seek-threshold udp-slave \ unrarexec use-filedir-conf use-filename-title \ vf-add vf-clr vf-del vf-pre volstep volume \ zrhdec zrydoff syn region mplayerconfString display oneline start=+"+ end=+"+ syn region mplayerconfString display oneline start=+'+ end=+'+ syn region mplayerconfProfile display oneline start='^\s*\[' end='\]' hi def link mplayerconfTodo Todo hi def link mplayerconfComment Comment hi def link mplayerconfPreProc PreProc hi def link mplayerconfBoolean Boolean hi def link mplayerconfNumber Number hi def link mplayerconfOption Keyword hi def link mplayerconfString String hi def link mplayerconfProfile Special let b:current_syntax = "mplayerconf" let &cpo = s:cpo_save unlet s:cpo_save PK&]Lvim80/syntax/wsh.vimnu[" Vim syntax file " Language: Windows Scripting Host " Maintainer: Paul Moore " Last Change: Fre, 24 Nov 2000 21:54:09 +0100 " This reuses the XML, VB and JavaScript syntax files. While VB is not " VBScript, it's close enough for us. No attempt is made to handle " other languages. " Send comments, suggestions and requests to the maintainer. " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:wsh_cpo_save = &cpo set cpo&vim runtime! syntax/xml.vim unlet b:current_syntax syn case ignore syn include @wshVBScript :p:h/vb.vim unlet b:current_syntax syn include @wshJavaScript :p:h/javascript.vim unlet b:current_syntax syn region wshVBScript \ matchgroup=xmlTag start="]*VBScript\(>\|[^>]*[^/>]>\)" \ matchgroup=xmlEndTag end="" \ fold \ contains=@wshVBScript \ keepend syn region wshJavaScript \ matchgroup=xmlTag start="]*J\(ava\)\=Script\(>\|[^>]*[^/>]>\)" \ matchgroup=xmlEndTag end="" \ fold \ contains=@wshJavaScript \ keepend syn cluster xmlRegionHook add=wshVBScript,wshJavaScript let b:current_syntax = "wsh" let &cpo = s:wsh_cpo_save unlet s:wsh_cpo_save PK&]uvim80/syntax/calendar.vimnu[" Vim syntax file " Language: calendar(1) input file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword calendarTodo contained TODO FIXME XXX NOTE syn region calendarComment start='/\*' end='\*/' \ contains=calendarTodo,@Spell syn region calendarCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl \ end=+"+ end='$' contains=calendarSpecial syn match calendarSpecial display contained '\\\%(x\x\+\|\o\{1,3}\|.\|$\)' syn match calendarSpecial display contained "\\\(u\x\{4}\|U\x\{8}\)" syn region calendarPreCondit start='^\s*#\s*\%(if\|ifdef\|ifndef\|elif\)\>' \ skip='\\$' end='$' \ contains=calendarComment,calendarCppString syn match calendarPreCondit display '^\s*#\s*\%(else\|endif\)\>' syn region calendarCppOut start='^\s*#\s*if\s\+0\+' end='.\@=\|$' \ contains=calendarCppOut2 syn region calendarCppOut2 contained start='0' \ end='^\s*#\s*\%(endif\|else\|elif\)\>' \ contains=calendarSpaceError,calendarCppSkip syn region calendarCppSkip contained \ start='^\s*#\s*\%(if\|ifdef\|ifndef\)\>' \ skip='\\$' end='^\s*#\s*endif\>' \ contains=calendarSpaceError,calendarCppSkip syn region calendarIncluded display contained start=+"+ skip=+\\\\\|\\"+ \ end=+"+ syn match calendarIncluded display contained '<[^>]*>' syn match calendarInclude display '^\s*#\s*include\>\s*["<]' \ contains=calendarIncluded syn cluster calendarPreProcGroup contains=calendarPreCondit,calendarIncluded, \ calendarInclude,calendarDefine, \ calendarCppOut,calendarCppOut2, \ calendarCppSkip,calendarString, \ calendarSpecial,calendarTodo syn region calendarDefine start='^\s*#\s*\%(define\|undef\)\>' \ skip='\\$' end='$' \ contains=ALLBUT,@calendarPreProcGroup syn region calendarPreProc start='^\s*#\s*\%(pragma\|line\|warning\|warn\|error\)\>' \ skip='\\$' end='$' keepend \ contains=ALLBUT,@calendarPreProcGroup syn keyword calendarKeyword CHARSET BODUN LANG syn case ignore syn keyword calendarKeyword Easter Pashka syn case match syn case ignore syn match calendarNumber display '\<\d\+\>' syn keyword calendarMonth Jan[uary] Feb[ruary] Mar[ch] Apr[il] May \ Jun[e] Jul[y] Aug[ust] Sep[tember] \ Oct[ober] Nov[ember] Dec[ember] syn match calendarMonth display '\<\%(Jan\|Feb\|Mar\|Apr\|May\|Jun\|Jul\|Aug\|Sep\|Oct\|Nov\|Dec\)\.' syn keyword calendarWeekday Mon[day] Tue[sday] Wed[nesday] Thu[rsday] syn keyword calendarWeekday Fri[day] Sat[urday] Sun[day] syn match calendarWeekday display '\<\%(Mon\|Tue\|Wed\|Thu\|Fri\|Sat\|Sun\)\.' \ nextgroup=calendarWeekdayMod syn match calendarWeekdayMod display '[+-]\d\+\>' syn case match syn match calendarTime display '\<\%([01]\=\d\|2[0-3]\):[0-5]\d\%(:[0-5]\d\)\=' syn match calendarTime display '\<\%(0\=[1-9]\|1[0-2]\):[0-5]\d\%(:[0-5]\d\)\=\s*[AaPp][Mm]' syn match calendarVariable '\*' if exists("c_minlines") let b:c_minlines = c_minlines else if !exists("c_no_if0") let b:c_minlines = 50 " #if 0 constructs can be long else let b:c_minlines = 15 " mostly for () constructs endif endif exec "syn sync ccomment calendarComment minlines=" . b:c_minlines hi def link calendarTodo Todo hi def link calendarComment Comment hi def link calendarCppString String hi def link calendarSpecial SpecialChar hi def link calendarPreCondit PreCondit hi def link calendarCppOut Comment hi def link calendarCppOut2 calendarCppOut hi def link calendarCppSkip calendarCppOut hi def link calendarIncluded String hi def link calendarInclude Include hi def link calendarDefine Macro hi def link calendarPreProc PreProc hi def link calendarKeyword Keyword hi def link calendarNumber Number hi def link calendarMonth String hi def link calendarWeekday String hi def link calendarWeekdayMod Special hi def link calendarTime Number hi def link calendarVariable Identifier let b:current_syntax = "calendar" let &cpo = s:cpo_save unlet s:cpo_save PK&]Qvim80/syntax/clipper.vimnu[" Vim syntax file: " Language: Clipper 5.2 & FlagShip " Maintainer: C R Zamana " Some things based on c.vim by Bram Moolenaar and pascal.vim by Mario Eusebio " Last Change: 2011 Dec 29 by Thilo Six " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " Exceptions for my "Very Own" (TM) user variables naming style. " If you don't like this, comment it syn match clipperUserVariable "\<[a,b,c,d,l,n,o,u,x][A-Z][A-Za-z0-9_]*\>" syn match clipperUserVariable "\<[a-z]\>" " Clipper is case insensitive ( see "exception" above ) syn case ignore " Clipper keywords ( in no particular order ) syn keyword clipperStatement ACCEPT APPEND BLANK FROM AVERAGE CALL CANCEL syn keyword clipperStatement CLEAR ALL GETS MEMORY TYPEAHEAD CLOSE syn keyword clipperStatement COMMIT CONTINUE SHARED NEW PICT syn keyword clipperStatement COPY FILE STRUCTURE STRU EXTE TO COUNT syn keyword clipperStatement CREATE FROM NIL syn keyword clipperStatement DELETE FILE DIR DISPLAY EJECT ERASE FIND GO syn keyword clipperStatement INDEX INPUT VALID WHEN syn keyword clipperStatement JOIN KEYBOARD LABEL FORM LIST LOCATE MENU TO syn keyword clipperStatement NOTE PACK QUIT READ syn keyword clipperStatement RECALL REINDEX RELEASE RENAME REPLACE REPORT syn keyword clipperStatement RETURN FORM RESTORE syn keyword clipperStatement RUN SAVE SEEK SELECT syn keyword clipperStatement SKIP SORT STORE SUM TEXT TOTAL TYPE UNLOCK syn keyword clipperStatement UPDATE USE WAIT ZAP syn keyword clipperStatement BEGIN SEQUENCE syn keyword clipperStatement SET ALTERNATE BELL CENTURY COLOR CONFIRM CONSOLE syn keyword clipperStatement CURSOR DATE DECIMALS DEFAULT DELETED DELIMITERS syn keyword clipperStatement DEVICE EPOCH ESCAPE EXACT EXCLUSIVE FILTER FIXED syn keyword clipperStatement FORMAT FUNCTION INTENSITY KEY MARGIN MESSAGE syn keyword clipperStatement ORDER PATH PRINTER PROCEDURE RELATION SCOREBOARD syn keyword clipperStatement SOFTSEEK TYPEAHEAD UNIQUE WRAP syn keyword clipperStatement BOX CLEAR GET PROMPT SAY ? ?? syn keyword clipperStatement DELETE TAG GO RTLINKCMD TMP DBLOCKINFO syn keyword clipperStatement DBEVALINFO DBFIELDINFO DBFILTERINFO DBFUNCTABLE syn keyword clipperStatement DBOPENINFO DBORDERCONDINFO DBORDERCREATEINF syn keyword clipperStatement DBORDERINFO DBRELINFO DBSCOPEINFO DBSORTINFO syn keyword clipperStatement DBSORTITEM DBTRANSINFO DBTRANSITEM WORKAREA " Conditionals syn keyword clipperConditional CASE OTHERWISE ENDCASE syn keyword clipperConditional IF ELSE ENDIF IIF IFDEF IFNDEF " Loops syn keyword clipperRepeat DO WHILE ENDDO syn keyword clipperRepeat FOR TO NEXT STEP " Visibility syn keyword clipperStorageClass ANNOUNCE STATIC syn keyword clipperStorageClass DECLARE EXTERNAL LOCAL MEMVAR PARAMETERS syn keyword clipperStorageClass PRIVATE PROCEDURE PUBLIC REQUEST STATIC syn keyword clipperStorageClass FIELD FUNCTION syn keyword clipperStorageClass EXIT PROCEDURE INIT PROCEDURE " Operators syn match clipperOperator "$\|%\|&\|+\|-\|->\|!" syn match clipperOperator "\.AND\.\|\.NOT\.\|\.OR\." syn match clipperOperator ":=\|<\|<=\|<>\|!=\|#\|=\|==\|>\|>=\|@" syn match clipperOperator "*" " Numbers syn match clipperNumber "\<\d\+\(u\=l\=\|lu\|f\)\>" " Includes syn region clipperIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match clipperIncluded contained "<[^>]*>" syn match clipperInclude "^\s*#\s*include\>\s*["<]" contains=clipperIncluded " String and Character constants syn region clipperString start=+"+ end=+"+ syn region clipperString start=+'+ end=+'+ " Delimiters syn match ClipperDelimiters "[()]\|[\[\]]\|[{}]\|[||]" " Special syn match clipperLineContinuation ";" " This is from Bram Moolenaar: if exists("c_comment_strings") " A comment can contain cString, cCharacter and cNumber. " But a "*/" inside a cString in a clipperComment DOES end the comment! " So we need to use a special type of cString: clipperCommentString, which " also ends on "*/", and sees a "*" at the start of the line as comment " again. Unfortunately this doesn't very well work for // type of comments :-( syntax match clipperCommentSkip contained "^\s*\*\($\|\s\+\)" syntax region clipperCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=clipperCommentSkip syntax region clipperComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" syntax region clipperComment start="/\*" end="\*/" contains=clipperCommentString,clipperCharacter,clipperNumber,clipperString syntax match clipperComment "//.*" contains=clipperComment2String,clipperCharacter,clipperNumber else syn region clipperComment start="/\*" end="\*/" syn match clipperComment "//.*" endif syntax match clipperCommentError "\*/" " Lines beggining with an "*" are comments too syntax match clipperComment "^\*.*" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link clipperConditional Conditional hi def link clipperRepeat Repeat hi def link clipperNumber Number hi def link clipperInclude Include hi def link clipperComment Comment hi def link clipperOperator Operator hi def link clipperStorageClass StorageClass hi def link clipperStatement Statement hi def link clipperString String hi def link clipperFunction Function hi def link clipperLineContinuation Special hi def link clipperDelimiters Delimiter hi def link clipperUserVariable Identifier let b:current_syntax = "clipper" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]C[mrIrIvim80/syntax/maxima.vimnu[" Vim syntax file " Language: Maxima (symbolic algebra program) " Maintainer: Robert Dodier (robert.dodier@gmail.com) " Last Change: April 6, 2006 " Version: 1 " Adapted mostly from xmath.vim " Number formats adapted from r.vim " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn sync lines=1000 " parenthesis sanity checker syn region maximaZone matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" transparent contains=ALLBUT,maximaError,maximaBraceError,maximaCurlyError syn region maximaZone matchgroup=Delimiter start="{" matchgroup=Delimiter end="}" transparent contains=ALLBUT,maximaError,maximaBraceError,maximaParenError syn region maximaZone matchgroup=Delimiter start="\[" matchgroup=Delimiter end="]" transparent contains=ALLBUT,maximaError,maximaCurlyError,maximaParenError syn match maximaError "[)\]}]" syn match maximaBraceError "[)}]" contained syn match maximaCurlyError "[)\]]" contained syn match maximaParenError "[\]}]" contained syn match maximaComma "[\[\](),;]" syn match maximaComma "\.\.\.$" " A bunch of useful maxima keywords syn keyword maximaConditional if then else elseif and or not syn keyword maximaRepeat do for thru " ---------------------- BEGIN LIST OF ALL FUNCTIONS (EXCEPT KEYWORDS) ---------------------- syn keyword maximaFunc abasep abs absboxchar absint acos acosh acot acoth acsc syn keyword maximaFunc acsch activate activecontexts addcol additive addrow adim syn keyword maximaFunc adjoint af aform airy algebraic algepsilon algexact algsys syn keyword maximaFunc alg_type alias aliases allbut all_dotsimp_denoms allroots allsym syn keyword maximaFunc alphabetic antid antidiff antisymmetric append appendfile syn keyword maximaFunc apply apply1 apply2 applyb1 apropos args array arrayapply syn keyword maximaFunc arrayinfo arraymake arrays asec asech asin asinh askexp syn keyword maximaFunc askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume syn keyword maximaFunc assume_pos assume_pos_pred assumescalar asymbol asympa at atan syn keyword maximaFunc atan2 atanh atensimp atom atomgrad atrig1 atvalue augcoefmatrix syn keyword maximaFunc av backsubst backtrace bashindices batch batchload bc2 bdvac syn keyword maximaFunc berlefact bern bernpoly bessel besselexpand bessel_i bessel_j syn keyword maximaFunc bessel_k bessel_y beta bezout bffac bfhzeta bfloat bfloatp syn keyword maximaFunc bfpsi bfpsi0 bftorat bftrunc bfzeta bimetric binomial block syn keyword maximaFunc bothcoef box boxchar break breakup bug_report build_info buildq syn keyword maximaFunc burn cabs canform canten carg cartan catch cauchysum cbffac syn keyword maximaFunc cdisplay cf cfdisrep cfexpand cflength cframe_flag cgeodesic syn keyword maximaFunc changename changevar charpoly checkdiv check_overlaps christof syn keyword maximaFunc clear_rules closefile closeps cmetric cnonmet_flag coeff syn keyword maximaFunc coefmatrix cograd col collapse columnvector combine commutative syn keyword maximaFunc comp2pui compfile compile compile_file components concan concat syn keyword maximaFunc conj conjugate conmetderiv cons constant constantp cont2part syn keyword maximaFunc content context contexts contortion contract contragrad coord syn keyword maximaFunc copylist copymatrix cos cosh cosnpiflag cot coth covdiff syn keyword maximaFunc covect create_list csc csch csetup ctaylor ctaypov ctaypt syn keyword maximaFunc ctayswitch ctayvar ct_coords ct_coordsys ctorsion_flag ctransform syn keyword maximaFunc ctrgsimp current_let_rule_package dblint deactivate debugmode syn keyword maximaFunc declare declare_translated declare_weight decsym syn keyword maximaFunc default_let_rule_package defcon define define_variable defint syn keyword maximaFunc defmatch defrule deftaylor del delete deleten delta demo syn keyword maximaFunc demoivre denom dependencies depends derivabbrev derivdegree syn keyword maximaFunc derivlist derivsubst describe desolve determinant detout syn keyword maximaFunc diagmatrix diagmatrixp diagmetric diff dim dimension direct syn keyword maximaFunc disolate disp dispcon dispflag dispform dispfun display syn keyword maximaFunc display2d display_format_internal disprule dispterms distrib syn keyword maximaFunc divide divsum doallmxops domain domxexpt domxmxops domxnctimes syn keyword maximaFunc dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp syn keyword maximaFunc dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules syn keyword maximaFunc dotsimp dpart dscalar %e echelon %edispflag eigenvalues syn keyword maximaFunc eigenvectors eighth einstein eivals eivects ele2comp syn keyword maximaFunc ele2polynome ele2pui elem eliminate elliptic_e elliptic_ec syn keyword maximaFunc elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix %emode syn keyword maximaFunc endcons entermatrix entertensor entier %enumer equal equalp erf syn keyword maximaFunc erfflag errcatch error errormsg error_size error_syms syn keyword maximaFunc %e_to_numlog euler ev eval evenp every evflag evfun evundiff syn keyword maximaFunc example exp expand expandwrt expandwrt_denom expandwrt_factored syn keyword maximaFunc explose expon exponentialize expop express expt exptdispflag syn keyword maximaFunc exptisolate exptsubst extdiff extract_linear_equations ezgcd syn keyword maximaFunc facexpand factcomb factlim factor factorflag factorial factorout syn keyword maximaFunc factorsum facts false fast_central_elements fast_linsolve syn keyword maximaFunc fasttimes fb feature featurep features fft fib fibtophi fifth syn keyword maximaFunc filename_merge file_search file_search_demo file_search_lisp syn keyword maximaFunc file_search_maxima file_type fillarray findde first fix flatten syn keyword maximaFunc flipflag float float2bf floatnump flush flush1deriv flushd syn keyword maximaFunc flushnd forget fortindent fortran fortspaces fourcos fourexpand syn keyword maximaFunc fourier fourint fourintcos fourintsin foursimp foursin fourth syn keyword maximaFunc fpprec fpprintprec frame_bracket freeof fullmap fullmapl syn keyword maximaFunc fullratsimp fullratsubst funcsolve functions fundef funmake funp syn keyword maximaFunc gamma %gamma gammalim gauss gcd gcdex gcfactor gdet genfact syn keyword maximaFunc genindex genmatrix gensumnum get getchar gfactor gfactorsum syn keyword maximaFunc globalsolve go gradef gradefs gramschmidt grind grobner_basis syn keyword maximaFunc gschmit hach halfangles hermite hipow hodge horner i0 i1 syn keyword maximaFunc *read-base* ic1 ic2 icc1 icc2 ic_convert ichr1 ichr2 icounter syn keyword maximaFunc icurvature ident idiff idim idummy idummyx ieqn ieqnprint ifb syn keyword maximaFunc ifc1 ifc2 ifg ifgi ifr iframe_bracket_form iframes ifri ift syn keyword maximaFunc igeodesic_coords igeowedge_flag ikt1 ikt2 ilt imagpart imetric syn keyword maximaFunc inchar indexed_tensor indices inf %inf infeval infinity infix syn keyword maximaFunc inflag infolists init_atensor init_ctensor inm inmc1 inmc2 syn keyword maximaFunc innerproduct in_netmath inpart inprod inrt integerp integrate syn keyword maximaFunc integrate_use_rootsof integration_constant_counter interpolate syn keyword maximaFunc intfaclim intopois intosum intpolabs intpolerror intpolrel syn keyword maximaFunc invariant1 invariant2 inverse_jacobi_cd inverse_jacobi_cn syn keyword maximaFunc inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn syn keyword maximaFunc inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd syn keyword maximaFunc inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd syn keyword maximaFunc inverse_jacobi_sn invert is ishow isolate isolate_wrt_times syn keyword maximaFunc isqrt itr j0 j1 jacobi jacobi_cd jacobi_cn jacobi_cs jacobi_dc syn keyword maximaFunc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_sc syn keyword maximaFunc jacobi_sd jacobi_sn jn kdels kdelta keepfloat kill killcontext syn keyword maximaFunc kinvariant kostka kt labels lambda laplace lassociative last syn keyword maximaFunc lc2kdt lc_l lcm lc_u ldefint ldisp ldisplay leinstein length syn keyword maximaFunc let letrat let_rule_packages letrules letsimp levi_civita lfg syn keyword maximaFunc lfreeof lg lgtreillis lhospitallim lhs liediff limit limsubst syn keyword maximaFunc linear linechar linel linenum linsolve linsolve_params syn keyword maximaFunc linsolvewarn listarith listarray listconstvars listdummyvars syn keyword maximaFunc list_nc_monomials listoftens listofvars listp lmxchar load syn keyword maximaFunc loadfile loadprint local log logabs logarc logconcoeffp syn keyword maximaFunc logcontract logexpand lognegint lognumer logsimp lopow syn keyword maximaFunc lorentz_gauge lpart lratsubst lriem lriemann lsum ltreillis syn keyword maximaFunc m1pbranch macroexpansion mainvar make_array makebox makefact syn keyword maximaFunc makegamma makelist make_random_state make_transform map mapatom syn keyword maximaFunc maperror maplist matchdeclare matchfix matrix matrix_element_add syn keyword maximaFunc matrix_element_mult matrix_element_transpose matrixmap matrixp syn keyword maximaFunc mattrace max maxapplydepth maxapplyheight maxnegex maxposex syn keyword maximaFunc maxtayorder member min %minf minfactorial minor mod syn keyword maximaFunc mode_check_errorp mode_checkp mode_check_warnp mode_declare syn keyword maximaFunc mode_identity modulus mon2schur mono monomial_dimensions syn keyword maximaFunc multi_elem multinomial multi_orbit multiplicative multiplicities syn keyword maximaFunc multi_pui multsym multthru myoptions nc_degree ncexpt ncharpoly syn keyword maximaFunc negdistrib negsumdispflag newcontext newdet newton niceindices syn keyword maximaFunc niceindicespref ninth nm nmc noeval nolabels nonmetricity syn keyword maximaFunc nonscalar nonscalarp noun noundisp nounify nouns np npi syn keyword maximaFunc nptetrad nroots nterms ntermst nthroot ntrig num numberp numer syn keyword maximaFunc numerval numfactor nusum obase oddp ode2 op openplot_curves syn keyword maximaFunc operatorp opproperties opsubst optimize optimprefix optionset syn keyword maximaFunc orbit ordergreat ordergreatp orderless orderlessp outative syn keyword maximaFunc outchar outermap outofpois packagefile pade part part2cont syn keyword maximaFunc partfrac partition partpol partswitch permanent permut petrov syn keyword maximaFunc pfeformat pi pickapart piece playback plog plot2d plot2d_ps syn keyword maximaFunc plot3d plot_options poisdiff poisexpt poisint poislim poismap syn keyword maximaFunc poisplus poissimp poisson poissubst poistimes poistrim polarform syn keyword maximaFunc polartorect polynome2ele posfun potential powerdisp powers syn keyword maximaFunc powerseries pred prederror primep print printpois printprops syn keyword maximaFunc prodhack prodrac product programmode prompt properties props syn keyword maximaFunc propvars pscom psdraw_curve psexpand psi pui pui2comp pui2ele syn keyword maximaFunc pui2polynome pui_direct puireduc put qput qq quad_qag quad_qagi syn keyword maximaFunc quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quanc8 quit syn keyword maximaFunc qunit quotient radcan radexpand radsubstflag random rank syn keyword maximaFunc rassociative rat ratalgdenom ratchristof ratcoef ratdenom syn keyword maximaFunc ratdenomdivide ratdiff ratdisrep rateinstein ratepsilon ratexpand syn keyword maximaFunc ratfac ratmx ratnumer ratnump ratp ratprint ratriemann ratsimp syn keyword maximaFunc ratsimpexpons ratsubst ratvars ratweight ratweights ratweyl syn keyword maximaFunc ratwtlvl read readonly realonly realpart realroots rearray syn keyword maximaFunc rectform recttopolar rediff refcheck rem remainder remarray syn keyword maximaFunc rembox remcomps remcon remcoord remfun remfunction remlet syn keyword maximaFunc remove remrule remsym remvalue rename reset residue resolvante syn keyword maximaFunc resolvante_alternee1 resolvante_bipartite resolvante_diedrale syn keyword maximaFunc resolvante_klein resolvante_klein3 resolvante_produit_sym syn keyword maximaFunc resolvante_unitaire resolvante_vierer rest resultant return syn keyword maximaFunc reveal reverse revert revert2 rhs ric ricci riem riemann syn keyword maximaFunc rinvariant risch rmxchar rncombine %rnum_list romberg rombergabs syn keyword maximaFunc rombergit rombergmin rombergtol room rootsconmode rootscontract syn keyword maximaFunc rootsepsilon round row run_testsuite save savedef savefactors syn keyword maximaFunc scalarmatrixp scalarp scalefactors scanmap schur2comp sconcat syn keyword maximaFunc scsimp scurvature sec sech second setcheck setcheckbreak syn keyword maximaFunc setelmx set_plot_option set_random_state setup_autoload syn keyword maximaFunc set_up_dot_simplifications setval seventh sf show showcomps syn keyword maximaFunc showratvars showtime sign signum similaritytransform simpsum syn keyword maximaFunc simtran sin sinh sinnpiflag sixth solve solvedecomposes syn keyword maximaFunc solveexplicit solvefactors solve_inconsistent_error solvenullwarn syn keyword maximaFunc solveradcan solvetrigwarn somrac sort sparse spherical_bessel_j syn keyword maximaFunc spherical_bessel_y spherical_hankel1 spherical_hankel2 syn keyword maximaFunc spherical_harmonic splice sqfr sqrt sqrtdispflag sstatus syn keyword maximaFunc stardisp status string stringout sublis sublis_apply_lambda syn keyword maximaFunc sublist submatrix subst substinpart substpart subvarp sum syn keyword maximaFunc sumcontract sumexpand sumhack sumsplitfact supcontext symbolp syn keyword maximaFunc symmetric symmetricp system tan tanh taylor taylordepth syn keyword maximaFunc taylorinfo taylor_logexpand taylor_order_coefficients taylorp syn keyword maximaFunc taylor_simplifier taylor_truncate_polynomials taytorat tcl_output syn keyword maximaFunc tcontract tellrat tellsimp tellsimpafter tensorkill tentex tenth syn keyword maximaFunc tex %th third throw time timer timer_devalue timer_info syn keyword maximaFunc tldefint tlimit tlimswitch todd_coxeter to_lisp totaldisrep syn keyword maximaFunc totalfourier totient tpartpol tr trace trace_options syn keyword maximaFunc transcompile translate translate_file transpose transrun syn keyword maximaFunc tr_array_as_ref tr_bound_function_applyp treillis treinat syn keyword maximaFunc tr_file_tty_messagesp tr_float_can_branch_complex syn keyword maximaFunc tr_function_call_default triangularize trigexpand trigexpandplus syn keyword maximaFunc trigexpandtimes triginverses trigrat trigreduce trigsign trigsimp syn keyword maximaFunc tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars true syn keyword maximaFunc trunc truncate tr_warn_bad_function_calls tr_warn_fexpr syn keyword maximaFunc tr_warnings_get tr_warn_meval tr_warn_mode tr_warn_undeclared syn keyword maximaFunc tr_warn_undefined_variable tr_windy ttyoff ueivects ufg ug syn keyword maximaFunc ultraspherical undiff uniteigenvectors unitvector unknown unorder syn keyword maximaFunc unsum untellrat untimer untrace uric uricci uriem uriemann syn keyword maximaFunc use_fast_arrays uvect values vect_cross vectorpotential syn keyword maximaFunc vectorsimp verb verbify verbose weyl with_stdout writefile syn keyword maximaFunc xgraph_curves xthru zerobern zeroequiv zeromatrix zeta zeta%pi syn match maximaOp "[\*\/\+\-\#\!\~\^\=\:\<\>\@]" " ---------------------- END LIST OF ALL FUNCTIONS (EXCEPT KEYWORDS) ---------------------- syn case match " Labels (supports maxima's goto) syn match maximaLabel "^\s*<[a-zA-Z_][a-zA-Z0-9%_]*>" " String and Character constants " Highlight special characters (those which have a backslash) differently syn match maximaSpecial contained "\\\d\d\d\|\\." syn region maximaString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=maximaSpecial syn match maximaCharacter "'[^\\]'" syn match maximaSpecialChar "'\\.'" " number with no fractional part or exponent syn match maximaNumber /\<\d\+\>/ " floating point number with integer and fractional parts and optional exponent syn match maximaFloat /\<\d\+\.\d*\([BbDdEeSs][-+]\=\d\+\)\=\>/ " floating point number with no integer part and optional exponent syn match maximaFloat /\<\.\d\+\([BbDdEeSs][-+]\=\d\+\)\=\>/ " floating point number with no fractional part and optional exponent syn match maximaFloat /\<\d\+[BbDdEeSs][-+]\=\d\+\>/ " Comments: " maxima supports /* ... */ (like C) syn keyword maximaTodo contained TODO Todo DEBUG syn region maximaCommentBlock start="/\*" end="\*/" contains=maximaString,maximaTodo,maximaCommentBlock " synchronizing syn sync match maximaSyncComment grouphere maximaCommentBlock "/*" syn sync match maximaSyncComment groupthere NONE "*/" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link maximaBraceError maximaError hi def link maximaCmd maximaStatement hi def link maximaCurlyError maximaError hi def link maximaFuncCmd maximaStatement hi def link maximaParenError maximaError " The default methods for highlighting. Can be overridden later hi def link maximaCharacter Character hi def link maximaComma Function hi def link maximaCommentBlock Comment hi def link maximaConditional Conditional hi def link maximaError Error hi def link maximaFunc Delimiter hi def link maximaOp Delimiter hi def link maximaLabel PreProc hi def link maximaNumber Number hi def link maximaFloat Float hi def link maximaRepeat Repeat hi def link maximaSpecial Type hi def link maximaSpecialChar SpecialChar hi def link maximaStatement Statement hi def link maximaString String hi def link maximaTodo Todo let b:current_syntax = "maxima" PK&]=11vim80/syntax/sh.vimnu[" Vim syntax file " Language: shell (sh) Korn shell (ksh) bash (sh) " Maintainer: Charles E. Campbell " Previous Maintainer: Lennart Schultz " Last Change: Mar 19, 2018 " Version: 174 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH " For options and settings, please use: :help ft-sh-syntax " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr) " quit when a syntax file was already loaded {{{1 if exists("b:current_syntax") finish endif " trying to answer the question: which shell is /bin/sh, really? " If the user has not specified any of g:is_kornshell, g:is_bash, g:is_posix, g:is_sh, then guess. if getline(1) =~ '\ fold else com! -nargs=* ShFoldFunctions endif if s:sh_fold_heredoc com! -nargs=* ShFoldHereDoc fold else com! -nargs=* ShFoldHereDoc endif if s:sh_fold_ifdofor com! -nargs=* ShFoldIfDoFor fold else com! -nargs=* ShFoldIfDoFor endif " sh syntax is case sensitive {{{1 syn case match " Clusters: contains=@... clusters {{{1 "================================== syn cluster shErrorList contains=shDoError,shIfError,shInError,shCaseError,shEsacError,shCurlyError,shParenError,shTestError,shOK if exists("b:is_kornshell") || exists("b:is_bash") syn cluster ErrorList add=shDTestError endif syn cluster shArithParenList contains=shArithmetic,shCaseEsac,shComment,shDeref,shDo,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shHereString,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement,shIf,shFor syn cluster shArithList contains=@shArithParenList,shParenError syn cluster shCaseEsacList contains=shCaseStart,shCase,shCaseBar,shCaseIn,shComment,shDeref,shDerefSimple,shCaseCommandSub,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote,shCtrlSeq,@shErrorList,shStringSpecial,shCaseRange syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq syn cluster shCommandSubList contains=shAlias,shArithmetic,shCmdParenRegion,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shHereDoc,shNumber,shOperator,shOption,shPosnParm,shHereString,shRedir,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPSR,shDerefPPS syn cluster shDerefVarList contains=shDerefOff,shDerefOp,shDerefVarArray,shDerefOpError syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shEscape,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote syn cluster shExprList1 contains=shCharClass,shNumber,shOperator,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shDblBrace,shDeref,shDerefSimple,shCtrlSeq syn cluster shExprList2 contains=@shExprList1,@shCaseList,shTest syn cluster shFunctionList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shOption,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shOperator,shCtrlSeq if exists("b:is_kornshell") || exists("b:is_bash") syn cluster shFunctionList add=shRepeat syn cluster shFunctionList add=shDblBrace,shDblParen endif syn cluster shHereBeginList contains=@shCommandSubList syn cluster shHereList contains=shBeginHere,shHerePayload syn cluster shHereListDQ contains=shBeginHere,@shDblQuoteList,shHerePayload syn cluster shIdList contains=shCommandSub,shWrapLineOperator,shSetOption,shDeref,shDerefSimple,shHereString,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial,shAtExpr syn cluster shIfList contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo syn cluster shLoopList contains=@shCaseList,@shErrorList,shCaseEsac,shConditional,shDblBrace,shExpr,shFor,shForPP,shIf,shOption,shSet,shTest,shTestOpr,shTouch syn cluster shPPSRightList contains=shComment,shDeref,shDerefSimple,shEscape,shPosnParm syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator syn cluster shTestList contains=shCharClass,shCommandSub,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shSingleQuote,shTest,shTestOpr syn cluster shNoZSList contains=shSpecialNoZS " Echo: {{{1 " ==== " This one is needed INSIDE a CommandSub, so that `echo bla` be correct syn region shEcho matchgroup=shStatement start="\" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|()`]"me=e-1 end="\d[<>]"me=e-2 end="\s#"me=e-2 contains=@shEchoList skipwhite nextgroup=shQuickComment syn region shEcho matchgroup=shStatement start="\" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|()`]"me=e-1 end="\d[<>]"me=e-2 end="\s#"me=e-2 contains=@shEchoList skipwhite nextgroup=shQuickComment syn match shEchoQuote contained '\%(\\\\\)*\\["`'()]' " This must be after the strings, so that ... \" will be correct syn region shEmbeddedEcho contained matchgroup=shStatement start="\" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|`)]"me=e-1 end="\d[<>]"me=e-2 end="\s#"me=e-2 contains=shNumber,shExSingleQuote,shSingleQuote,shDeref,shDerefSimple,shSpecialVar,shOperator,shExDoubleQuote,shDoubleQuote,shCharClass,shCtrlSeq " Alias: {{{1 " ===== if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix") syn match shStatement "\" syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]\+\)\@=" skip="\\$" end="\>\|`" syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]\+=\)\@=" skip="\\$" end="=" " Touch: {{{1 " ===== syn match shTouch '\[^;#]*' skipwhite nextgroup=shComment contains=shTouchCmd,shDoubleQuote,shSingleQuote,shDeref,shDerefSimple syn match shTouchCmd '\' contained endif " Error Codes: {{{1 " ============ if !exists("g:sh_no_error") syn match shDoError "\" syn match shIfError "\" syn match shInError "\" syn match shCaseError ";;" syn match shEsacError "\" syn match shCurlyError "}" syn match shParenError ")" syn match shOK '\.\(done\|fi\|in\|esac\)' if exists("b:is_kornshell") || exists("b:is_bash") syn match shDTestError "]]" endif syn match shTestError "]" endif " Options: {{{1 " ==================== syn match shOption "\s\zs[-+][-_a-zA-Z#@]\+" syn match shOption "\s\zs--[^ \t$`'"|);]\+" " File Redirection Highlighted As Operators: {{{1 "=========================================== syn match shRedir "\d\=>\(&[-0-9]\)\=" syn match shRedir "\d\=>>-\=" syn match shRedir "\d\=<\(&[-0-9]\)\=" syn match shRedir "\d<<-\=" " Operators: {{{1 " ========== syn match shOperator "<<\|>>" contained syn match shOperator "[!&;|]" contained syn match shOperator "\[[[^:]\|\]]" contained syn match shOperator "[-=/*+%]\==" skipwhite nextgroup=shPattern syn match shPattern "\<\S\+\())\)\@=" contained contains=shExSingleQuote,shSingleQuote,shExDoubleQuote,shDoubleQuote,shDeref " Subshells: {{{1 " ========== syn region shExpr transparent matchgroup=shExprRegion start="{" end="}" contains=@shExprList2 nextgroup=shSpecialNxt syn region shSubSh transparent matchgroup=shSubShRegion start="[^(]\zs(" end=")" contains=@shSubShList nextgroup=shSpecialNxt " Tests: {{{1 "======= syn region shExpr matchgroup=shRange start="\[" skip=+\\\\\|\\$\|\[+ end="\]" contains=@shTestList,shSpecial syn region shTest transparent matchgroup=shStatement start="\+ end="\<;\_s*then\>" end="\" contains=@shIfList ShFoldIfDoFor syn region shFor matchgroup=shLoop start="\#\=" syn match shNumber "\<-\=\.\=\d\+\>#\=" syn match shCtrlSeq "\\\d\d\d\|\\[abcfnrtv0]" contained if exists("b:is_bash") syn match shSpecial "[^\\]\(\\\\\)*\zs\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[abefnrtv]" contained syn match shSpecial "^\(\\\\\)*\zs\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[abefnrtv]" contained syn region shExSingleQuote matchgroup=shQuote start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial,shSpecial nextgroup=shSpecialNxt syn region shExDoubleQuote matchgroup=shQuote start=+\$"+ skip=+\\\\\|\\.\|\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,shSpecial nextgroup=shSpecialNxt elseif !exists("g:sh_no_error") syn region shExSingleQuote matchGroup=Error start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial syn region shExDoubleQuote matchGroup=Error start=+\$"+ skip=+\\\\\|\\.+ end=+"+ contains=shStringSpecial endif syn region shSingleQuote matchgroup=shQuote start=+'+ end=+'+ contains=@Spell nextgroup=shSpecialStart syn region shDoubleQuote matchgroup=shQuote start=+\%(\%(\\\\\)*\\\)\@" else syn keyword shTodo contained COMBAK FIXME TODO XXX endif syn match shComment "^\s*\zs#.*$" contains=@shCommentGroup syn match shComment "\s\zs#.*$" contains=@shCommentGroup syn match shComment contained "#.*$" contains=@shCommentGroup syn match shQuickComment contained "#.*$" " Here Documents: {{{1 " ========================================= ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc01 start="<<\s*\\\=\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc01 end="^\z1\s*$" contains=@shDblQuoteList ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc02 start="<<\s*\"\z([^ \t0-9|>]\+\)\"" matchgroup=shHereDoc02 end="^\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc03 start="<<-\s*\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc03 end="^\s*\z1\s*$" contains=@shDblQuoteList ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc04 start="<<-\s*'\z([^'0-9]\+\)'" matchgroup=shHereDoc04 end="^\s*\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc05 start="<<\s*'\z([^'0-9]\+\)'" matchgroup=shHereDoc05 end="^\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc06 start="<<-\s*\"\z([^ \t0-9|>]\+\)\"" matchgroup=shHereDoc06 end="^\s*\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc07 start="<<\s*\\\_$\_s*\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc07 end="^\z1\s*$" contains=@shDblQuoteList ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc08 start="<<\s*\\\_$\_s*'\z([^ \t0-9|>]\+\)'" matchgroup=shHereDoc08 end="^\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc09 start="<<\s*\\\_$\_s*\"\z([^ \t0-9|>]\+\)\"" matchgroup=shHereDoc09 end="^\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc10 start="<<-\s*\\\_$\_s*\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc10 end="^\s*\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc11 start="<<-\s*\\\_$\_s*\\\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc11 end="^\s*\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc12 start="<<-\s*\\\_$\_s*'\z([^ \t0-9|>]\+\)'" matchgroup=shHereDoc12 end="^\s*\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc13 start="<<-\s*\\\_$\_s*\"\z([^ \t0-9|>]\+\)\"" matchgroup=shHereDoc13 end="^\s*\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc14 start="<<\\\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc14 end="^\z1\s*$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc15 start="<<-\s*\\\z([^ \t0-9|>]\+\)" matchgroup=shHereDoc15 end="^\s*\z1\s*$" " Here Strings: {{{1 " ============= " available for: bash; ksh (really should be ksh93 only) but not if its a posix if exists("b:is_bash") || (exists("b:is_kornshell") && !exists("b:is_posix")) syn match shHereString "<<<" skipwhite nextgroup=shCmdParenRegion endif " Identifiers: {{{1 "============= syn match shSetOption "\s\zs[-+][a-zA-Z0-9]\+\>" contained syn match shVariable "\<\([bwglsav]:\)\=[a-zA-Z0-9.!@_%+,]*\ze=" nextgroup=shVarAssign syn match shVarAssign "=" contained nextgroup=shCmdParenRegion,shPattern,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shSingleQuote,shExSingleQuote syn region shAtExpr contained start="@(" end=")" contains=@shIdList if exists("b:is_bash") syn region shSetList oneline matchgroup=shSet start="\<\(declare\|typeset\|local\|export\|unset\)\>\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+#\|=" contains=@shIdList syn region shSetList oneline matchgroup=shSet start="\\ze[^/]" end="\ze[;|)]\|$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+=" contains=@shIdList elseif exists("b:is_kornshell") || exists("b:is_posix") syn region shSetList oneline matchgroup=shSet start="\<\(typeset\|export\|unset\)\>\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]" contains=@shIdList syn region shSetList oneline matchgroup=shSet start="\\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]" contains=@shIdList else syn region shSetList oneline matchgroup=shSet start="\<\(set\|export\|unset\)\>\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]" contains=@shIdList endif " Functions: {{{1 if !exists("b:is_posix") syn keyword shFunctionKey function skipwhite skipnl nextgroup=shFunctionTwo endif if exists("b:is_bash") ShFoldFunctions syn region shFunctionOne matchgroup=shFunction start="^\s*[A-Za-z_0-9:][-a-zA-Z_0-9:]*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionTwo matchgroup=shFunction start="\%(do\)\@!\&\<[A-Za-z_0-9:][-a-zA-Z_0-9:]*\>\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionThree matchgroup=shFunction start="^\s*[A-Za-z_0-9:][-a-zA-Z_0-9:]*\s*()\_s*(" end=")" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionFour matchgroup=shFunction start="\%(do\)\@!\&\<[A-Za-z_0-9:][-a-zA-Z_0-9:]*\>\s*\%(()\)\=\_s*)" end=")" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment else ShFoldFunctions syn region shFunctionOne matchgroup=shFunction start="^\s*\h\w*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionTwo matchgroup=shFunction start="\%(do\)\@!\&\<\h\w*\>\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionThree matchgroup=shFunction start="^\s*\h\w*\s*()\_s*(" end=")" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionFour matchgroup=shFunction start="\%(do\)\@!\&\<\h\w*\>\s*\%(()\)\=\_s*(" end=")" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment endif " Parameter Dereferencing: {{{1 " ======================== if !exists("g:sh_no_error") syn match shDerefWordError "[^}$[~]" contained endif syn match shDerefSimple "\$\%(\h\w*\|\d\)" nextgroup=@shNoZSList syn region shDeref matchgroup=PreProc start="\${" end="}" contains=@shDerefList,shDerefVarArray syn match shDerefSimple "\$[-#*@!?]" nextgroup=@shNoZSList syn match shDerefSimple "\$\$" nextgroup=@shNoZSList syn match shDerefSimple "\${\d}" nextgroup=@shNoZSList if exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix") syn region shDeref matchgroup=PreProc start="\${##\=" end="}" contains=@shDerefList nextgroup=@shSpecialNoZS syn region shDeref matchgroup=PreProc start="\${\$\$" end="}" contains=@shDerefList nextgroup=@shSpecialNoZS endif " ksh: ${!var[*]} array index list syntax: {{{1 " ======================================== if exists("b:is_kornshell") || exists("b:is_posix") syn region shDeref matchgroup=PreProc start="\${!" end="}" contains=@shDerefVarArray endif " bash: ${!prefix*} and ${#parameter}: {{{1 " ==================================== if exists("b:is_bash") syn region shDeref matchgroup=PreProc start="\${!" end="\*\=}" contains=@shDerefList,shDerefOff syn match shDerefVar contained "{\@<=!\h\w*" nextgroup=@shDerefVarList endif if exists("b:is_kornshell") syn match shDerefVar contained "{\@<=!\h\w*[[:alnum:]_.]*" nextgroup=@shDerefVarList endif syn match shDerefSpecial contained "{\@<=[-*@?0]" nextgroup=shDerefOp,shDerefOpError syn match shDerefSpecial contained "\({[#!]\)\@<=[[:alnum:]*@_]\+" nextgroup=@shDerefVarList,shDerefOp syn match shDerefVar contained "{\@<=\h\w*" nextgroup=@shDerefVarList syn match shDerefVar contained '\d' nextgroup=@shDerefVarList if exists("b:is_kornshell") || exists("b:is_posix") syn match shDerefVar contained "{\@<=\h\w*[[:alnum:]_.]*" nextgroup=@shDerefVarList endif " sh ksh bash : ${var[... ]...} array reference: {{{1 syn region shDerefVarArray contained matchgroup=shDeref start="\[" end="]" contains=@shCommandSubList nextgroup=shDerefOp,shDerefOpError " Special ${parameter OPERATOR word} handling: {{{1 " sh ksh bash : ${parameter:-word} word is default value " sh ksh bash : ${parameter:=word} assign word as default value " sh ksh bash : ${parameter:?word} display word if parameter is null " sh ksh bash : ${parameter:+word} use word if parameter is not null, otherwise nothing " ksh bash : ${parameter#pattern} remove small left pattern " ksh bash : ${parameter##pattern} remove large left pattern " ksh bash : ${parameter%pattern} remove small right pattern " ksh bash : ${parameter%%pattern} remove large right pattern " bash : ${parameter^pattern} Case modification " bash : ${parameter^^pattern} Case modification " bash : ${parameter,pattern} Case modification " bash : ${parameter,,pattern} Case modification syn cluster shDerefPatternList contains=shDerefPattern,shDerefString if !exists("g:sh_no_error") syn match shDerefOpError contained ":[[:punct:]]" endif syn match shDerefOp contained ":\=[-=?]" nextgroup=@shDerefPatternList syn match shDerefOp contained ":\=+" nextgroup=@shDerefPatternList if exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix") syn match shDerefOp contained "#\{1,2}" nextgroup=@shDerefPatternList syn match shDerefOp contained "%\{1,2}" nextgroup=@shDerefPatternList syn match shDerefPattern contained "[^{}]\+" contains=shDeref,shDerefSimple,shDerefPattern,shDerefString,shCommandSub,shDerefEscape nextgroup=shDerefPattern syn region shDerefPattern contained start="{" end="}" contains=shDeref,shDerefSimple,shDerefString,shCommandSub nextgroup=shDerefPattern syn match shDerefEscape contained '\%(\\\\\)*\\.' endif if exists("b:is_bash") syn match shDerefOp contained "[,^]\{1,2}" nextgroup=@shDerefPatternList endif syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@" syn sync match shCaseEsacSync groupthere shCaseEsac "\" syn sync match shDoSync grouphere shDo "\" syn sync match shDoSync groupthere shDo "\" syn sync match shForSync grouphere shFor "\" syn sync match shForSync groupthere shFor "\" syn sync match shIfSync grouphere shIf "\" syn sync match shIfSync groupthere shIf "\" syn sync match shUntilSync grouphere shRepeat "\" syn sync match shWhileSync grouphere shRepeat "\" " Default Highlighting: {{{1 " ===================== if !exists("skip_sh_syntax_inits") hi def link shArithRegion shShellVariables hi def link shAstQuote shDoubleQuote hi def link shAtExpr shSetList hi def link shBeginHere shRedir hi def link shCaseBar shConditional hi def link shCaseCommandSub shCommandSub hi def link shCaseDoubleQuote shDoubleQuote hi def link shCaseIn shConditional hi def link shQuote shOperator hi def link shCaseSingleQuote shSingleQuote hi def link shCaseStart shConditional hi def link shCmdSubRegion shShellVariables hi def link shColon shComment hi def link shDerefOp shOperator hi def link shDerefPOL shDerefOp hi def link shDerefPPS shDerefOp hi def link shDerefPSR shDerefOp hi def link shDeref shShellVariables hi def link shDerefDelim shOperator hi def link shDerefSimple shDeref hi def link shDerefSpecial shDeref hi def link shDerefString shDoubleQuote hi def link shDerefVar shDeref hi def link shDoubleQuote shString hi def link shEcho shString hi def link shEchoDelim shOperator hi def link shEchoQuote shString hi def link shForPP shLoop hi def link shFunction Function hi def link shEmbeddedEcho shString hi def link shEscape shCommandSub hi def link shExDoubleQuote shDoubleQuote hi def link shExSingleQuote shSingleQuote hi def link shHereDoc shString hi def link shHereString shRedir hi def link shHerePayload shHereDoc hi def link shLoop shStatement hi def link shSpecialNxt shSpecial hi def link shNoQuote shDoubleQuote hi def link shOption shCommandSub hi def link shPattern shString hi def link shParen shArithmetic hi def link shPosnParm shShellVariables hi def link shQuickComment shComment hi def link shRange shOperator hi def link shRedir shOperator hi def link shSetListDelim shOperator hi def link shSetOption shOption hi def link shSingleQuote shString hi def link shSource shOperator hi def link shStringSpecial shSpecial hi def link shSpecialStart shSpecial hi def link shSubShRegion shOperator hi def link shTestOpr shConditional hi def link shTestPattern shString hi def link shTestDoubleQuote shString hi def link shTestSingleQuote shString hi def link shTouchCmd shStatement hi def link shVariable shSetList hi def link shWrapLineOperator shOperator if exists("b:is_bash") hi def link bashAdminStatement shStatement hi def link bashSpecialVariables shShellVariables hi def link bashStatement shStatement hi def link shCharClass shSpecial hi def link shDerefOff shDerefOp hi def link shDerefLen shDerefOff endif if exists("b:is_kornshell") || exists("b:is_posix") hi def link kshSpecialVariables shShellVariables hi def link kshStatement shStatement endif if !exists("g:sh_no_error") hi def link shCaseError Error hi def link shCondError Error hi def link shCurlyError Error hi def link shDerefOpError Error hi def link shDerefWordError Error hi def link shDoError Error hi def link shEsacError Error hi def link shIfError Error hi def link shInError Error hi def link shParenError Error hi def link shTestError Error if exists("b:is_kornshell") || exists("b:is_posix") hi def link shDTestError Error endif endif hi def link shArithmetic Special hi def link shCharClass Identifier hi def link shSnglCase Statement hi def link shCommandSub Special hi def link shComment Comment hi def link shConditional Conditional hi def link shCtrlSeq Special hi def link shExprRegion Delimiter hi def link shFunctionKey Function hi def link shFunctionName Function hi def link shNumber Number hi def link shOperator Operator hi def link shRepeat Repeat hi def link shSet Statement hi def link shSetList Identifier hi def link shShellVariables PreProc hi def link shSpecial Special hi def link shSpecialNoZS shSpecial hi def link shStatement Statement hi def link shString String hi def link shTodo Todo hi def link shAlias Identifier hi def link shHereDoc01 shRedir hi def link shHereDoc02 shRedir hi def link shHereDoc03 shRedir hi def link shHereDoc04 shRedir hi def link shHereDoc05 shRedir hi def link shHereDoc06 shRedir hi def link shHereDoc07 shRedir hi def link shHereDoc08 shRedir hi def link shHereDoc09 shRedir hi def link shHereDoc10 shRedir hi def link shHereDoc11 shRedir hi def link shHereDoc12 shRedir hi def link shHereDoc13 shRedir hi def link shHereDoc14 shRedir hi def link shHereDoc15 shRedir endif " Delete shell folding commands {{{1 " ============================= delc ShFoldFunctions delc ShFoldHereDoc delc ShFoldIfDoFor " Set Current Syntax: {{{1 " =================== if exists("b:is_bash") let b:current_syntax = "bash" elseif exists("b:is_kornshell") let b:current_syntax = "ksh" elseif exists("b:is_posix") let b:current_syntax = "posix" else let b:current_syntax = "sh" endif " vim: ts=16 fdm=marker PK&]k,!""vim80/syntax/haskell.vimnu[" Vim syntax file " Language: Haskell " Maintainer: Haskell Cafe mailinglist " Last Change: 2018 Mar 29 by Marcin Szamotulski " Original Author: John Williams " " Thanks to Ryan Crumley for suggestions and John Meacham for " pointing out bugs. Also thanks to Ian Lynagh and Donald Bruce Stewart " for providing the inspiration for the inclusion of the handling " of C preprocessor directives, and for pointing out a bug in the " end-of-line comment handling. " " Options-assign a value to these variables to turn the option on: " " hs_highlight_delimiters - Highlight delimiter characters--users " with a light-colored background will " probably want to turn this on. " hs_highlight_boolean - Treat True and False as keywords. " hs_highlight_types - Treat names of primitive types as keywords. " hs_highlight_more_types - Treat names of other common types as keywords. " hs_highlight_debug - Highlight names of debugging functions. " hs_allow_hash_operator - Don't highlight seemingly incorrect C " preprocessor directives but assume them to be " operators " " 2004 Feb 19: Added C preprocessor directive handling, corrected eol comments " cleaned away literate haskell support (should be entirely in " lhaskell.vim) " 2004 Feb 20: Cleaned up C preprocessor directive handling, fixed single \ " in eol comment character class " 2004 Feb 23: Made the leading comments somewhat clearer where it comes " to attribution of work. " 2008 Dec 15: Added comments as contained element in import statements " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " (Qualified) identifiers (no default highlighting) syn match ConId "\(\<[A-Z][a-zA-Z0-9_']*\.\)\=\<[A-Z][a-zA-Z0-9_']*\>" contains=@NoSpell syn match VarId "\(\<[A-Z][a-zA-Z0-9_']*\.\)\=\<[a-z][a-zA-Z0-9_']*\>" contains=@NoSpell " Infix operators--most punctuation characters and any (qualified) identifier " enclosed in `backquotes`. An operator starting with : is a constructor, " others are variables (e.g. functions). syn match hsVarSym "\(\<[A-Z][a-zA-Z0-9_']*\.\)\=[-!#$%&\*\+/<=>\?@\\^|~.][-!#$%&\*\+/<=>\?@\\^|~:.]*" syn match hsConSym "\(\<[A-Z][a-zA-Z0-9_']*\.\)\=:[-!#$%&\*\+./<=>\?@\\^|~:]*" syn match hsVarSym "`\(\<[A-Z][a-zA-Z0-9_']*\.\)\=[a-z][a-zA-Z0-9_']*`" syn match hsConSym "`\(\<[A-Z][a-zA-Z0-9_']*\.\)\=[A-Z][a-zA-Z0-9_']*`" " Reserved symbols--cannot be overloaded. syn match hsDelimiter "(\|)\|\[\|\]\|,\|;\|_\|{\|}" " Strings and constants syn match hsSpecialChar contained "\\\([0-9]\+\|o[0-7]\+\|x[0-9a-fA-F]\+\|[\"\\'&\\abfnrtv]\|^[A-Z^_\[\\\]]\)" syn match hsSpecialChar contained "\\\(NUL\|SOH\|STX\|ETX\|EOT\|ENQ\|ACK\|BEL\|BS\|HT\|LF\|VT\|FF\|CR\|SO\|SI\|DLE\|DC1\|DC2\|DC3\|DC4\|NAK\|SYN\|ETB\|CAN\|EM\|SUB\|ESC\|FS\|GS\|RS\|US\|SP\|DEL\)" syn match hsSpecialCharError contained "\\&\|'''\+" syn region hsString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=hsSpecialChar,@NoSpell syn match hsCharacter "[^a-zA-Z0-9_']'\([^\\]\|\\[^']\+\|\\'\)'"lc=1 contains=hsSpecialChar,hsSpecialCharError syn match hsCharacter "^'\([^\\]\|\\[^']\+\|\\'\)'" contains=hsSpecialChar,hsSpecialCharError syn match hsNumber "\v<[0-9]%(_*[0-9])*>|<0[xX]_*[0-9a-fA-F]%(_*[0-9a-fA-F])*>|<0[oO]_*%(_*[0-7])*>|<0[bB]_*[01]%(_*[01])*>" syn match hsFloat "\v<[0-9]%(_*[0-9])*\.[0-9]%(_*[0-9])*%(_*[eE][-+]?[0-9]%(_*[0-9])*)?>|<[0-9]%(_*[0-9])*_*[eE][-+]?[0-9]%(_*[0-9])*>|<0[xX]_*[0-9a-fA-F]%(_*[0-9a-fA-F])*\.[0-9a-fA-F]%(_*[0-9a-fA-F])*%(_*[pP][-+]?[0-9]%(_*[0-9])*)?>|<0[xX]_*[0-9a-fA-F]%(_*[0-9a-fA-F])*_*[pP][-+]?[0-9]%(_*[0-9])*>" " Keyword definitions. These must be patterns instead of keywords " because otherwise they would match as keywords at the start of a " "literate" comment (see lhs.vim). syn match hsModule "\" syn match hsImport "\.*"he=s+6 contains=hsImportMod,hsLineComment,hsBlockComment,@NoSpell syn match hsImportMod contained "\<\(as\|qualified\|hiding\)\>" contains=@NoSpell syn match hsInfix "\<\(infix\|infixl\|infixr\)\>" syn match hsStructure "\<\(class\|data\|deriving\|instance\|default\|where\)\>" syn match hsTypedef "\<\(type\|newtype\)\>" syn match hsStatement "\<\(do\|case\|of\|let\|in\)\>" syn match hsConditional "\<\(if\|then\|else\)\>" " Not real keywords, but close. if exists("hs_highlight_boolean") " Boolean constants from the standard prelude. syn match hsBoolean "\<\(True\|False\)\>" endif if exists("hs_highlight_types") " Primitive types from the standard prelude and libraries. syn match hsType "\<\(Int\|Integer\|Char\|Bool\|Float\|Double\|IO\|Void\|Addr\|Array\|String\)\>" endif if exists("hs_highlight_more_types") " Types from the standard prelude libraries. syn match hsType "\<\(Maybe\|Either\|Ratio\|Complex\|Ordering\|IOError\|IOResult\|ExitCode\)\>" syn match hsMaybe "\" syn match hsExitCode "\<\(ExitSuccess\)\>" syn match hsOrdering "\<\(GT\|LT\|EQ\)\>" endif if exists("hs_highlight_debug") " Debugging functions from the standard prelude. syn match hsDebug "\<\(undefined\|error\|trace\)\>" endif " Comments syn match hsLineComment "---*\([^-!#$%&\*\+./<=>\?@\\^|~].*\)\?$" contains=@Spell syn region hsBlockComment start="{-" end="-}" contains=hsBlockComment,@Spell syn region hsPragma start="{-#" end="#-}" " C Preprocessor directives. Shamelessly ripped from c.vim and trimmed " First, see whether to flag directive-like lines or not if (!exists("hs_allow_hash_operator")) syn match cError display "^\s*\(%:\|#\).*$" endif " Accept %: for # (C99) syn region cPreCondit start="^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" end="//"me=s-1 contains=cComment,cCppString,cCommentError syn match cPreCondit display "^\s*\(%:\|#\)\s*\(else\|endif\)\>" syn region cCppOut start="^\s*\(%:\|#\)\s*if\s\+0\+\>" end=".\@=\|$" contains=cCppOut2 syn region cCppOut2 contained start="0" end="^\s*\(%:\|#\)\s*\(endif\>\|else\>\|elif\>\)" contains=cCppSkip syn region cCppSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cCppSkip syn region cIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match cIncluded display contained "<[^>]*>" syn match cInclude display "^\s*\(%:\|#\)\s*include\>\s*["<]" contains=cIncluded syn cluster cPreProcGroup contains=cPreCondit,cIncluded,cInclude,cDefine,cCppOut,cCppOut2,cCppSkip,cCommentStartError syn region cDefine matchgroup=cPreCondit start="^\s*\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" syn region cPreProc matchgroup=cPreCondit start="^\s*\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=cCommentStartError,cSpaceError contained syntax match cCommentError display "\*/" contained syntax match cCommentStartError display "/\*"me=e-1 contained syn region cCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial contained " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link hsModule hsStructure hi def link hsImport Include hi def link hsImportMod hsImport hi def link hsInfix PreProc hi def link hsStructure Structure hi def link hsStatement Statement hi def link hsConditional Conditional hi def link hsSpecialChar SpecialChar hi def link hsTypedef Typedef hi def link hsVarSym hsOperator hi def link hsConSym hsOperator hi def link hsOperator Operator if exists("hs_highlight_delimiters") " Some people find this highlighting distracting. hi def link hsDelimiter Delimiter endif hi def link hsSpecialCharError Error hi def link hsString String hi def link hsCharacter Character hi def link hsNumber Number hi def link hsFloat Float hi def link hsConditional Conditional hi def link hsLiterateComment hsComment hi def link hsBlockComment hsComment hi def link hsLineComment hsComment hi def link hsComment Comment hi def link hsPragma SpecialComment hi def link hsBoolean Boolean hi def link hsType Type hi def link hsMaybe hsEnumConst hi def link hsOrdering hsEnumConst hi def link hsEnumConst Constant hi def link hsDebug Debug hi def link cCppString hsString hi def link cCommentStart hsComment hi def link cCommentError hsError hi def link cCommentStartError hsError hi def link cInclude Include hi def link cPreProc PreProc hi def link cDefine Macro hi def link cIncluded hsString hi def link cError Error hi def link cPreCondit PreCondit hi def link cComment Comment hi def link cCppSkip cCppOut hi def link cCppOut2 cCppOut hi def link cCppOut Comment let b:current_syntax = "haskell" " Options for vi: ts=8 sw=2 sts=2 nowrap noexpandtab ft=vim PK&]'+=(=(vim80/syntax/plaintex.vimnu[" Vim syntax file " Language: TeX (plain.tex format) " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-10-26 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn match plaintexControlSequence display contains=@NoSpell \ '\\[a-zA-Z@]\+' runtime! syntax/initex.vim unlet b:current_syntax syn match plaintexComment display \ contains=ALLBUT,initexComment,plaintexComment \ '^\s*%[CDM].*$' if exists("g:plaintex_delimiters") syn match plaintexDelimiter display '[][{}]' endif syn match plaintexRepeat display contains=@NoSpell \ '\\\%(loop\|repeat\)\>' syn match plaintexCommand display contains=@NoSpell \ '\\\%(plainoutput\|TeX\)\>' syn match plaintexBoxCommand display contains=@NoSpell \ '\\\%(null\|strut\)\>' syn match plaintexDebuggingCommand display contains=@NoSpell \ '\\\%(showhyphens\|tracingall\|wlog\)\>' syn match plaintexFontsCommand display contains=@NoSpell \ '\\\%(bf\|\%(five\|seven\)\%(bf\|i\|rm\|sy\)\|it\|oldstyle\|rm\|sl\|ten\%(bf\|ex\|it\=\|rm\|sl\|sy\|tt\)\|tt\)\>' syn match plaintexGlueCommand display contains=@NoSpell \ '\\\%(\%(big\|en\|med\|\%(no\|off\)interline\|small\)skip\|\%(center\|left\|right\)\=line\|\%(dot\|\%(left\|right\)arrow\)fill\|[hv]glue\|[lr]lap\|q\=quad\|space\|topglue\)\>' syn match plaintexInsertsCommand display contains=@NoSpell \ '\\\%(\%(end\|top\)insert\|v\=footnote\)\>' syn match plaintexJobCommand display contains=@NoSpell \ '\\\%(bye\|fmt\%(name\|version\)\)\>' syn match plaintexInsertsCommand display contains=@NoSpell \ '\\\%(mid\|page\)insert\>' syn match plaintexKernCommand display contains=@NoSpell \ '\\\%(en\|\%(neg\)\=thin\)space\>' syn match plaintexMacroCommand display contains=@NoSpell \ '\\\%(active\|[be]group\|empty\)\>' syn match plaintexPageCommand display contains=@NoSpell \ '\\\%(\%(super\)\=eject\|nopagenumbers\|\%(normal\|ragged\)bottom\)\>' syn match plaintexParagraphCommand display contains=@NoSpell \ '\\\%(endgraf\|\%(non\)\=frenchspacing\|hang\|item\%(item\)\=\|narrower\|normalbaselines\|obey\%(lines\|spaces\)\|openup\|proclaim\|\%(tt\)\=raggedright\|textindent\)\>' syn match plaintexPenaltiesCommand display contains=@NoSpell \ '\\\%(allow\|big\|fil\|good\|med\|no\|small\)\=break\>' syn match plaintexRegistersCommand display contains=@NoSpell \ '\\\%(advancepageno\|new\%(box\|count\|dimen\|fam\|help\|if\|insert\|language\|muskip\|read\|skip\|toks\|write\)\)\>' syn match plaintexTablesCommand display contains=@NoSpell \ '&\|\\+\|\\\%(cleartabs\|endline\|hidewidth\|ialign\|multispan\|settabs\|tabalign\)\>' if !exists("g:plaintex_no_math") syn region plaintexMath matchgroup=plaintexMath \ contains=@plaintexMath,@NoSpell \ start='\$' skip='\\\\\|\\\$' end='\$' syn region plaintexMath matchgroup=plaintexMath \ contains=@plaintexMath,@NoSpell keepend \ start='\$\$' skip='\\\\\|\\\$' end='\$\$' endif " Keep this after plaintexMath, as we don’t want math mode started at a \$. syn match plaintexCharacterCommand display contains=@NoSpell \ /\\\%(["#$%&'.=^_`~]\|``\|''\|-\{2,3}\|[?!]`\|^^L\|\~\|\%(a[ae]\|A[AE]\|acute\|[cdHoOPStuvijlL]\|copyright\|d\=dag\|folio\|ldotp\|[lr]q\|oe\|OE\|slash\|ss\|underbar\)\>\)/ syn cluster plaintexMath \ contains=plaintexMathCommand,plaintexMathBoxCommand, \ plaintexMathCharacterCommand,plaintexMathDelimiter, \ plaintexMathFontsCommand,plaintexMathLetter,plaintexMathSymbol, \ plaintexMathFunction,plaintexMathOperator,plaintexMathPunctuation, \ plaintexMathRelation syn match plaintexMathCommand display contains=@NoSpell contained \ '\\\%([!*,;>{}|_^]\|\%([aA]rrowvert\|[bB]ig\%(g[lmr]\=\|r\)\=\|\%(border\|p\)\=matrix\|displaylines\|\%(down\|up\)bracefill\|eqalign\%(no\)\|leqalignno\|[lr]moustache\|mathpalette\|root\|s[bp]\|skew\|sqrt\)\>\)' syn match plaintexMathBoxCommand display contains=@NoSpell contained \ '\\\%([hv]\=phantom\|mathstrut\|smash\)\>' syn match plaintexMathCharacterCommand display contains=@NoSpell contained \ '\\\%(b\|bar\|breve\|check\|d\=dots\=\|grave\|hat\|[lv]dots\|tilde\|vec\|wide\%(hat\|tilde\)\)\>' syn match plaintexMathDelimiter display contains=@NoSpell contained \ '\\\%(brace\%(vert\)\=\|brack\|cases\|choose\|[lr]\%(angle\|brace\|brack\|ceil\|floor\|group\)\|over\%(brace\|\%(left\|right\)arrow\)\|underbrace\)\>' syn match plaintexMathFontsCommand display contains=@NoSpell contained \ '\\\%(\%(bf\|it\|sl\|tt\)fam\|cal\|mit\)\>' syn match plaintexMathLetter display contains=@NoSpell contained \ '\\\%(aleph\|alpha\|beta\|chi\|[dD]elta\|ell\|epsilon\|eta\|[gG]amma\|[ij]math\|iota\|kappa\|[lL]ambda\|[mn]u\|[oO]mega\|[pP][hs]\=i\|rho\|[sS]igma\|tau\|[tT]heta\|[uU]psilon\|var\%(epsilon\|ph\=i\|rho\|sigma\|theta\)\|[xX]i\|zeta\)\>' syn match plaintexMathSymbol display contains=@NoSpell contained \ '\\\%(angle\|backslash\|bot\|clubsuit\|emptyset\|epsilon\|exists\|flat\|forall\|hbar\|heartsuit\|Im\|infty\|int\|lnot\|nabla\|natural\|neg\|pmod\|prime\|Re\|sharp\|smallint\|spadesuit\|surd\|top\|triangle\%(left\|right\)\=\|vdash\|wp\)\>' syn match plaintexMathFunction display contains=@NoSpell contained \ '\\\%(arc\%(cos\|sin\|tan\)\|arg\|\%(cos\|sin\|tan\)h\=\|coth\=\|csc\|de[gt]\|dim\|exp\|gcd\|hom\|inf\|ker\|lo\=g\|lim\%(inf\|sup\)\=\|ln\|max\|min\|Pr\|sec\|sup\)\>' syn match plaintexMathOperator display contains=@NoSpell contained \ '\\\%(amalg\|ast\|big\%(c[au]p\|circ\|o\%(dot\|plus\|times\|sqcup\)\|triangle\%(down\|up\)\|uplus\|vee\|wedge\|bmod\|bullet\)\|c[au]p\|cdot[ps]\=\|circ\|coprod\|d\=dagger\|diamond\%(suit\)\=\|div\|land\|lor\|mp\|o\%(dot\|int\|minus\|plus\|slash\|times\)pm\|prod\|setminus\|sqc[au]p\|sqsu[bp]seteq\|star\|su[bp]set\%(eq\)\=\|sum\|times\|uplus\|vee\|wedge\|wr\)\>' syn match plaintexMathPunctuation display contains=@NoSpell contained \ '\\\%(colon\)\>' syn match plaintexMathRelation display contains=@NoSpell contained \ '\\\%(approx\|asymp\|bowtie\|buildrel\|cong\|dashv\|doteq\|[dD]ownarrow\|equiv\|frown\|geq\=\|gets\|gg\|hook\%(left\|right\)arrow\|iff\|in\|leq\=\|[lL]eftarrow\|\%(left\|right\)harpoon\%(down\|up\)\|[lL]eftrightarrow\|ll\|[lL]ongleftrightarrow\|longmapsto\|[lL]ongrightarrow\|mapsto\|mid\|models\|[ns][ew]arrow\|neq\=\|ni\|not\%(in\)\=\|owns\|parallel\|perp\|prec\%(eq\)\=\|propto\|[rR]ightarrow\|rightleftharpoons\|sim\%(eq\)\=\|smile\|succ\%(eq\)\=\|to\|[uU]parrow\|[uU]pdownarrow\|[vV]ert\)\>' syn match plaintexParameterDimen display contains=@NoSpell \ '\\maxdimen\>' syn match plaintexMathParameterDimen display contains=@NoSpell \ '\\jot\>' syn match plaintexParagraphParameterGlue display contains=@NoSpell \ '\\\%(\%(big\|med\|small\)skipamount\|normalbaselineskip\|normallineskip\%(limit\)\=\)\>' syn match plaintexFontParameterInteger display contains=@NoSpell \ '\\magstep\%(half\)\=\>' syn match plaintexJobParameterInteger display contains=@NoSpell \ '\\magnification\>' syn match plaintexPageParameterInteger display contains=@NoSpell \ '\\pageno\>' syn match plaintexPageParameterToken display contains=@NoSpell \ '\\\%(foot\|head\)line\>' hi def link plaintexOperator Operator hi def link plaintexDelimiter Delimiter hi def link plaintexControlSequence Identifier hi def link plaintexComment Comment hi def link plaintexInclude Include hi def link plaintexRepeat Repeat hi def link plaintexCommand initexCommand hi def link plaintexBoxCommand plaintexCommand hi def link plaintexCharacterCommand initexCharacterCommand hi def link plaintexDebuggingCommand initexDebuggingCommand hi def link plaintexFontsCommand initexFontsCommand hi def link plaintexGlueCommand plaintexCommand hi def link plaintexInsertsCommand plaintexCommand hi def link plaintexJobCommand initexJobCommand hi def link plaintexKernCommand plaintexCommand hi def link plaintexMacroCommand initexMacroCommand hi def link plaintexPageCommand plaintexCommand hi def link plaintexParagraphCommand plaintexCommand hi def link plaintexPenaltiesCommand plaintexCommand hi def link plaintexRegistersCommand plaintexCommand hi def link plaintexTablesCommand plaintexCommand hi def link plaintexMath String hi def link plaintexMathCommand plaintexCommand hi def link plaintexMathBoxCommand plaintexBoxCommand hi def link plaintexMathCharacterCommand plaintexCharacterCommand hi def link plaintexMathDelimiter plaintexDelimiter hi def link plaintexMathFontsCommand plaintexFontsCommand hi def link plaintexMathLetter plaintexMathCharacterCommand hi def link plaintexMathSymbol plaintexMathLetter hi def link plaintexMathFunction Function hi def link plaintexMathOperator plaintexOperator hi def link plaintexMathPunctuation plaintexCharacterCommand hi def link plaintexMathRelation plaintexOperator hi def link plaintexParameterDimen initexParameterDimen hi def link plaintexMathParameterDimen initexMathParameterDimen hi def link plaintexParagraphParameterGlue initexParagraphParameterGlue hi def link plaintexFontParameterInteger initexFontParameterInteger hi def link plaintexJobParameterInteger initexJobParameterInteger hi def link plaintexPageParameterInteger initexPageParameterInteger hi def link plaintexPageParameterToken initexParameterToken let b:current_syntax = "plaintex" let &cpo = s:cpo_save unlet s:cpo_save PK&]ۡ>>vim80/syntax/fstab.vimnu[" Vim syntax file " Language: fstab file " Maintainer: Radu Dineiu " URL: https://raw.github.com/rid9/vim-fstab/master/fstab.vim " Last Change: 2017 Nov 09 " Version: 1.2 " " Credits: " David Necas (Yeti) " Stefano Zacchiroli " Georgi Georgiev " James Vega " Elias Probst " Options: " let fstab_unknown_fs_errors = 1 " highlight unknown filesystems as errors " " let fstab_unknown_device_errors = 0 " do not highlight unknown devices as errors " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " General syn cluster fsGeneralCluster contains=fsComment syn match fsComment /\s*#.*/ contains=@Spell syn match fsOperator /[,=:#]/ " Device syn cluster fsDeviceCluster contains=fsOperator,fsDeviceKeyword,fsDeviceError syn match fsDeviceError /\%([^a-zA-Z0-9_\/#@:\.-]\|^\w\{-}\ze\W\)/ contained syn keyword fsDeviceKeyword contained none proc linproc tmpfs devpts devtmpfs sysfs usbfs syn keyword fsDeviceKeyword contained LABEL nextgroup=fsDeviceLabel syn keyword fsDeviceKeyword contained UUID nextgroup=fsDeviceUUID syn keyword fsDeviceKeyword contained PARTLABEL nextgroup=fsDevicePARTLABEL syn keyword fsDeviceKeyword contained PARTUUID nextgroup=fsDevicePARTUUID syn keyword fsDeviceKeyword contained sshfs nextgroup=fsDeviceSshfs syn match fsDeviceKeyword contained /^[a-zA-Z0-9.\-]\+\ze:/ syn match fsDeviceLabel contained /=[^ \t]\+/hs=s+1 contains=fsOperator syn match fsDeviceUUID contained /=[^ \t]\+/hs=s+1 contains=fsOperator syn match fsDevicePARTLABEL contained /=[^ \t]\+/hs=s+1 contains=fsOperator syn match fsDevicePARTUUID contained /=[^ \t]\+/hs=s+1 contains=fsOperator syn match fsDeviceSshfs contained /#[_=[:alnum:]\.\/+-]\+@[a-z0-9._-]\+\a\{2}:[^ \t]\+/hs=s+1 contains=fsOperator " Mount Point syn cluster fsMountPointCluster contains=fsMountPointKeyword,fsMountPointError syn match fsMountPointError /\%([^ \ta-zA-Z0-9_\/#@\.-]\|\s\+\zs\w\{-}\ze\s\)/ contained syn keyword fsMountPointKeyword contained none swap " Type syn cluster fsTypeCluster contains=fsTypeKeyword,fsTypeUnknown syn match fsTypeUnknown /\s\+\zs\w\+/ contained syn keyword fsTypeKeyword contained adfs ados affs anon_inodefs atfs audiofs auto autofs bdev befs bfs btrfs binfmt_misc cd9660 cfs cgroup cifs coda configfs cpuset cramfs devfs devpts devtmpfs e2compr efs ext2 ext2fs ext3 ext4 fdesc ffs filecore fuse fuseblk fusectl hfs hpfs hugetlbfs iso9660 jffs jffs2 jfs kernfs lfs linprocfs mfs minix mqueue msdos ncpfs nfs nfsd nilfs2 none ntfs null nwfs overlay ovlfs pipefs portal proc procfs pstore ptyfs qnx4 reiserfs ramfs romfs rpc_pipefs securityfs shm smbfs squashfs sockfs sshfs std subfs swap sysfs sysv tcfs tmpfs udf ufs umap umsdos union usbfs userfs vfat vs3fs vxfs wrapfs wvfs xenfs xfs zisofs " Options " ------- " Options: General syn cluster fsOptionsCluster contains=fsOperator,fsOptionsGeneral,fsOptionsKeywords,fsTypeUnknown syn match fsOptionsNumber /\d\+/ syn match fsOptionsNumberOctal /[0-8]\+/ syn match fsOptionsString /[a-zA-Z0-9_-]\+/ syn keyword fsOptionsYesNo yes no syn cluster fsOptionsCheckCluster contains=fsOptionsExt2Check,fsOptionsFatCheck syn keyword fsOptionsSize 512 1024 2048 syn keyword fsOptionsGeneral async atime auto bind current defaults dev devgid devmode devmtime devuid dirsync exec force fstab kudzu loop managed mand move noatime noauto noclusterr noclusterw nodev nodevmtime nodiratime noexec nomand norelatime nosuid nosymfollow nouser owner pamconsole rbind rdonly relatime remount ro rq rw suid suiddir supermount sw sync union update user users wxallowed xx syn match fsOptionsGeneral /_netdev/ " Options: adfs syn match fsOptionsKeywords contained /\<\%([ug]id\|o\%(wn\|th\)mask\)=/ nextgroup=fsOptionsNumber " Options: affs syn match fsOptionsKeywords contained /\<\%(set[ug]id\|mode\|reserved\)=/ nextgroup=fsOptionsNumber syn match fsOptionsKeywords contained /\<\%(prefix\|volume\|root\)=/ nextgroup=fsOptionsString syn match fsOptionsKeywords contained /\/ syn keyword fsOptionsKeywords contained acl bsddf minixdf debug grpid bsdgroups minixdf nocheck nogrpid oldalloc orlov sysvgroups nouid32 nobh user_xattr nouser_xattr " Options: ext3 syn match fsOptionsKeywords contained /\/ syn keyword fsOptionsUfsError contained panic lock umount repair " Options: usbfs syn match fsOptionsKeywords contained /\<\%(dev\|bus\|list\)\%(id\|gid\)=/ nextgroup=fsOptionsNumber syn match fsOptionsKeywords contained /\<\%(dev\|bus\|list\)mode=/ nextgroup=fsOptionsNumberOctal " Options: vfat syn keyword fsOptionsKeywords contained nonumtail posix utf8 syn match fsOptionsKeywords contained /shortname=/ nextgroup=fsOptionsVfatShortname syn keyword fsOptionsVfatShortname contained lower win95 winnt mixed " Options: xfs syn match fsOptionsKeywords contained /\%(biosize\|logbufs\|logbsize\|logdev\|rtdev\|sunit\|swidth\)=/ nextgroup=fsOptionsString syn keyword fsOptionsKeywords contained dmapi xdsm noalign noatime noquota norecovery osyncisdsync quota usrquota uqnoenforce grpquota gqnoenforce " Frequency / Pass No. syn cluster fsFreqPassCluster contains=fsFreqPassNumber,fsFreqPassError syn match fsFreqPassError /\s\+\zs\%(\D.*\|\S.*\|\d\+\s\+[^012]\)\ze/ contained syn match fsFreqPassNumber /\d\+\s\+[012]\s*/ contained " Groups syn match fsDevice /^\s*\zs.\{-1,}\s/me=e-1 nextgroup=fsMountPoint contains=@fsDeviceCluster,@fsGeneralCluster syn match fsMountPoint /\s\+.\{-}\s/me=e-1 nextgroup=fsType contains=@fsMountPointCluster,@fsGeneralCluster contained syn match fsType /\s\+.\{-}\s/me=e-1 nextgroup=fsOptions contains=@fsTypeCluster,@fsGeneralCluster contained syn match fsOptions /\s\+.\{-}\s/me=e-1 nextgroup=fsFreqPass contains=@fsOptionsCluster,@fsGeneralCluster contained syn match fsFreqPass /\s\+.\{-}$/ contains=@fsFreqPassCluster,@fsGeneralCluster contained " Whole line comments syn match fsCommentLine /^#.*$/ contains=@Spell hi def link fsOperator Operator hi def link fsComment Comment hi def link fsCommentLine Comment hi def link fsTypeKeyword Type hi def link fsDeviceKeyword Identifier hi def link fsDeviceLabel String hi def link fsDeviceUUID String hi def link fsDevicePARTLABEL String hi def link fsDevicePARTUUID String hi def link fsDeviceSshfs String hi def link fsFreqPassNumber Number if exists('fstab_unknown_fs_errors') && fstab_unknown_fs_errors == 1 hi def link fsTypeUnknown Error endif if !exists('fstab_unknown_device_errors') || fstab_unknown_device_errors == 1 hi def link fsDeviceError Error endif hi def link fsMountPointError Error hi def link fsMountPointKeyword Keyword hi def link fsFreqPassError Error hi def link fsOptionsGeneral Type hi def link fsOptionsKeywords Keyword hi def link fsOptionsNumber Number hi def link fsOptionsNumberOctal Number hi def link fsOptionsString String hi def link fsOptionsSize Number hi def link fsOptionsExt2Check String hi def link fsOptionsExt2Errors String hi def link fsOptionsExt3Journal String hi def link fsOptionsExt3Data String hi def link fsOptionsExt4Journal String hi def link fsOptionsExt4Data String hi def link fsOptionsExt4Barrier Number hi def link fsOptionsFatCheck String hi def link fsOptionsConv String hi def link fsOptionsFatType Number hi def link fsOptionsYesNo String hi def link fsOptionsHpfsCase String hi def link fsOptionsIsoMap String hi def link fsOptionsReiserHash String hi def link fsOptionsSshYesNoAsk String hi def link fsOptionsUfsType String hi def link fsOptionsUfsError String hi def link fsOptionsVfatShortname String let b:current_syntax = "fstab" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 ft=vim PK&]Ovim80/syntax/dcl.vimnu[" Vim syntax file " Language: DCL (Digital Command Language - vms) " Maintainer: Charles E. Campbell " Last Change: Aug 31, 2016 " Version: 11 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_DCL " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !has("patch-7.4.1142") setlocal iskeyword=$,@,48-57,_ else syn iskeyword $,@,48-57,_ endif syn case ignore syn keyword dclInstr accounting del[ete] gen[cat] mou[nt] run syn keyword dclInstr all[ocate] dep[osit] gen[eral] ncp run[off] syn keyword dclInstr ana[lyze] dia[gnose] gos[ub] ncs sca syn keyword dclInstr app[end] dif[ferences] got[o] on sea[rch] syn keyword dclInstr ass[ign] dir[ectory] hel[p] ope[n] set syn keyword dclInstr att[ach] dis[able] ico[nv] pas[cal] sho[w] syn keyword dclInstr aut[horize] dis[connect] if pas[sword] sor[t] syn keyword dclInstr aut[ogen] dis[mount] ini[tialize] pat[ch] spa[wn] syn keyword dclInstr bac[kup] dpm[l] inq[uire] pca sta[rt] syn keyword dclInstr cal[l] dqs ins[tall] pho[ne] sto[p] syn keyword dclInstr can[cel] dsr job pri[nt] sub[mit] syn keyword dclInstr cc dst[graph] lat[cp] pro[duct] sub[routine] syn keyword dclInstr clo[se] dtm lib[rary] psw[rap] swx[cr] syn keyword dclInstr cms dum[p] lic[ense] pur[ge] syn[chronize] syn keyword dclInstr con[nect] edi[t] lin[k] qde[lete] sys[gen] syn keyword dclInstr con[tinue] ena[ble] lmc[p] qse[t] sys[man] syn keyword dclInstr con[vert] end[subroutine] loc[ale] qsh[ow] tff syn keyword dclInstr cop[y] eod log[in] rea[d] then syn keyword dclInstr cre[ate] eoj log[out] rec[all] typ[e] syn keyword dclInstr cxx exa[mine] lse[dit] rec[over] uil syn keyword dclInstr cxx[l_help] exc[hange] mac[ro] ren[ame] unl[ock] syn keyword dclInstr dea[llocate] exi[t] mai[l] rep[ly] ves[t] syn keyword dclInstr dea[ssign] fdl mer[ge] req[uest] vie[w] syn keyword dclInstr deb[ug] flo[wgraph] mes[sage] ret[urn] wai[t] syn keyword dclInstr dec[k] fon[t] mms rms wri[te] syn keyword dclInstr def[ine] for[tran] syn keyword dclLexical f$context f$edit f$getjpi f$message f$setprv syn keyword dclLexical f$csid f$element f$getqui f$mode f$string syn keyword dclLexical f$cvsi f$environment f$getsyi f$parse f$time syn keyword dclLexical f$cvtime f$extract f$identifier f$pid f$trnlnm syn keyword dclLexical f$cvui f$fao f$integer f$privilege f$type syn keyword dclLexical f$device f$file_attributes f$length f$process f$user syn keyword dclLexical f$directory f$getdvi f$locate f$search f$verify syn match dclMdfy "/\I\i*" nextgroup=dclMdfySet,dclMdfySetString syn match dclMdfySet "=[^ \t"]*" contained syn region dclMdfySet matchgroup=dclMdfyBrkt start="=\[" matchgroup=dclMdfyBrkt end="]" contains=dclMdfySep syn region dclMdfySetString start='="' skip='""' end='"' contained syn match dclMdfySep "[:,]" contained " Numbers syn match dclNumber "\d\+" " Varname (mainly to prevent dclNumbers from being recognized when part of a dclVarname) syn match dclVarname "\I\i*" " Filenames (devices, paths) syn match dclDevice "\I\i*\(\$\I\i*\)\=:[^=]"me=e-1 nextgroup=dclDirPath,dclFilename syn match dclDirPath "\[\(\I\i*\.\)*\I\i*\]" contains=dclDirSep nextgroup=dclFilename syn match dclFilename "\I\i*\$\(\I\i*\)\=\.\(\I\i*\)*\(;\d\+\)\=" contains=dclDirSep syn match dclFilename "\I\i*\.\(\I\i*\)\=\(;\d\+\)\=" contains=dclDirSep contained syn match dclDirSep "[[\].;]" " Strings syn region dclString start='"' skip='""' end='"' contains=@Spell " $ stuff and comments syn cluster dclCommentGroup contains=dclStart,dclTodo,@Spell syn match dclStart "^\$" skipwhite nextgroup=dclExe syn match dclContinue "-$" syn match dclComment "^\$!.*$" contains=@dclCommentGroup syn match dclExe "\I\i*" contained syn keyword dclTodo contained COMBAK DEBUG FIXME TODO XXX " Assignments and Operators syn match dclAssign ":==\=" syn match dclAssign "=" syn match dclOper "--\|+\|\*\|/" syn match dclLogOper "\.[a-zA-Z][a-zA-Z][a-zA-Z]\=\." contains=dclLogical,dclLogSep syn keyword dclLogical contained and ge gts lt nes syn keyword dclLogical contained eq ges le lts not syn keyword dclLogical contained eqs gt les ne or syn match dclLogSep "\." contained " @command procedures syn match dclCmdProcStart "@" nextgroup=dclCmdProc syn match dclCmdProc "\I\i*\(\.\I\i*\)\=" contained syn match dclCmdProc "\I\i*:" contained nextgroup=dclCmdDirPath,dclCmdProc syn match dclCmdDirPath "\[\(\I\i*\.\)*\I\i*\]" contained nextgroup=delCmdProc " labels syn match dclGotoLabel "^\$\s*\I\i*:\s*$" contains=dclStart " parameters syn match dclParam "'\I[a-zA-Z0-9_$]*'\=" " () matching (the clusters are commented out until a vim/vms comes out for v5.2+) "syn cluster dclNextGroups contains=dclCmdDirPath,dclCmdProc,dclCmdProc,dclDirPath,dclFilename,dclFilename,dclMdfySet,dclMdfySetString,delCmdProc,dclExe,dclTodo "syn region dclFuncList matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,@dclNextGroups syn region dclFuncList matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,dclCmdDirPath,dclCmdProc,dclCmdProc,dclDirPath,dclFilename,dclFilename,dclMdfySet,dclMdfySetString,delCmdProc,dclExe,dclTodo syn match dclError ")" " Define the default highlighting. if !exists("skip_dcl_syntax_inits") hi def link dclLogOper dclError hi def link dclLogical dclOper hi def link dclLogSep dclSep hi def link dclAssign Operator hi def link dclCmdProc Special hi def link dclCmdProcStart Operator hi def link dclComment Comment hi def link dclContinue Statement hi def link dclDevice Identifier hi def link dclDirPath Identifier hi def link dclDirPath Identifier hi def link dclDirSep Delimiter hi def link dclError Error hi def link dclExe Statement hi def link dclFilename NONE hi def link dclGotoLabel Label hi def link dclInstr Statement hi def link dclLexical Function hi def link dclMdfy Type hi def link dclMdfyBrkt Delimiter hi def link dclMdfySep Delimiter hi def link dclMdfySet Type hi def link dclMdfySetString String hi def link dclNumber Number hi def link dclOper Operator hi def link dclParam Special hi def link dclSep Delimiter hi def link dclStart Delimiter hi def link dclString String hi def link dclTodo Todo endif let b:current_syntax = "dcl" " vim: ts=16 PK&]^V V vim80/syntax/ld.vimnu[" Vim syntax file " Language: ld(1) script " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword ldTodo contained TODO FIXME XXX NOTE syn region ldComment start='/\*' end='\*/' contains=ldTodo,@Spell syn region ldFileName start=+"+ end=+"+ syn keyword ldPreProc SECTIONS MEMORY OVERLAY PHDRS VERSION INCLUDE syn match ldPreProc '\' syn match ldNumber display '\<0[xX]\x\+\>' syn match ldNumber display '\d\+[KM]\>' contains=ldNumberMult syn match ldNumberMult display '[KM]\>' syn match ldOctal contained display '\<0\o\+\>' \ contains=ldOctalZero syn match ldOctalZero contained display '\<0' syn match ldOctalError contained display '\<0\o*[89]\d*\>' hi def link ldTodo Todo hi def link ldComment Comment hi def link ldFileName String hi def link ldPreProc PreProc hi def link ldFunction Identifier hi def link ldKeyword Keyword hi def link ldType Type hi def link ldDataType ldType hi def link ldOutputType ldType hi def link ldPTType ldType hi def link ldSpecial Special hi def link ldIdentifier Identifier hi def link ldSections Constant hi def link ldSpecSections Special hi def link ldNumber Number hi def link ldNumberMult PreProc hi def link ldOctal ldNumber hi def link ldOctalZero PreProc hi def link ldOctalError Error let b:current_syntax = "ld" let &cpo = s:cpo_save unlet s:cpo_save PK&]!Httvim80/syntax/bib.vimnu[" Vim syntax file " Language: BibTeX (bibliographic database format for (La)TeX) " Maintainer: Bernd Feige " Filenames: *.bib " Last Change: 2017 Sep 29 " Thanks to those who pointed out problems with this file or supplied fixes! " Initialization " ============== " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " Ignore case syn case ignore " Keywords " ======== syn keyword bibType contained article book booklet conference inbook syn keyword bibType contained incollection inproceedings manual syn keyword bibType contained mastersthesis misc phdthesis syn keyword bibType contained proceedings techreport unpublished syn keyword bibType contained string preamble syn keyword bibEntryKw contained address annote author booktitle chapter syn keyword bibEntryKw contained crossref edition editor howpublished syn keyword bibEntryKw contained institution journal key month note syn keyword bibEntryKw contained number organization pages publisher syn keyword bibEntryKw contained school series title type volume year " biblatex keywords, cf. http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf syn keyword bibType contained mvbook bookinbook suppbook collection mvcollection suppcollection syn keyword bibType contained online patent periodical suppperiodical mvproceedings reference syn keyword bibType contained mvreference inreference report set thesis xdata customa customb syn keyword bibType contained customc customd custome customf electronic www artwork audio bibnote syn keyword bibType contained commentary image jurisdiction legislation legal letter movie music syn keyword bibType contained performance review software standard video syn keyword bibEntryKw contained abstract isbn issn keywords url syn keyword bibEntryKw contained addendum afterwordannotation annotation annotator authortype syn keyword bibEntryKw contained bookauthor bookpagination booksubtitle booktitleaddon syn keyword bibEntryKw contained commentator date doi editora editorb editorc editortype syn keyword bibEntryKw contained editoratype editorbtype editorctype eid entrysubtype syn keyword bibEntryKw contained eprint eprintclass eprinttype eventdate eventtitle syn keyword bibEntryKw contained eventtitleaddon file foreword holder indextitle syn keyword bibEntryKw contained introduction isan ismn isrn issue issuesubtitle syn keyword bibEntryKw contained issuetitle iswc journalsubtitle journaltitle label syn keyword bibEntryKw contained language library location mainsubtitle maintitle syn keyword bibEntryKw contained maintitleaddon nameaddon origdate origlanguage syn keyword bibEntryKw contained origlocation origpublisher origtitle pagetotal syn keyword bibEntryKw contained pagination part pubstate reprinttitle shortauthor syn keyword bibEntryKw contained shorteditor shorthand shorthandintro shortjournal syn keyword bibEntryKw contained shortseries shorttitle subtitle titleaddon translator syn keyword bibEntryKw contained urldate venue version volumes entryset execute gender syn keyword bibEntryKw contained langid langidopts ids indexsorttitle options presort syn keyword bibEntryKw contained related relatedoptions relatedtype relatedstring syn keyword bibEntryKw contained sortkey sortname sortshorthand sorttitle sortyear xdata syn keyword bibEntryKw contained xref namea nameb namec nameatype namebtype namectype syn keyword bibEntryKw contained lista listb listc listd liste listf usera userb userc syn keyword bibEntryKw contained userd usere userf verba verbb verbc archiveprefix pdf syn keyword bibEntryKw contained primaryclass " Non-standard: " AMS mref http://www.ams.org/mref syn keyword bibNSEntryKw contained mrclass mrnumber mrreviewer fjournal coden " Clusters " ======== syn cluster bibVarContents contains=bibUnescapedSpecial,bibBrace,bibParen,bibMath " This cluster is empty but things can be added externally: "syn cluster bibCommentContents " Matches " ======= syn match bibUnescapedSpecial contained /[^\\][%&]/hs=s+1 syn match bibKey contained /\s*[^ \t}="]\+,/hs=s,he=e-1 nextgroup=bibField syn match bibVariable contained /[^{}," \t=]/ syn region bibComment start=/./ end=/^\s*@/me=e-1 contains=@bibCommentContents nextgroup=bibEntry syn region bibMath contained start=/\(\\\)\@ " URL: http://www.makalis.fr/~bertrand/rpl2/download/vim/indent/rpl.vim " Credits: Nothing " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " Keyword characters (not used) " set iskeyword=33-127 " Case sensitive syntax case match " Constants syntax match rplConstant "\(^\|\s\+\)\(e\|i\)\ze\($\|\s\+\)" " Any binary number syntax match rplBinaryError "\(^\|\s\+\)#\s*\S\+b\ze" syntax match rplBinary "\(^\|\s\+\)#\s*[01]\+b\ze\($\|\s\+\)" syntax match rplOctalError "\(^\|\s\+\)#\s*\S\+o\ze" syntax match rplOctal "\(^\|\s\+\)#\s*\o\+o\ze\($\|\s\+\)" syntax match rplDecimalError "\(^\|\s\+\)#\s*\S\+d\ze" syntax match rplDecimal "\(^\|\s\+\)#\s*\d\+d\ze\($\|\s\+\)" syntax match rplHexadecimalError "\(^\|\s\+\)#\s*\S\+h\ze" syntax match rplHexadecimal "\(^\|\s\+\)#\s*\x\+h\ze\($\|\s\+\)" " Case unsensitive syntax case ignore syntax match rplControl "\(^\|\s\+\)abort\ze\($\|\s\+\)" syntax match rplControl "\(^\|\s\+\)kill\ze\($\|\s\+\)" syntax match rplControl "\(^\|\s\+\)cont\ze\($\|\s\+\)" syntax match rplControl "\(^\|\s\+\)halt\ze\($\|\s\+\)" syntax match rplControl "\(^\|\s\+\)cmlf\ze\($\|\s\+\)" syntax match rplControl "\(^\|\s\+\)sst\ze\($\|\s\+\)" syntax match rplConstant "\(^\|\s\+\)pi\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)return\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)last\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)syzeval\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)wait\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)type\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)kind\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)eval\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)use\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)remove\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)external\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)dup\([2n]\|\)\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)drop\([2n]\|\)\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)depth\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)roll\(d\|\)\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)pick\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)rot\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)swap\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)over\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)clear\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)warranty\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)copyright\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)convert\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)date\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)time\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)mem\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)clmf\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)->num\ze\($\|\s\+\)" syntax match rplStatement "\(^\|\s\+\)help\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)get\(i\|r\|c\|\)\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)put\(i\|r\|c\|\)\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)rcl\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)purge\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)sinv\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)sneg\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)sconj\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)steq\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)rceq\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)vars\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)clusr\ze\($\|\s\+\)" syntax match rplStorage "\(^\|\s\+\)sto\([+-/\*]\|\)\ze\($\|\s\+\)" syntax match rplAlgConditional "\(^\|\s\+\)ift\(e\|\)\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)and\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)\(x\|\)or\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)not\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)same\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)==\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)<=\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)=<\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)=>\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)>=\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)<>\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)>\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)<\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)[+-]\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)[/\*]\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)\^\ze\($\|\s\+\)" syntax match rplOperator "\(^\|\s\+\)\*\*\ze\($\|\s\+\)" syntax match rplBoolean "\(^\|\s\+\)true\ze\($\|\s\+\)" syntax match rplBoolean "\(^\|\s\+\)false\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)store\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)recall\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\(\|wf\|un\)lock\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)open\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)close\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)delete\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)create\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)format\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)rewind\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)backspace\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\(\|re\)write\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)read\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)inquire\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)sync\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)append\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)suppress\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)seek\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)pr\(1\|int\|st\|stc\|lcd\|var\|usr\|md\)\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)paper\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)cr\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)erase\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)disp\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)input\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)prompt\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)key\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)cllcd\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\(\|re\)draw\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)drax\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)indep\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)depnd\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)res\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)axes\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)label\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)pmin\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)pmax\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)centr\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)persist\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)title\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\(slice\|auto\|log\|\)scale\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)eyept\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\(p\|s\)par\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)function\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)polar\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)scatter\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)plotter\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)wireframe\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)parametric\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)slice\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\*w\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\*h\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\*d\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)\*s\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)->lcd\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)lcd->\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)edit\ze\($\|\s\+\)" syntax match rplReadWrite "\(^\|\s\+\)visit\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)abs\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)arg\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)conj\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)re\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)im\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)mant\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)xpon\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)ceil\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)fact\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)fp\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)floor\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)inv\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)ip\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)max\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)min\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)mod\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)neg\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)relax\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)sign\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)sq\(\|rt\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)xroot\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)cos\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)sin\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)tan\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)tg\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)a\(\|rc\)cos\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)a\(\|rc\)sin\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)atan\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)arctg\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)cosh\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)sinh\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)tanh\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|arg\)th\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)arg[cst]h\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)log\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)ln\(\|1\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)exp\(\|m\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)trn\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)con\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)idn\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)rdm\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)rsd\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)cnrm\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)cross\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)d[eo]t\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)[cr]swp\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)rci\(j\|\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(in\|de\)cr\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)bessel\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|g\)egvl\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|g\)\(\|l\|r\)egv\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)rnrm\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(std\|fix\|sci\|eng\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(rad\|deg\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|n\)rand\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)rdz\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|i\)fft\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(dec\|bin\|oct\|hex\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)rclf\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)stof\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)[cs]f\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)chr\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)num\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)pos\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)sub\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)size\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(st\|rc\)ws\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(r\|s\)\(r\|l\)\(\|b\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)as\(r\|l\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(int\|der\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)stos\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|r\)cls\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)drws\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)scls\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)ns\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)tot\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)mean\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)sdev\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)var\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)maxs\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)mins\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)cov\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)cols\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)s\(x\(\|y\|2\)\|y\(\|2\)\)\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(x\|y\)col\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)corr\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)utp[cfnt]\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)comb\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)perm\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)lu\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)[lu]chol\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)schur\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)%\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)%ch\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)%t\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)hms->\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)->hms\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)hms+\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)hms-\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)d->r\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)r->d\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)b->r\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)r->b\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)c->r\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)r->c\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)r->p\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)p->r\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)str->\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)->str\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)array->\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)->array\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)list->\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)->list\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)s+\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)s-\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)col-\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)col+\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)row-\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)row+\ze\($\|\s\+\)" syntax match rplIntrinsic "\(^\|\s\+\)->q\ze\($\|\s\+\)" syntax match rplObsolete "\(^\|\s\+\)arry->\ze\($\|\s\+\)"hs=e-5 syntax match rplObsolete "\(^\|\s\+\)->arry\ze\($\|\s\+\)"hs=e-5 " Conditional structures syntax match rplConditionalError "\(^\|\s\+\)case\ze\($\|\s\+\)"hs=e-3 syntax match rplConditionalError "\(^\|\s\+\)then\ze\($\|\s\+\)"hs=e-3 syntax match rplConditionalError "\(^\|\s\+\)else\ze\($\|\s\+\)"hs=e-3 syntax match rplConditionalError "\(^\|\s\+\)elseif\ze\($\|\s\+\)"hs=e-5 syntax match rplConditionalError "\(^\|\s\+\)end\ze\($\|\s\+\)"hs=e-2 syntax match rplConditionalError "\(^\|\s\+\)\(step\|next\)\ze\($\|\s\+\)"hs=e-3 syntax match rplConditionalError "\(^\|\s\+\)until\ze\($\|\s\+\)"hs=e-4 syntax match rplConditionalError "\(^\|\s\+\)repeat\ze\($\|\s\+\)"hs=e-5 syntax match rplConditionalError "\(^\|\s\+\)default\ze\($\|\s\+\)"hs=e-6 " FOR/(CYCLE)/(EXIT)/NEXT " FOR/(CYCLE)/(EXIT)/STEP " START/(CYCLE)/(EXIT)/NEXT " START/(CYCLE)/(EXIT)/STEP syntax match rplCycle "\(^\|\s\+\)\(cycle\|exit\)\ze\($\|\s\+\)" syntax region rplForNext matchgroup=rplRepeat start="\(^\|\s\+\)\(for\|start\)\ze\($\|\s\+\)" end="\(^\|\s\+\)\(next\|step\)\ze\($\|\s\+\)" contains=ALL keepend extend " ELSEIF/END syntax region rplElseifEnd matchgroup=rplConditional start="\(^\|\s\+\)elseif\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd keepend " ELSE/END syntax region rplElseEnd matchgroup=rplConditional start="\(^\|\s\+\)else\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd,rplThenEnd,rplElseifEnd keepend " THEN/END syntax region rplThenEnd matchgroup=rplConditional start="\(^\|\s\+\)then\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained containedin=rplIfEnd contains=ALLBUT,rplThenEnd keepend " IF/END syntax region rplIfEnd matchgroup=rplConditional start="\(^\|\s\+\)if\(err\|\)\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplElseEnd,rplElseifEnd keepend extend " if end is accepted ! " select end too ! " CASE/THEN syntax region rplCaseThen matchgroup=rplConditional start="\(^\|\s\+\)case\ze\($\|\s\+\)" end="\(^\|\s\+\)then\ze\($\|\s\+\)" contains=ALLBUT,rplCaseThen,rplCaseEnd,rplThenEnd keepend extend contained containedin=rplCaseEnd " CASE/END syntax region rplCaseEnd matchgroup=rplConditional start="\(^\|\s\+\)case\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplCaseEnd,rplThenEnd,rplElseEnd keepend extend contained containedin=rplSelectEnd " DEFAULT/END syntax region rplDefaultEnd matchgroup=rplConditional start="\(^\|\s\+\)default\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplDefaultEnd keepend contained containedin=rplSelectEnd " SELECT/END syntax region rplSelectEnd matchgroup=rplConditional start="\(^\|\s\+\)select\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplThenEnd keepend extend " select end is accepted ! " DO/UNTIL/END syntax region rplUntilEnd matchgroup=rplConditional start="\(^\|\s\+\)until\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplUntilEnd contained containedin=rplDoUntil extend keepend syntax region rplDoUntil matchgroup=rplConditional start="\(^\|\s\+\)do\ze\($\|\s\+\)" end="\(^\|\s\+\)until\ze\($\|\s\+\)" contains=ALL keepend extend " WHILE/REPEAT/END syntax region rplRepeatEnd matchgroup=rplConditional start="\(^\|\s\+\)repeat\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplRepeatEnd contained containedin=rplWhileRepeat extend keepend syntax region rplWhileRepeat matchgroup=rplConditional start="\(^\|\s\+\)while\ze\($\|\s\+\)" end="\(^\|\s\+\)repeat\ze\($\|\s\+\)" contains=ALL keepend extend " Comments syntax match rplCommentError "\*/" syntax region rplCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1 syntax region rplCommentLine start="\(^\|\s\+\)//\ze" skip="\\$" end="$" contains=NONE keepend extend syntax region rplComment start="\(^\|\s\+\)/\*\ze" end="\*/" contains=rplCommentString keepend extend " Catch errors caused by too many right parentheses syntax region rplParen transparent start="(" end=")" contains=ALLBUT,rplParenError,rplComplex,rplIncluded keepend extend syntax match rplParenError ")" " Subroutines " Catch errors caused by too many right '>>' syntax match rplSubError "\(^\|\s\+\)>>\ze\($\|\s\+\)"hs=e-1 syntax region rplSub matchgroup=rplSubDelimitor start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageSub keepend extend " Expressions syntax region rplExpr start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError " Local variables syntax match rplStorageError "\(^\|\s\+\)->\ze\($\|\s\+\)"hs=e-1 syntax region rplStorageSub matchgroup=rplStorage start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageExpr contained containedin=rplLocalStorage keepend extend syntax region rplStorageExpr matchgroup=rplStorage start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError extend contained containedin=rplLocalStorage syntax region rplLocalStorage matchgroup=rplStorage start="\(^\|\s\+\)->\ze\($\|\s\+\)" end="\(^\|\s\+\)\(<<\ze\($\|\s\+\)\|'\)" contains=rplStorageSub,rplStorageExpr,rplComment,rplCommentLine keepend extend " Catch errors caused by too many right brackets syntax match rplArrayError "\]" syntax match rplArray "\]" contained containedin=rplArray syntax region rplArray matchgroup=rplArray start="\[" end="\]" contains=ALLBUT,rplArrayError keepend extend " Catch errors caused by too many right '}' syntax match rplListError "}" syntax match rplList "}" contained containedin=rplList syntax region rplList matchgroup=rplList start="{" end="}" contains=ALLBUT,rplListError,rplIncluded keepend extend " cpp is used by RPL/2 syntax match rplPreProc "\_^#\s*\(define\|undef\)\>" syntax match rplPreProc "\_^#\s*\(warning\|error\)\>" syntax match rplPreCondit "\_^#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>" syntax match rplIncluded contained "\<<\s*\S*\s*>\>" syntax match rplInclude "\_^#\s*include\>\s*["<]" contains=rplIncluded,rplString "syntax match rplExecPath "\%^\_^#!\s*\S*" syntax match rplExecPath "\%^\_^#!\p*\_$" " Any integer syntax match rplInteger "\(^\|\s\+\)[-+]\=\d\+\ze\($\|\s\+\)" " Floating point number " [S][ip].[fp] syntax match rplFloat "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\(\d*\)\=\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign " [S]ip[.fp]E[S]exp syntax match rplFloat "\(^\|\s\+\)[-+]\=\d\+\([\.,]\d*\)\=[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign " [S].fpE[S]exp syntax match rplFloat "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\d\+[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign syntax match rplPoint "\<[\.,]\>" syntax match rplSign "\<[+-]\>" " Complex number " (x,y) syntax match rplComplex "\(^\|\s\+\)([-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=\s*,\s*[-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)" " (x.y) syntax match rplComplex "\(^\|\s\+\)([-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=\s*\.\s*[-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)" " Strings syntax match rplStringGuilles "\\\"" syntax match rplStringAntislash "\\\\" syntax region rplString start=+\(^\|\s\+\)"+ end=+"\ze\($\|\s\+\)+ contains=rplStringGuilles,rplStringAntislash syntax match rplTab "\t" transparent " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default highlighting. hi def link rplControl Statement hi def link rplStatement Statement hi def link rplAlgConditional Conditional hi def link rplConditional Repeat hi def link rplConditionalError Error hi def link rplRepeat Repeat hi def link rplCycle Repeat hi def link rplUntil Repeat hi def link rplIntrinsic Special hi def link rplStorage StorageClass hi def link rplStorageExpr StorageClass hi def link rplStorageError Error hi def link rplReadWrite rplIntrinsic hi def link rplOperator Operator hi def link rplList Special hi def link rplArray Special hi def link rplConstant Identifier hi def link rplExpr Type hi def link rplString String hi def link rplStringGuilles String hi def link rplStringAntislash String hi def link rplBinary Boolean hi def link rplOctal Boolean hi def link rplDecimal Boolean hi def link rplHexadecimal Boolean hi def link rplInteger Number hi def link rplFloat Float hi def link rplComplex Float hi def link rplBoolean Identifier hi def link rplObsolete Todo hi def link rplPreCondit PreCondit hi def link rplInclude Include hi def link rplIncluded rplString hi def link rplInclude Include hi def link rplExecPath Include hi def link rplPreProc PreProc hi def link rplComment Comment hi def link rplCommentLine Comment hi def link rplCommentString Comment hi def link rplSubDelimitor rplStorage hi def link rplCommentError Error hi def link rplParenError Error hi def link rplSubError Error hi def link rplArrayError Error hi def link rplListError Error hi def link rplTab Error hi def link rplBinaryError Error hi def link rplOctalError Error hi def link rplDecimalError Error hi def link rplHexadecimalError Error let b:current_syntax = "rpl" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 tw=132 PK&]`qttvim80/syntax/rnoweb.vimnu[" Vim syntax file " Language: R noweb Files " Maintainer: Johannes Ranke " Last Change: Sat Feb 06, 2016 06:47AM " Version: 0.9.1 " Remarks: - This file is inspired by the proposal of " Fernando Henrique Ferraz Pereira da Rosa " http://www.ime.usp.br/~feferraz/en/sweavevim.html " if exists("b:current_syntax") finish endif syn case match " Extension of Tex clusters {{{1 runtime syntax/tex.vim unlet b:current_syntax syn cluster texMatchGroup add=@rnoweb syn cluster texMathMatchGroup add=rnowebSexpr syn cluster texMathZoneGroup add=rnowebSexpr syn cluster texEnvGroup add=@rnoweb syn cluster texFoldGroup add=@rnoweb syn cluster texDocGroup add=@rnoweb syn cluster texPartGroup add=@rnoweb syn cluster texChapterGroup add=@rnoweb syn cluster texSectionGroup add=@rnoweb syn cluster texSubSectionGroup add=@rnoweb syn cluster texSubSubSectionGroup add=@rnoweb syn cluster texParaGroup add=@rnoweb " Highlighting of R code using an existing r.vim syntax file if available {{{1 syn include @rnowebR syntax/r.vim syn region rnowebChunk matchgroup=rnowebDelimiter start="^<<.*>>=" matchgroup=rnowebDelimiter end="^@" contains=@rnowebR,rnowebChunkReference,rnowebChunk fold keepend syn match rnowebChunkReference "^<<.*>>$" contained syn region rnowebSexpr matchgroup=Delimiter start="\\Sexpr{" matchgroup=Delimiter end="}" contains=@rnowebR contained " Sweave options command {{{1 syn region rnowebSweaveopts matchgroup=Delimiter start="\\SweaveOpts{" matchgroup=Delimiter end="}" " rnoweb Cluster {{{1 syn cluster rnoweb contains=rnowebChunk,rnowebChunkReference,rnowebDelimiter,rnowebSexpr,rnowebSweaveopts " Highlighting {{{1 hi def link rnowebDelimiter Delimiter hi def link rnowebSweaveOpts Statement hi def link rnowebChunkReference Delimiter let b:current_syntax = "rnoweb" " vim: foldmethod=marker: PK&]__ZZvim80/syntax/web.vimnu[" Vim syntax file " Language: WEB " Maintainer: Andreas Scherer " Last Change: April 30, 2001 " Details of the WEB language can be found in the article by Donald E. Knuth, " "The WEB System of Structured Documentation", included as "webman.tex" in " the standard WEB distribution, available for anonymous ftp at " ftp://labrea.stanford.edu/pub/tex/web/. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Although WEB is the ur-language for the "Literate Programming" paradigm, " we base this syntax file on the modern superset, CWEB. Note: This shortcut " may introduce some illegal constructs, e.g., CWEB's "@c" does _not_ start a " code section in WEB. Anyway, I'm not a WEB programmer. runtime! syntax/cweb.vim unlet b:current_syntax " Replace C/C++ syntax by Pascal syntax. syntax include @webIncludedC :p:h/pascal.vim " Double-@ means single-@, anywhere in the WEB source (as in CWEB). " Don't misinterpret "@'" as the start of a Pascal string. syntax match webIgnoredStuff "@[@']" let b:current_syntax = "web" " vim: ts=8 PK&]Ӌ966vim80/syntax/fortran.vimnu[" Vim syntax file " Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77) " Version: 100 " Last Change: 2016 Oct. 29 " Maintainer: Ajit J. Thakkar ; " Usage: For instructions, do :help fortran-syntax from Vim " Credits: " Version 0.1 (April 2000) for Fortran 95 was based on the Fortran 77 syntax file by " Mario Eusebio and Preben Guldberg. Since then, useful suggestions and contributions " have been made, in chronological order, by: " Andrej Panjkov, Bram Moolenaar, Thomas Olsen, Michael Sternberg, Christian Reile, " Walter Dieudonn, Alexander Wagner, Roman Bertle, Charles Rendleman, " Andrew Griffiths, Joe Krahn, Hendrik Merx, Matt Thompson, Jan Hermann, " Stefano Zaghi, Vishnu V. Krishnan and Judical Grasset if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " Choose fortran_dialect using the priority: " source file directive > buffer-local value > global value > file extension " first try using directive in first three lines of file let b:fortran_retype = getline(1)." ".getline(2)." ".getline(3) if b:fortran_retype =~? '\' let b:fortran_dialect = "F" elseif b:fortran_retype =~? '\' let b:fortran_dialect = "f08" elseif !exists("b:fortran_dialect") if exists("g:fortran_dialect") && g:fortran_dialect =~# '\' " try global variable let b:fortran_dialect = g:fortran_dialect else " nothing found, so use default let b:fortran_dialect = "f08" endif endif unlet! b:fortran_retype " make sure buffer-local value is not invalid if b:fortran_dialect !~# '\' let b:fortran_dialect = "f08" endif " Choose between fixed and free source form if this hasn't been done yet if !exists("b:fortran_fixed_source") if b:fortran_dialect == "F" " F requires free source form let b:fortran_fixed_source = 0 elseif exists("fortran_free_source") " User guarantees free source form for all fortran files let b:fortran_fixed_source = 0 elseif exists("fortran_fixed_source") " User guarantees fixed source form for all fortran files let b:fortran_fixed_source = 1 elseif expand("%:e") ==? "f\<90\|95\|03\|08\>" " Free-form file extension defaults as in Intel ifort, gcc(gfortran), NAG, Pathscale, and Cray compilers let b:fortran_fixed_source = 0 elseif expand("%:e") ==? "f\|f77\|for" " Fixed-form file extension defaults let b:fortran_fixed_source = 1 else " Modern fortran still allows both free and fixed source form. " Assume fixed source form unless signs of free source form " are detected in the first five columns of the first s:lmax lines. " Detection becomes more accurate and time-consuming if more lines " are checked. Increase the limit below if you keep lots of comments at " the very top of each file and you have a fast computer. let s:lmax = 500 if ( s:lmax > line("$") ) let s:lmax = line("$") endif let b:fortran_fixed_source = 1 let s:ln=1 while s:ln <= s:lmax let s:test = strpart(getline(s:ln),0,5) if s:test !~ '^[Cc*]' && s:test !~ '^ *[!#]' && s:test =~ '[^ 0-9\t]' && s:test !~ '^[ 0-9]*\t' let b:fortran_fixed_source = 0 break endif let s:ln = s:ln + 1 endwhile unlet! s:lmax s:ln s:test endif endif syn case ignore if b:fortran_fixed_source == 1 syn match fortranConstructName "^\s\{6,}\zs\a\w*\ze\s*:" else syn match fortranConstructName "^\s*\zs\a\w*\ze\s*:" endif if exists("fortran_more_precise") syn match fortranConstructName "\(\" syn match fortranType "\" syn match fortranType "\" syn match fortranType "\" syn keyword fortranType intrinsic syn match fortranType "\" syn keyword fortranStructure dimension syn keyword fortranStorageClass parameter save syn match fortranUnitHeader "\" syn keyword fortranCall call syn match fortranUnitHeader "\" syn match fortranUnitHeader "\" syn match fortranUnitHeader "\" syn keyword fortranKeyword return stop syn keyword fortranConditional else then syn match fortranConditional "\" syn match fortranConditionalOb "\" syn keyword fortranTodo contained todo fixme "Catch errors caused by too many right parentheses syn region fortranParen transparent start="(" end=")" contains=ALLBUT,fortranParenError,@fortranCommentGroup,cIncluded,@spell syn match fortranParenError ")" syn match fortranOperator "\.\s*n\=eqv\s*\." syn match fortranOperator "\.\s*\(and\|or\|not\)\s*\." syn match fortranOperator "\(+\|-\|/\|\*\)" syn match fortranTypeOb "\" syn match fortranIntrinsic "\" "Numbers of various sorts " Integers syn match fortranNumber display "\<\d\+\(_\a\w*\)\=\>" " floating point number, without a decimal point syn match fortranFloatIll display "\<\d\+[deq][-+]\=\d\+\(_\a\w*\)\=\>" " floating point number, starting with a decimal point syn match fortranFloatIll display "\.\d\+\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>" " floating point number, no digits after decimal syn match fortranFloatIll display "\<\d\+\.\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>" " floating point number, D or Q exponents syn match fortranFloatIll display "\<\d\+\.\d\+\([dq][-+]\=\d\+\)\=\(_\a\w*\)\=\>" " floating point number syn match fortranFloat display "\<\d\+\.\d\+\(e[-+]\=\d\+\)\=\(_\a\w*\)\=\>" " Numbers in formats syn match fortranFormatSpec display "\d*f\d\+\.\d\+" syn match fortranFormatSpec display "\d*e[sn]\=\d\+\.\d\+\(e\d+\>\)\=" syn match fortranFormatSpec display "\d*\(d\|q\|g\)\d\+\.\d\+\(e\d+\)\=" syn match fortranFormatSpec display "\d\+x\>" " The next match cannot be used because it would pick up identifiers as well " syn match fortranFormatSpec display "\<\(a\|i\)\d\+" " Numbers as labels syn match fortranLabelNumber display "^\d\{1,5}\s"me=e-1 syn match fortranLabelNumber display "^ \d\{1,4}\s"ms=s+1,me=e-1 syn match fortranLabelNumber display "^ \d\{1,3}\s"ms=s+2,me=e-1 syn match fortranLabelNumber display "^ \d\d\=\s"ms=s+3,me=e-1 syn match fortranLabelNumber display "^ \d\s"ms=s+4,me=e-1 if exists("fortran_more_precise") " Numbers as targets syn match fortranTarget display "\(\" syn match fortranTarget display "\(\" syn match fortranTarget display "\(\" endif syn keyword fortranTypeR external syn keyword fortranIOR format syn match fortranKeywordR "\" syn match fortranKeyword "^\s*\d\+\s\+continue\>" syn match fortranKeyword "\" syn match fortranKeywordDel "\" syn keyword fortranType none syn keyword fortranStructure private public intent optional syn keyword fortranStructure pointer target allocatable syn keyword fortranStorageClass in out syn match fortranStorageClass "\" syn match fortranUnitHeader "\" syn keyword fortranUnitHeader use only contains syn keyword fortranUnitHeader result operator assignment syn match fortranUnitHeader "\" syn match fortranUnitHeader "\" syn keyword fortranKeyword allocate deallocate nullify cycle exit syn match fortranConditional "\" syn keyword fortranConditional case default where elsewhere syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)" syn match fortranOperator "=>" syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber syn keyword fortranIO pad position action delim readwrite syn keyword fortranIO eor advance nml syn keyword fortranIntrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing syn keyword fortranIntrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify syn match fortranIntrinsic "\\(\s*\.\)\@!"me=s+3 syn match fortranIntrinsic "\\s*[(,]"me=s+4 syn match fortranUnitHeader "\" syn keyword fortranIOR namelist syn keyword fortranConditionalR while syn keyword fortranIntrinsicR achar iachar transfer syn keyword fortranInclude include syn keyword fortranStorageClassR sequence syn match fortranConditional "\" syn match fortranType "\" syn match fortranType "\" if exists("fortran_more_precise") syn match fortranConstructName "\(\" endif if b:fortran_dialect == "f08" " F2003 syn keyword fortranIntrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of " ISO_C_binding syn keyword fortranConstant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab syn keyword fortranConstant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr syn keyword fortranIntrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer syn keyword fortranType c_ptr c_funptr " ISO_Fortran_env syn keyword fortranConstant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit " IEEE_arithmetic syn keyword fortranIntrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode syn keyword fortranReadWrite flush wait syn keyword fortranIO decimal round iomsg syn keyword fortranType asynchronous nopass non_overridable pass protected volatile extends import syn keyword fortranType non_intrinsic value bind deferred generic final enumerator syn match fortranType "\" syn match fortranType "\" syn match fortranType "\" syn match fortranType "\" syn match fortranConditional "\" syn match fortranUnitHeader "\" syn match fortranOperator "\([\|]\)" " F2008 syn keyword fortranIntrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 syn keyword fortranIntrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits syn keyword fortranIntrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image syn keyword fortranIO newunit syn keyword fortranType contiguous syn keyword fortranRepeat concurrent " CUDA fortran syn match fortranTypeCUDA "\" syn keyword fortranTypeCUDA host global device value syn keyword fortranTypeCUDA shared constant pinned texture syn keyword fortranTypeCUDA dim1 dim2 dim3 dim4 syn keyword fortranTypeCUDA cudadeviceprop cuda_count_kind cuda_stream_kind syn keyword fortranTypeCUDA cudaEvent cudaFuncAttributes cudaArrayPtr syn keyword fortranTypeCUDA cudaSymbol cudaChannelFormatDesc cudaPitchedPtr syn keyword fortranTypeCUDA cudaExtent cudaMemcpy3DParms syn keyword fortranTypeCUDA cudaFuncCachePreferNone cudaFuncCachePreferShared syn keyword fortranTypeCUDA cudaFuncCachePreferL1 cudaLimitStackSize syn keyword fortranTypeCUDA cudaLimitPrintfSize cudaLimitMallocHeapSize syn keyword fortranTypeCUDA cudaSharedMemBankSizeDefault cudaSharedMemBankSizeFourByte cudaSharedMemBankSizeEightByte syn keyword fortranTypeCUDA cudaEventDefault cudaEventBlockingSync cudaEventDisableTiming syn keyword fortranTypeCUDA cudaMemcpyHostToDevice cudaMemcpyDeviceToHost syn keyword fortranTypeCUDA cudaMemcpyDeviceToDevice syn keyword fortranTypeCUDA cudaErrorNotReady cudaSuccess cudaErrorInvalidValue syn keyword fortranTypeCUDA c_devptr syn match fortranStringCUDA "blockidx%[xyz]" syn match fortranStringCUDA "blockdim%[xyz]" syn match fortranStringCUDA "griddim%[xyz]" syn match fortranStringCUDA "threadidx%[xyz]" syn keyword fortranIntrinsicCUDA warpsize syncthreads syncthreads_and syncthreads_count syncthreads_or threadfence threadfence_block threadfence_system gpu_time allthreads anythread ballot syn keyword fortranIntrinsicCUDA atomicadd atomicsub atomicmax atomicmin atomicand atomicor atomicxor atomicexch atomicinc atomicdec atomiccas sizeof __shfl __shfl_up __shfl_down __shfl_xor syn keyword fortranIntrinsicCUDA cudaChooseDevice cudaDeviceGetCacheConfig cudaDeviceGetLimit cudaDeviceGetSharedMemConfig cudaDeviceReset cudaDeviceSetCacheConfig cudaDeviceSetLimit cudaDeviceSetSharedMemConfig cudaDeviceSynchronize cudaGetDevice cudaGetDeviceCount cudaGetDeviceProperties cudaSetDevice cudaSetDeviceFlags cudaSetValidDevices syn keyword fortranIntrinsicCUDA cudaThreadExit cudaThreadSynchronize cudaGetLastError cudaGetErrorString cudaPeekAtLastError cudaStreamCreate cudaStreamDestroy cudaStreamQuery cudaStreamSynchronize cudaStreamWaitEvent cudaEventCreate cudaEventCreateWithFlags cudaEventDestroy cudaEventElapsedTime cudaEventQuery cudaEventRecord cudaEventSynchronize syn keyword fortranIntrinsicCUDA cudaFuncGetAttributes cudaFuncSetCacheConfig cudaFuncSetSharedMemConfig cudaSetDoubleForDevice cudaSetDoubleForHost cudaFree cudaFreeArray cudaFreeHost cudaGetSymbolAddress cudaGetSymbolSize syn keyword fortranIntrinsicCUDA cudaHostAlloc cudaHostGetDevicePointer cudaHostGetFlags cudaHostRegister cudaHostUnregister cudaMalloc cudaMallocArray cudaMallocHost cudaMallocPitch cudaMalloc3D cudaMalloc3DArray syn keyword fortranIntrinsicCUDA cudaMemcpy cudaMemcpyArraytoArray cudaMemcpyAsync cudaMemcpyFromArray cudaMemcpyFromSymbol cudaMemcpyFromSymbolAsync cudaMemcpyPeer cudaMemcpyPeerAsync cudaMemcpyToArray cudaMemcpyToSymbol cudaMemcpyToSymbolAsync cudaMemcpy2D cudaMemcpy2DArrayToArray cudaMemcpy2DAsync cudaMemcpy2DFromArray cudaMemcpy2DToArray cudaMemcpy3D cudaMemcpy3DAsync syn keyword fortranIntrinsicCUDA cudaMemGetInfo cudaMemset cudaMemset2D cudaMemset3D cudaDeviceCanAccessPeer cudaDeviceDisablePeerAccess cudaDeviceEnablePeerAccess cudaPointerGetAttributes cudaDriverGetVersion cudaRuntimeGetVersion syn region none matchgroup=fortranType start="<<<" end=">>>" contains=ALLBUT,none endif syn cluster fortranCommentGroup contains=fortranTodo if (b:fortran_fixed_source == 1) if !exists("fortran_have_tabs") "Flag items beyond column 72 syn match fortranSerialNumber excludenl "^.\{73,}$"lc=72 "Flag left margin errors syn match fortranLabelError "^.\{-,4}[^0-9 ]" contains=fortranTab syn match fortranLabelError "^.\{4}\d\S" endif syn match fortranComment excludenl "^[!c*].*$" contains=@fortranCommentGroup,@spell syn match fortranLeftMargin transparent "^ \{5}" syn match fortranContinueMark display "^.\{5}\S"lc=5 else syn match fortranContinueMark display "&" endif syn match fortranComment excludenl "!.*$" contains=@fortranCommentGroup,@spell syn match fortranOpenMP excludenl "^\s*!\$\(OMP\)\=&\=\s.*$" "cpp is often used with Fortran syn match cPreProc "^\s*#\s*\(define\|ifdef\)\>.*" syn match cPreProc "^\s*#\s*\(elif\|if\)\>.*" syn match cPreProc "^\s*#\s*\(ifndef\|undef\)\>.*" syn match cPreCondit "^\s*#\s*\(else\|endif\)\>.*" syn region cIncluded contained start=+"[^(]+ skip=+\\\\\|\\"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber syn match cIncluded contained "<[^>]*>" syn match cInclude "^\s*#\s*include\>\s*["<]" contains=cIncluded "Synchronising limits assume that comment and continuation lines are not mixed if exists("fortran_fold") || exists("fortran_more_precise") syn sync fromstart elseif (b:fortran_fixed_source == 0) syn sync linecont "&" minlines=30 else syn sync minlines=30 endif if exists("fortran_fold") if (b:fortran_fixed_source == 1) syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\\)\=\|$\)" contains=ALLBUT,fortranModule syn region fortranModule transparent fold keepend start="^\s*submodule\s\+(\a\w*\s*\(:\a\w*\s*\)*)\s*\z\(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\\)\=\|$\)" contains=ALLBUT,fortranProgram,fortranModule syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\\)\=\|$\)" contains=ALLBUT,fortranProgram syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\\)\=\)" contains=ALLBUT,fortranProgram,fortranModule syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\\)\=\)" contains=ALLBUT,fortranProgram,fortranModule syn region fortranBlockData transparent fold keepend start="\ " Last Change: 2006 Apr 30 " Filenames: *.prg " URL: http://uosis.mif.vu.lt/~zemlys/vim-syntax/eviews.vim " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif setlocal iskeyword=@,48-57,_,. syn case match " Comment syn match eComment /\'.*/ " Constant " string enclosed in double quotes syn region eString start=/"/ skip=/\\\\\|\\"/ end=/"/ " number with no fractional part or exponent syn match eNumber /\d\+/ " floating point number with integer and fractional parts and optional exponent syn match eFloat /\d\+\.\d*\([Ee][-+]\=\d\+\)\=/ " floating point number with no integer part and optional exponent syn match eFloat /\.\d\+\([Ee][-+]\=\d\+\)\=/ " floating point number with no fractional part and optional exponent syn match eFloat /\d\+[Ee][-+]\=\d\+/ " Identifier " identifier with leading letter and optional following keyword characters syn match eIdentifier /\a\k*/ " Eviews Programing Language syn keyword eProgLang @date else endif @errorcount @evpath exitloop for if @isobject next poff pon return statusline step stop @temppath then @time to @toc wend while include call subroutine endsub and or " Eviews Objects, Views and Procedures syn keyword eOVP alpha coef equation graph group link logl matrix model pool rowvector sample scalar series sspace sym system table text valmap var vector " Standard Eviews Commands syn keyword eStdCmd 3sls add addassign addinit addtext align alpha append arch archtest area arlm arma arroots auto axis bar bdstest binary block boxplot boxplotby bplabel cause ccopy cd cdfplot cellipse censored cfetch checkderivs chow clabel cleartext close coef coefcov coint comment control copy cor correl correlsq count cov create cross data datelabel dates db dbcopy dbcreate dbdelete dbopen dbpack dbrebuild dbrename dbrepair decomp define delete derivs describe displayname do draw driconvert drop dtable ec edftest endog eqs equation errbar exclude exit expand fetch fill fiml fit forecast freeze freq frml garch genr gmm grads graph group hconvert hfetch hilo hist hlabel hpf impulse jbera kdensity kerfit label laglen legend line linefit link linkto load logit logl ls makecoint makederivs makeendog makefilter makegarch makegrads makegraph makegroup makelimits makemodel makeregs makeresids makesignals makestates makestats makesystem map matrix means merge metafile ml model msg name nnfit open options ordered output override pageappend pagecontract pagecopy pagecreate pagedelete pageload pagerename pagesave pageselect pagestack pagestruct pageunstack param pcomp pie pool predict print probit program qqplot qstats range read rename representations resample reset residcor residcov resids results rls rndint rndseed rowvector run sample save scalar scale scat scatmat scenario seas seasplot series set setbpelem setcell setcolwidth setconvert setelem setfillcolor setfont setformat setheight setindent setjust setline setlines setmerge settextcolor setwidth sheet show signalgraphs smooth smpl solve solveopt sort spec spike sspace statby statefinal stategraphs stateinit stats statusline stomna store structure sur svar sym system table template testadd testbtw testby testdrop testexog testfit testlags teststat text tic toc trace tramoseats tsls unlink update updatecoefs uroot usage valmap var vars vector wald wfcreate wfopen wfsave wfselect white wls workfile write wtsls x11 x12 xy xyline xypair " Constant Identifier syn match eConstant /\!\k*/ " String Identifier syn match eStringId /%\k*/ " Command Identifier syn match eCommand /@\k*/ " Special syn match eDelimiter /[,;:]/ " Error syn region eRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError syn region eRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError syn region eRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError syn match eError /[)\]}]/ syn match eBraceError /[)}]/ contained syn match eCurlyError /[)\]]/ contained syn match eParenError /[\]}]/ contained " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link eComment Comment hi def link eConstant Identifier hi def link eStringId Identifier hi def link eCommand Type hi def link eString String hi def link eNumber Number hi def link eBoolean Boolean hi def link eFloat Float hi def link eConditional Conditional hi def link eProgLang Statement hi def link eOVP Statement hi def link eStdCmd Statement hi def link eIdentifier Normal hi def link eDelimiter Delimiter hi def link eError Error hi def link eBraceError Error hi def link eCurlyError Error hi def link eParenError Error let b:current_syntax="eviews" " vim: ts=8 sw=2 PK&]X@2@2vim80/syntax/yaml.vimnu[" Vim syntax file " Language: YAML (YAML Ain't Markup Language) 1.2 " Maintainer: Nikolai Pavlov " First author: Nikolai Weibull " Latest Revision: 2015-03-28 if exists('b:current_syntax') finish endif let s:cpo_save = &cpo set cpo&vim " Choose the schema to use " TODO: Validate schema if !exists('b:yaml_schema') if exists('g:yaml_schema') let b:yaml_schema = g:yaml_schema else let b:yaml_schema = 'core' endif endif let s:ns_char = '\%([\n\r\uFEFF \t]\@!\p\)' let s:ns_word_char = '[[:alnum:]_\-]' let s:ns_uri_char = '\%(%\x\x\|'.s:ns_word_char.'\|[#/;?:@&=+$,.!~*''()[\]]\)' let s:ns_tag_char = '\%(%\x\x\|'.s:ns_word_char.'\|[#/;?:@&=+$.~*''()]\)' let s:c_ns_anchor_char = '\%([\n\r\uFEFF \t,[\]{}]\@!\p\)' let s:c_indicator = '[\-?:,[\]{}#&*!|>''"%@`]' let s:c_flow_indicator = '[,[\]{}]' let s:ns_char_without_c_indicator = substitute(s:ns_char, '\v\C[\zs', '\=s:c_indicator[1:-2]', '') let s:_collection = '[^\@!\(\%(\\\.\|\[^\\\]]\)\+\)]' let s:_neg_collection = '[^\(\%(\\\.\|\[^\\\]]\)\+\)]' function s:SimplifyToAssumeAllPrintable(p) return substitute(a:p, '\V\C\\%('.s:_collection.'\\@!\\p\\)', '[^\1]', '') endfunction let s:ns_char = s:SimplifyToAssumeAllPrintable(s:ns_char) let s:ns_char_without_c_indicator = s:SimplifyToAssumeAllPrintable(s:ns_char_without_c_indicator) let s:c_ns_anchor_char = s:SimplifyToAssumeAllPrintable(s:c_ns_anchor_char) function s:SimplifyAdjacentCollections(p) return substitute(a:p, '\V\C'.s:_collection.'\\|'.s:_collection, '[\1\2]', 'g') endfunction let s:ns_uri_char = s:SimplifyAdjacentCollections(s:ns_uri_char) let s:ns_tag_char = s:SimplifyAdjacentCollections(s:ns_tag_char) let s:c_verbatim_tag = '!<'.s:ns_uri_char.'\+>' let s:c_named_tag_handle = '!'.s:ns_word_char.'\+!' let s:c_secondary_tag_handle = '!!' let s:c_primary_tag_handle = '!' let s:c_tag_handle = '\%('.s:c_named_tag_handle. \ '\|'.s:c_secondary_tag_handle. \ '\|'.s:c_primary_tag_handle.'\)' let s:c_ns_shorthand_tag = s:c_tag_handle . s:ns_tag_char.'\+' let s:c_non_specific_tag = '!' let s:c_ns_tag_property = s:c_verbatim_tag. \ '\|'.s:c_ns_shorthand_tag. \ '\|'.s:c_non_specific_tag let s:c_ns_anchor_name = s:c_ns_anchor_char.'\+' let s:c_ns_anchor_property = '&'.s:c_ns_anchor_name let s:c_ns_alias_node = '\*'.s:c_ns_anchor_name let s:ns_directive_name = s:ns_char.'\+' let s:ns_local_tag_prefix = '!'.s:ns_uri_char.'*' let s:ns_global_tag_prefix = s:ns_tag_char.s:ns_uri_char.'*' let s:ns_tag_prefix = s:ns_local_tag_prefix. \ '\|'.s:ns_global_tag_prefix let s:ns_plain_safe_out = s:ns_char let s:ns_plain_safe_in = '\%('.s:c_flow_indicator.'\@!'.s:ns_char.'\)' let s:ns_plain_safe_in = substitute(s:ns_plain_safe_in, '\V\C\\%('.s:_collection.'\\@!'.s:_neg_collection.'\\)', '[^\1\2]', '') let s:ns_plain_safe_in_without_colhash = substitute(s:ns_plain_safe_in, '\V\C'.s:_neg_collection, '[^\1:#]', '') let s:ns_plain_safe_out_without_colhash = substitute(s:ns_plain_safe_out, '\V\C'.s:_neg_collection, '[^\1:#]', '') let s:ns_plain_first_in = '\%('.s:ns_char_without_c_indicator.'\|[?:\-]\%('.s:ns_plain_safe_in.'\)\@=\)' let s:ns_plain_first_out = '\%('.s:ns_char_without_c_indicator.'\|[?:\-]\%('.s:ns_plain_safe_out.'\)\@=\)' let s:ns_plain_char_in = '\%('.s:ns_char.'#\|:'.s:ns_plain_safe_in.'\|'.s:ns_plain_safe_in_without_colhash.'\)' let s:ns_plain_char_out = '\%('.s:ns_char.'#\|:'.s:ns_plain_safe_out.'\|'.s:ns_plain_safe_out_without_colhash.'\)' let s:ns_plain_out = s:ns_plain_first_out . s:ns_plain_char_out.'*' let s:ns_plain_in = s:ns_plain_first_in . s:ns_plain_char_in.'*' syn keyword yamlTodo contained TODO FIXME XXX NOTE syn region yamlComment display oneline start='\%\(^\|\s\)#' end='$' \ contains=yamlTodo execute 'syn region yamlDirective oneline start='.string('^\ze%'.s:ns_directive_name.'\s\+').' '. \ 'end="$" '. \ 'contains=yamlTAGDirective,'. \ 'yamlYAMLDirective,'. \ 'yamlReservedDirective '. \ 'keepend' syn match yamlTAGDirective '%TAG\s\+' contained nextgroup=yamlTagHandle execute 'syn match yamlTagHandle contained nextgroup=yamlTagPrefix '.string(s:c_tag_handle.'\s\+') execute 'syn match yamlTagPrefix contained nextgroup=yamlComment ' . string(s:ns_tag_prefix) syn match yamlYAMLDirective '%YAML\s\+' contained nextgroup=yamlYAMLVersion syn match yamlYAMLVersion '\d\+\.\d\+' contained nextgroup=yamlComment execute 'syn match yamlReservedDirective contained nextgroup=yamlComment '. \string('%\%(\%(TAG\|YAML\)\s\)\@!'.s:ns_directive_name) syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start='"' skip='\\"' end='"' \ contains=yamlEscape \ nextgroup=yamlKeyValueDelimiter syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start="'" skip="''" end="'" \ contains=yamlSingleEscape \ nextgroup=yamlKeyValueDelimiter syn match yamlEscape contained '\\\%([\\"abefnrtv\^0_ NLP\n]\|x\x\x\|u\x\{4}\|U\x\{8}\)' syn match yamlSingleEscape contained "''" syn match yamlBlockScalarHeader contained '\s\+\zs[|>]\%([+-]\=[1-9]\|[1-9]\=[+-]\)\=' syn cluster yamlConstant contains=yamlBool,yamlNull syn cluster yamlFlow contains=yamlFlowString,yamlFlowMapping,yamlFlowCollection syn cluster yamlFlow add=yamlFlowMappingKey,yamlFlowMappingMerge syn cluster yamlFlow add=@yamlConstant,yamlPlainScalar,yamlFloat syn cluster yamlFlow add=yamlTimestamp,yamlInteger,yamlMappingKeyStart syn cluster yamlFlow add=yamlComment syn region yamlFlowMapping matchgroup=yamlFlowIndicator start='{' end='}' contains=@yamlFlow syn region yamlFlowCollection matchgroup=yamlFlowIndicator start='\[' end='\]' contains=@yamlFlow execute 'syn match yamlPlainScalar /'.s:ns_plain_out.'/' execute 'syn match yamlPlainScalar contained /'.s:ns_plain_in.'/' syn match yamlMappingKeyStart '?\ze\s' syn match yamlMappingKeyStart '?' contained execute 'syn match yamlFlowMappingKey /\%#=1'.s:ns_plain_in.'\%(\s\+'.s:ns_plain_in.'\)*\ze\s*:/ contained '. \'nextgroup=yamlKeyValueDelimiter' syn match yamlFlowMappingMerge /<<\ze\s*:/ contained nextgroup=yamlKeyValueDelimiter syn match yamlBlockCollectionItemStart '^\s*\zs-\%(\s\+-\)*\s' nextgroup=yamlBlockMappingKey,yamlBlockMappingMerge " Use the old regexp engine, the NFA engine doesn't like all the \@ items. execute 'syn match yamlBlockMappingKey /\%#=1^\s*\zs'.s:ns_plain_out.'\%(\s\+'.s:ns_plain_out.'\)*\ze\s*:\%(\s\|$\)/ '. \'nextgroup=yamlKeyValueDelimiter' execute 'syn match yamlBlockMappingKey /\%#=1\s*\zs'.s:ns_plain_out.'\%(\s\+'.s:ns_plain_out.'\)*\ze\s*:\%(\s\|$\)/ contained '. \'nextgroup=yamlKeyValueDelimiter' syn match yamlBlockMappingMerge /^\s*\zs<<\ze:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter syn match yamlBlockMappingMerge /<<\ze\s*:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter contained syn match yamlKeyValueDelimiter /\s*:/ contained syn match yamlKeyValueDelimiter /\s*:/ contained syn cluster yamlScalarWithSpecials contains=yamlPlainScalar,yamlBlockMappingKey,yamlFlowMappingKey let s:_bounder = s:SimplifyToAssumeAllPrintable('\%([[\]{}, \t]\@!\p\)') if b:yaml_schema is# 'json' syn keyword yamlNull null contained containedin=@yamlScalarWithSpecials syn keyword yamlBool true false exe 'syn match yamlInteger /'.s:_bounder.'\@1 " URL: http://www.rustyparts.com/vim/syntax/htmlos.vim " Info: http://www.rustyparts.com/scripts.php " Last Change: 2003 May 11 " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'htmlos' endif runtime! syntax/html.vim unlet b:current_syntax syn cluster htmlPreproc add=htmlosRegion syn case ignore " Function names syn keyword htmlosFunctions expand sleep getlink version system ascii getascii syslock sysunlock cr lf clean postprep listtorow split listtocol coltolist rowtolist tabletolist contained syn keyword htmlosFunctions cut \display cutall cutx cutallx length reverse lower upper proper repeat left right middle trim trimleft trimright count countx locate locatex replace replacex replaceall replaceallx paste pasteleft pasteleftx pasteleftall pasteleftallx pasteright pasterightall pasterightallx chopleft chopleftx chopright choprightx format concat contained syn keyword htmlosFunctions goto exitgoto contained syn keyword htmlosFunctions layout cols rows row items getitem putitem switchitems gettable delrow delrows delcol delcols append merge fillcol fillrow filltable pastetable getcol getrow fillindexcol insindexcol dups nodups maxtable mintable maxcol mincol maxrow minrow avetable avecol averow mediantable mediancol medianrow producttable productcol productrow sumtable sumcol sumrow sumsqrtable sumsqrcol sumsqrrow reversecols reverserows switchcols switchrows inscols insrows insfillcol sortcol reversesortcol sortcoln reversesortcoln sortrow sortrown reversesortrow reversesortrown getcoleq getcoleqn getcolnoteq getcolany getcolbegin getcolnotany getcolnotbegin getcolge getcolgt getcolle getcollt getcolgen getcolgtn getcollen getcoltn getcolend getcolnotend getrowend getrownotend getcolin getcolnotin getcolinbegin getcolnotinbegin getcolinend getcolnotinend getrowin getrownotin getrowinbegin getrownotinbegin getrowinend getrownotinend contained syn keyword htmlosFunctions dbcreate dbadd dbedit dbdelete dbsearch dbsearchsort dbget dbgetsort dbstatus dbindex dbimport dbfill dbexport dbsort dbgetrec dbremove dbpurge dbfind dbfindsort dbunique dbcopy dbmove dbkill dbtransfer dbpoke dbsearchx dbgetx contained syn keyword htmlosFunctions syshtmlosname sysstartname sysfixfile fileinfo filelist fileindex domainname page browser regdomain username usernum getenv httpheader copy file ts row sysls syscp sysmv sysmd sysrd filepush filepushlink dirname contained syn keyword htmlosFunctions mail to address subject netmail netmailopen netmailclose mailfilelist netweb netwebresults webpush netsockopen netsockread netsockwrite netsockclose contained syn keyword htmlosFunctions today time systime now yesterday tomorrow getday getmonth getyear getminute getweekday getweeknum getyearday getdate gettime getamorpm gethour addhours addminutes adddays timebetween timetill timefrom datetill datefrom mixedtimebetween mixeddatetill mixedtimetill mixedtimefrom mixeddatefrom nextdaybyweekfromdate nextdaybyweekfromtoday nextdaybymonthfromdate nextdaybymonthfromtoday nextdaybyyearfromdate nextdaybyyearfromtoday offsetdaybyweekfromdate offsetdaybyweekfromtoday offsetdaybymonthfromdate offsetdaybymonthfromtoday contained syn keyword htmlosFunctions isprivate ispublic isfile isdir isblank iserror iserror iseven isodd istrue isfalse islogical istext istag isnumber isinteger isdate istableeq istableeqx istableeqn isfuture ispast istoday isweekday isweekend issamedate iseq isnoteq isge isle ismod10 isvalidstring contained syn keyword htmlosFunctions celtof celtokel ftocel ftokel keltocel keltof cmtoin intocm fttom mtoft fttomile miletoft kmtomile miletokm mtoyd ydtom galtoltr ltrtogal ltrtoqt qttoltr gtooz oztog kgtolb lbtokg mttoton tontomt contained syn keyword htmlosFunctions max min abs sign inverse square sqrt cube roundsig round ceiling roundup floor rounddown roundeven rounddowneven roundupeven roundodd roundupodd rounddownodd random factorial summand fibonacci remainder mod radians degrees cos sin tan cotan secant cosecant acos asin atan exp power power10 ln log10 log sinh cosh tanh contained syn keyword htmlosFunctions xmldelete xmldeletex xmldeleteattr xmldeleteattrx xmledit xmleditx xmleditvalue xmleditvaluex xmleditattr xmleditattrx xmlinsertbefore xmlinsertbeforex smlinsertafter xmlinsertafterx xmlinsertattr xmlinsertattrx smlget xmlgetx xmlgetvalue xmlgetvaluex xmlgetattrvalue xmlgetattrvaluex xmlgetrec xmlgetrecx xmlgetrecattrvalue xmlgetrecattrvaluex xmlchopleftbefore xmlchopleftbeforex xmlchoprightbefore xmlchoprightbeforex xmlchopleftafter xmlchopleftafterx xmlchoprightafter xmlchoprightafterx xmllocatebefore xmllocatebeforex xmllocateafter xmllocateafterx contained " Type syn keyword htmlosType int str dol flt dat grp contained " StorageClass syn keyword htmlosStorageClass locals contained " Operator syn match htmlosOperator "[-=+/\*!]" contained syn match htmlosRelation "[~]" contained syn match htmlosRelation "[=~][&!]" contained syn match htmlosRelation "[!=<>]=" contained syn match htmlosRelation "[<>]" contained " Comment syn region htmlosComment start="#" end="/#" contained " Conditional syn keyword htmlosConditional if then /if to else elif contained syn keyword htmlosConditional and or nand nor xor not contained " Repeat syn keyword htmlosRepeat while do /while for /for contained " Keyword syn keyword htmlosKeyword name value step do rowname colname rownum contained " Repeat syn keyword htmlosLabel case matched /case switch contained " Statement syn keyword htmlosStatement break exit return continue contained " Identifier syn match htmlosIdentifier "\h\w*[\.]*\w*" contained " Special identifier syn match htmlosSpecialIdentifier "[\$@]" contained " Define syn keyword htmlosDefine function overlay contained " Boolean syn keyword htmlosBoolean true false contained " String syn region htmlosStringDouble keepend matchgroup=None start=+"+ end=+"+ contained syn region htmlosStringSingle keepend matchgroup=None start=+'+ end=+'+ contained " Number syn match htmlosNumber "-\=\<\d\+\>" contained " Float syn match htmlosFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" contained " Error syn match htmlosError "ERROR" contained " Parent syn match htmlosParent "[({[\]})]" contained " Todo syn keyword htmlosTodo TODO Todo todo contained syn cluster htmlosInside contains=htmlosComment,htmlosFunctions,htmlosIdentifier,htmlosSpecialIdentifier,htmlosConditional,htmlosRepeat,htmlosLabel,htmlosStatement,htmlosOperator,htmlosRelation,htmlosStringSingle,htmlosStringDouble,htmlosNumber,htmlosFloat,htmlosError,htmlosKeyword,htmlosType,htmlosBoolean,htmlosParent syn cluster htmlosTop contains=@htmlosInside,htmlosDefine,htmlosError,htmlosStorageClass syn region htmlosRegion keepend matchgroup=Delimiter start="<<" skip=+".\{-}?>.\{-}"\|'.\{-}?>.\{-}'\|/\*.\{-}?>.\{-}\*/+ end=">>" contains=@htmlosTop syn region htmlosRegion keepend matchgroup=Delimiter start="\[\[" skip=+".\{-}?>.\{-}"\|'.\{-}?>.\{-}'\|/\*.\{-}?>.\{-}\*/+ end="\]\]" contains=@htmlosTop " sync if exists("htmlos_minlines") exec "syn sync minlines=" . htmlos_minlines else syn sync minlines=100 endif " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later hi def link htmlosSpecialIdentifier Operator hi def link htmlosIdentifier Identifier hi def link htmlosStorageClass StorageClass hi def link htmlosComment Comment hi def link htmlosBoolean Boolean hi def link htmlosStringSingle String hi def link htmlosStringDouble String hi def link htmlosNumber Number hi def link htmlosFloat Float hi def link htmlosFunctions Function hi def link htmlosRepeat Repeat hi def link htmlosConditional Conditional hi def link htmlosLabel Label hi def link htmlosStatement Statement hi def link htmlosKeyword Statement hi def link htmlosType Type hi def link htmlosDefine Define hi def link htmlosParent Delimiter hi def link htmlosError Error hi def link htmlosTodo Todo hi def link htmlosOperator Operator hi def link htmlosRelation Operator let b:current_syntax = "htmlos" if main_syntax == 'htmlos' unlet main_syntax endif " vim: ts=8 sw=2 PK&]Zvim80/syntax/vsejcl.vimnu[" Vim syntax file " Language: JCL job control language - DOS/VSE " Maintainer: Davyd Ondrejko " URL: " Last change: 2001 May 10 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " tags syn keyword vsejclKeyword DLBL EXEC JOB ASSGN EOJ syn keyword vsejclField JNM CLASS DISP USER SYSID JSEP SIZE syn keyword vsejclField VSAM syn region vsejclComment start="^/\*" end="$" syn region vsejclComment start="^[\* ]\{}$" end="$" syn region vsejclMisc start="^ " end="$" contains=Jparms syn match vsejclString /'.\{-}'/ syn match vsejclParms /(.\{-})/ contained " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link vsejclComment Comment hi def link vsejclField Type hi def link vsejclKeyword Statement hi def link vsejclObject Constant hi def link vsejclString Constant hi def link vsejclMisc Special hi def link vsejclParms Constant let b:current_syntax = "vsejcl" " vim: ts=4 PK&]vim80/syntax/crontab.vimnu[" Vim syntax file " Language: crontab " Maintainer: David Necas (Yeti) " Original Maintainer: John Hoelzel johnh51@users.sourceforge.net " License: This file can be redistribued and/or modified under the same terms " as Vim itself. " Filenames: /tmp/crontab.* used by "crontab -e" " Last Change: 2015-01-20 " " crontab line format: " Minutes Hours Days Months Days_of_Week Commands # comments " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syntax match crontabNick "^\s*@\(reboot\|yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly\)\>" nextgroup=crontabCmd skipwhite syntax match crontabVar "^\s*\k\w*\s*="me=e-1 syntax case ignore syntax match crontabMin "^\s*[-0-9/,.*]\+" nextgroup=crontabHr skipwhite syntax match crontabHr "\s[-0-9/,.*]\+" nextgroup=crontabDay skipwhite contained syntax match crontabDay "\s[-0-9/,.*]\+" nextgroup=crontabMnth skipwhite contained syntax match crontabMnth "\s[-a-z0-9/,.*]\+" nextgroup=crontabDow skipwhite contained syntax keyword crontabMnth12 contained jan feb mar apr may jun jul aug sep oct nov dec syntax match crontabDow "\s[-a-z0-9/,.*]\+" nextgroup=crontabCmd skipwhite contained syntax keyword crontabDow7 contained sun mon tue wed thu fri sat syntax region crontabCmd start="\S" end="$" skipwhite contained keepend contains=crontabPercent syntax match crontabCmnt "^\s*#.*" contains=@Spell syntax match crontabPercent "[^\\]%.*"lc=1 contained " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link crontabMin Number hi def link crontabHr PreProc hi def link crontabDay Type hi def link crontabMnth Number hi def link crontabMnth12 Number hi def link crontabMnthS Number hi def link crontabMnthN Number hi def link crontabDow PreProc hi def link crontabDow7 PreProc hi def link crontabDowS PreProc hi def link crontabDowN PreProc hi def link crontabNick Special hi def link crontabVar Identifier hi def link crontabPercent Special " comment out next line for to suppress unix commands coloring. hi def link crontabCmd Statement hi def link crontabCmnt Comment let b:current_syntax = "crontab" " vim: ts=8 PK&]n&&vim80/syntax/b.vimnu[" Vim syntax file " Language: B (A Formal Method with refinement and mathematical proof) " Maintainer: Mathieu Clabaut " Contributor: Csaba Hoch " LastChange: 8 Dec 2007 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " A bunch of useful B keywords syn keyword bStatement MACHINE MODEL SEES OPERATIONS INCLUDES DEFINITIONS CONSTRAINTS CONSTANTS VARIABLES CONCRETE_CONSTANTS CONCRETE_VARIABLES ABSTRACT_CONSTANTS ABSTRACT_VARIABLES HIDDEN_CONSTANTS HIDDEN_VARIABLES ASSERT ASSERTIONS EXTENDS IMPLEMENTATION REFINEMENT IMPORTS USES INITIALISATION INVARIANT PROMOTES PROPERTIES REFINES SETS VALUES VARIANT VISIBLE_CONSTANTS VISIBLE_VARIABLES THEORY XLS THEOREMS LOCAL_OPERATIONS syn keyword bLabel CASE IN EITHER OR CHOICE DO OF syn keyword bConditional IF ELSE SELECT ELSIF THEN WHEN syn keyword bRepeat WHILE FOR syn keyword bOps bool card conc closure closure1 dom first fnc front not or id inter iseq iseq1 iterate last max min mod perm pred prj1 prj2 ran rel rev seq seq1 size skip succ tail union syn keyword bKeywords LET VAR BE IN BEGIN END POW POW1 FIN FIN1 PRE SIGMA STRING UNION IS ANY WHERE syn keyword bBoolean TRUE FALSE bfalse btrue syn keyword bConstant PI MAXINT MININT User_Pass PatchProver PatchProverH0 PatchProverB0 FLAT ARI DED SUB RES syn keyword bGuard binhyp band bnot bguard bsearch bflat bfresh bguardi bget bgethyp barith bgetresult bresult bgoal bmatch bmodr bnewv bnum btest bpattern bprintf bwritef bsubfrm bvrb blvar bcall bappend bclose syn keyword bLogic or not syn match bLogic "\(!\|#\|%\|&\|+->>\|+->\|-->>\|->>\|-->\|->\|/:\|/<:\|/<<:\|/=\|/\\\|/|\\\|::\|:\|;:\|<+\|<->\|<--\|<-\|<:\|<<:\|<<|\|<=>\|<|\|==\|=>\|>+>>\|>->\|>+>\|||\||->\)" syn match bNothing /:=/ syn keyword cTodo contained TODO FIXME XXX " String and Character constants " Highlight special characters (those which have a backslash) differently syn match bSpecial contained "\\[0-7][0-7][0-7]\=\|\\." syn region bString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=bSpecial syn match bCharacter "'[^\\]'" syn match bSpecialCharacter "'\\.'" syn match bSpecialCharacter "'\\[0-7][0-7]'" syn match bSpecialCharacter "'\\[0-7][0-7][0-7]'" "catch errors caused by wrong parenthesis syn region bParen transparent start='(' end=')' contains=ALLBUT,bParenError,bIncluded,bSpecial,bTodo,bUserLabel,bBitField syn match bParenError ")" syn match bInParen contained "[{}]" "integer number, or floating point number without a dot and with "f". syn case ignore syn match bNumber "\<[0-9]\+\>" "syn match bIdentifier "\<[a-z_][a-z0-9_]*\>" syn case match syn region bComment start="/\*" end="\*/" contains=bTodo syn match bComment "//.*" contains=bTodo syntax match bCommentError "\*/" syn keyword bType INT INTEGER BOOL NAT NATURAL NAT1 NATURAL1 syn region bPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=bComment,bString,bCharacter,bNumber,bCommentError syn region bIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match bIncluded contained "<[^>]*>" syn match bInclude "^\s*#\s*include\>\s*["<]" contains=bIncluded syn region bDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,bPreCondit,bIncluded,bInclude,bDefine,bInParen syn region bPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,bPreCondit,bIncluded,bInclude,bDefine,bInParen syn sync ccomment bComment minlines=10 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later hi def link bLabel Label hi def link bUserLabel Label hi def link bConditional Conditional hi def link bRepeat Repeat hi def link bLogic Special hi def link bCharacter Character hi def link bSpecialCharacter bSpecial hi def link bNumber Number hi def link bFloat Float hi def link bOctalError bError hi def link bParenError bError " hi def link bInParen bError hi def link bCommentError bError hi def link bBoolean Identifier hi def link bConstant Identifier hi def link bGuard Identifier hi def link bOperator Operator hi def link bKeywords Operator hi def link bOps Identifier hi def link bStructure Structure hi def link bStorageClass StorageClass hi def link bInclude Include hi def link bPreProc PreProc hi def link bDefine Macro hi def link bIncluded bString hi def link bError Error hi def link bStatement Statement hi def link bPreCondit PreCondit hi def link bType Type hi def link bCommentError bError hi def link bCommentString bString hi def link bComment2String bString hi def link bCommentSkip bComment hi def link bString String hi def link bComment Comment hi def link bSpecial SpecialChar hi def link bTodo Todo "hi link bIdentifier Identifier let b:current_syntax = "b" " vim: ts=8 PK&]jQ1vim80/syntax/art.vimnu[" Vim syntax file " Language: ART-IM and ART*Enterprise " Maintainer: Dorai Sitaram " URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html " Last Change: 2011 Dec 28 by Thilo Six if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore syn keyword artspform => and assert bind syn keyword artspform declare def-art-fun deffacts defglobal defrule defschema do syn keyword artspform else for if in$ not or syn keyword artspform progn retract salience schema test then while syn match artvariable "?[^ \t";()|&~]\+" syn match artglobalvar "?\*[^ \t";()|&~]\+\*" syn match artinstance "![^ \t";()|&~]\+" syn match delimiter "[()|&~]" syn region string start=/"/ skip=/\\[\\"]/ end=/"/ syn match number "\<[-+]\=\([0-9]\+\(\.[0-9]*\)\=\|\.[0-9]\+\)\>" syn match comment ";.*$" syn match comment "#+:\=ignore" nextgroup=artignore skipwhite skipnl syn region artignore start="(" end=")" contained contains=artignore,comment syn region artignore start=/"/ skip=/\\[\\"]/ end=/"/ contained hi def link artinstance type hi def link artglobalvar preproc hi def link artignore comment hi def link artspform statement hi def link artvariable function let b:current_syntax = "art" let &cpo = s:cpo_save unlet s:cpo_save PK&] vim80/syntax/st.vimnu[" Vim syntax file " Language: Smalltalk " Maintainer: Arndt Hesse " Last Change: 2012 Feb 12 by Thilo Six " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " some Smalltalk keywords and standard methods syn keyword stKeyword super self class true false new not syn keyword stKeyword notNil isNil inspect out nil syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" syn match stMethod "\:" " the block of local variables of a method syn region stLocalVariables start="^[ \t]*|" end="|" " the Smalltalk comment syn region stComment start="\"" end="\"" " the Smalltalk strings and single characters syn region stString start='\'' skip="''" end='\'' syn match stCharacter "$." syn case ignore " the symols prefixed by a '#' syn match stSymbol "\(#\<[a-z_][a-z0-9_]*\>\)" syn match stSymbol "\(#'[^']*'\)" " the variables in a statement block for loops syn match stBlockVariable "\(:[ \t]*\<[a-z_][a-z0-9_]*\>[ \t]*\)\+|" contained " some representations of numbers syn match stNumber "\<\d\+\(u\=l\=\|lu\|f\)\>" syn match stFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>" syn match stFloat "\<\d\+e[-+]\=\d\+[fl]\=\>" syn case match " a try to higlight paren mismatches syn region stParen transparent start='(' end=')' contains=ALLBUT,stParenError syn match stParenError ")" syn region stBlock transparent start='\[' end='\]' contains=ALLBUT,stBlockError syn match stBlockError "\]" syn region stSet transparent start='{' end='}' contains=ALLBUT,stSetError syn match stSetError "}" hi link stParenError stError hi link stSetError stError hi link stBlockError stError " synchronization for syntax analysis syn sync minlines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link stKeyword Statement hi def link stMethod Statement hi def link stComment Comment hi def link stCharacter Constant hi def link stString Constant hi def link stSymbol Special hi def link stNumber Type hi def link stFloat Type hi def link stError Error hi def link stLocalVariables Identifier hi def link stBlockVariable Identifier let b:current_syntax = "st" let &cpo = s:cpo_save unlet s:cpo_save PK&];r  vim80/syntax/tmux.vimnu[" Language: tmux(1) configuration file " Version: 2.3 (git-14dc2ac) " URL: https://github.com/ericpruitt/tmux.vim/ " Maintainer: Eric Pruitt " License: 2-Clause BSD (http://opensource.org/licenses/BSD-2-Clause) if exists("b:current_syntax") finish endif " Explicitly change compatiblity options to Vim's defaults because this file " uses line continuations. let s:original_cpo = &cpo set cpo&vim let b:current_syntax = "tmux" setlocal iskeyword+=- syntax case match syn keyword tmuxAction none any current other syn keyword tmuxBoolean off on syn keyword tmuxTodo FIXME NOTE TODO XXX contained syn match tmuxColour /\ 231 && s:i < 235)) ? 15 : "none" exec "syn match tmuxColour" . s:i . " /\\/ display" \ " | highlight tmuxColour" . s:i . " ctermfg=" . s:i . " ctermbg=" . s:bg endfor syn keyword tmuxOptions \ buffer-limit command-alias default-terminal escape-time exit-unattached \ focus-events history-file message-limit set-clipboard terminal-overrides \ assume-paste-time base-index bell-action bell-on-alert default-command \ default-shell destroy-unattached detach-on-destroy \ display-panes-active-colour display-panes-colour display-panes-time \ display-time history-limit key-table lock-after-time lock-command \ message-attr message-bg message-command-attr message-command-bg \ message-command-fg message-command-style message-fg message-style mouse \ prefix prefix2 renumber-windows repeat-time set-titles set-titles-string \ status status-attr status-bg status-fg status-interval status-justify \ status-keys status-left status-left-attr status-left-bg status-left-fg \ status-left-length status-left-style status-position status-right \ status-right-attr status-right-bg status-right-fg status-right-length \ status-right-style status-style update-environment visual-activity \ visual-bell visual-silence word-separators aggressive-resize allow-rename \ alternate-screen automatic-rename automatic-rename-format \ clock-mode-colour clock-mode-style force-height force-width \ main-pane-height main-pane-width mode-attr mode-bg mode-fg mode-keys \ mode-style monitor-activity monitor-silence other-pane-height \ other-pane-width pane-active-border-bg pane-active-border-fg \ pane-active-border-style pane-base-index pane-border-bg pane-border-fg \ pane-border-format pane-border-status pane-border-style remain-on-exit \ synchronize-panes window-active-style window-style \ window-status-activity-attr window-status-activity-bg \ window-status-activity-fg window-status-activity-style window-status-attr \ window-status-bell-attr window-status-bell-bg window-status-bell-fg \ window-status-bell-style window-status-bg window-status-current-attr \ window-status-current-bg window-status-current-fg \ window-status-current-format window-status-current-style window-status-fg \ window-status-format window-status-last-attr window-status-last-bg \ window-status-last-fg window-status-last-style window-status-separator \ window-status-style wrap-search xterm-keys syn keyword tmuxCommands \ attach-session attach bind-key bind break-pane breakp capture-pane \ capturep clear-history clearhist choose-buffer choose-client choose-tree \ choose-session choose-window command-prompt confirm-before confirm \ copy-mode clock-mode detach-client detach suspend-client suspendc \ display-message display display-panes displayp find-window findw if-shell \ if join-pane joinp move-pane movep kill-pane killp kill-server \ start-server start kill-session kill-window killw unlink-window unlinkw \ list-buffers lsb list-clients lsc list-keys lsk list-commands lscm \ list-panes lsp list-sessions ls list-windows lsw load-buffer loadb \ lock-server lock lock-session locks lock-client lockc move-window movew \ link-window linkw new-session new has-session has new-window neww \ paste-buffer pasteb pipe-pane pipep refresh-client refresh rename-session \ rename rename-window renamew resize-pane resizep respawn-pane respawnp \ respawn-window respawnw rotate-window rotatew run-shell run save-buffer \ saveb show-buffer showb select-layout selectl next-layout nextl \ previous-layout prevl select-pane selectp last-pane lastp select-window \ selectw next-window next previous-window prev last-window last send-keys \ send send-prefix set-buffer setb delete-buffer deleteb set-environment \ setenv set-hook show-hooks set-option set set-window-option setw \ show-environment showenv show-messages showmsgs show-options show \ show-window-options showw source-file source split-window splitw swap-pane \ swapp swap-window swapw switch-client switchc unbind-key unbind wait-for \ wait let &cpo = s:original_cpo unlet! s:original_cpo s:bg s:i PK&]`vim80/syntax/po.vimnu[" Vim syntax file " Language: po (gettext) " Maintainer: Dwayne Bailey " Last Change: 2015 Jun 07 " Contributors: Dwayne Bailey (Most advanced syntax highlighting) " Leonardo Fontenelle (Spell checking) " Nam SungHyun (Original maintainer) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:keepcpo= &cpo set cpo&vim syn sync minlines=10 " Identifiers syn match poStatementMsgCTxt "^msgctxt" syn match poStatementMsgidplural "^msgid_plural" contained syn match poPluralCaseN "[0-9]" contained syn match poStatementMsgstr "^msgstr\(\[[0-9]\]\)" contains=poPluralCaseN " Simple HTML and XML highlighting syn match poHtml "<\_[^<>]\+>" contains=poHtmlTranslatables,poLineBreak syn match poHtmlNot +"<[^<]\+>"+ms=s+1,me=e-1 syn region poHtmlTranslatables start=+\(abbr\|alt\|content\|summary\|standby\|title\)=\\"+ms=e-1 end=+\\"+ contained contains=@Spell syn match poLineBreak +"\n"+ contained " Translation blocks syn region poMsgCTxt matchgroup=poStatementMsgCTxt start=+^msgctxt "+rs=e-1 matchgroup=poStringCTxt end=+^msgid "+me=s-1 contains=poStringCTxt syn region poMsgID matchgroup=poStatementMsgid start=+^msgid "+rs=e-1 matchgroup=poStringID end=+^msgstr\(\|\[[\]0\[]\]\) "+me=s-1 contains=poStringID,poStatementMsgidplural,poStatementMsgid syn region poMsgSTR matchgroup=poStatementMsgstr start=+^msgstr\(\|\[[\]0\[]\]\) "+rs=e-1 matchgroup=poStringSTR end=+\n\n+me=s-1 contains=poStringSTR,poStatementMsgstr syn region poStringCTxt start=+"+ skip=+\\\\\|\\"+ end=+"+ syn region poStringID start=+"+ skip=+\\\\\|\\"+ end=+"+ contained \ contains=poSpecial,poFormat,poCommentKDE,poPluralKDE,poKDEdesktopFile,poHtml,poAcceleratorId,poHtmlNot,poVariable syn region poStringSTR start=+"+ skip=+\\\\\|\\"+ end=+"+ contained \ contains=@Spell,poSpecial,poFormat,poHeaderItem,poCommentKDEError,poHeaderUndefined,poPluralKDEError,poMsguniqError,poKDEdesktopFile,poHtml,poAcceleratorStr,poHtmlNot,poVariable " Header and Copyright syn match poHeaderItem "\(Project-Id-Version\|Report-Msgid-Bugs-To\|POT-Creation-Date\|PO-Revision-Date\|Last-Translator\|Language-Team\|Language\|MIME-Version\|Content-Type\|Content-Transfer-Encoding\|Plural-Forms\|X-Generator\): " contained syn match poHeaderUndefined "\(PACKAGE VERSION\|YEAR-MO-DA HO:MI+ZONE\|FULL NAME \|LANGUAGE \|CHARSET\|ENCODING\|INTEGER\|EXPRESSION\)" contained syn match poCopyrightUnset "SOME DESCRIPTIVE TITLE\|FIRST AUTHOR , YEAR\|Copyright (C) YEAR Free Software Foundation, Inc\|YEAR THE PACKAGE\'S COPYRIGHT HOLDER\|PACKAGE" contained " Translation comment block including: translator comment, automatic coments, flags and locations syn match poComment "^#.*$" syn keyword poFlagFuzzy fuzzy contained syn match poCommentTranslator "^# .*$" contains=poCopyrightUnset syn match poCommentAutomatic "^#\..*$" syn match poCommentSources "^#:.*$" syn match poCommentFlags "^#,.*$" contains=poFlagFuzzy syn match poDiffOld '\(^#| "[^{]*+}\|{+[^}]*+}\|{+[^}]*\|"$\)' contained syn match poDiffNew '\(^#| "[^{]*-}\|{-[^}]*-}\|{-[^}]*\|"$\)' contained syn match poCommentDiff "^#|.*$" contains=poDiffOld,poDiffNew " Translations (also includes header fields as they appear in a translation msgstr) syn region poCommentKDE start=+"_: +ms=s+1 end="\\n" end="\"\n^msgstr"me=s-1 contained syn region poCommentKDEError start=+"\(\|\s\+\)_:+ms=s+1 end="\\n" end=+"\n\n+me=s-1 contained syn match poPluralKDE +"_n: +ms=s+1 contained syn region poPluralKDEError start=+"\(\|\s\+\)_n:+ms=s+1 end="\"\n\n"me=s-1 contained syn match poSpecial contained "\\\(x\x\+\|\o\{1,3}\|.\|$\)" syn match poFormat "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlL]\|ll\)\=\([diuoxXfeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained syn match poFormat "%%" contained " msguniq and msgcat conflicts syn region poMsguniqError matchgroup=poMsguniqErrorMarkers start="#-#-#-#-#" end='#\("\n"\|\)-\("\n"\|\)#\("\n"\|\)-\("\n"\|\)#\("\n"\|\)-\("\n"\|\)#\("\n"\|\)-\("\n"\|\)#\("\n"\|\)\\n' contained " Obsolete messages syn match poObsolete "^#\~.*$" " KDE Name= handling syn match poKDEdesktopFile "\"\(Name\|Comment\|GenericName\|Description\|Keywords\|About\)="ms=s+1,me=e-1 " Accelerator keys - this messes up if the preceding or following char is a multibyte unicode char syn match poAcceleratorId contained "[^&_~][&_~]\(\a\|\d\)[^:]"ms=s+1,me=e-1 syn match poAcceleratorStr contained "[^&_~][&_~]\(\a\|\d\)[^:]"ms=s+1,me=e-1 contains=@Spell " Variables simple syn match poVariable contained "%\d" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link poCommentSources PreProc hi def link poComment Comment hi def link poCommentAutomatic Comment hi def link poCommentTranslator Comment hi def link poCommentFlags Special hi def link poCommentDiff Comment hi def link poCopyrightUnset Todo hi def link poFlagFuzzy Todo hi def link poDiffOld Todo hi def link poDiffNew Special hi def link poObsolete Comment hi def link poStatementMsgid Statement hi def link poStatementMsgstr Statement hi def link poStatementMsgidplural Statement hi def link poStatementMsgCTxt Statement hi def link poPluralCaseN Constant hi def link poStringCTxt Comment hi def link poStringID String hi def link poStringSTR String hi def link poCommentKDE Comment hi def link poCommentKDEError Error hi def link poPluralKDE Comment hi def link poPluralKDEError Error hi def link poHeaderItem Identifier hi def link poHeaderUndefined Todo hi def link poKDEdesktopFile Identifier hi def link poHtml Identifier hi def link poHtmlNot String hi def link poHtmlTranslatables String hi def link poLineBreak String hi def link poFormat poSpecial hi def link poSpecial Special hi def link poAcceleratorId Special hi def link poAcceleratorStr Special hi def link poVariable Special hi def link poMsguniqError Special hi def link poMsguniqErrorMarkers Comment let b:current_syntax = "po" let &cpo = s:keepcpo unlet s:keepcpo " vim:set ts=8 sts=2 sw=2 noet: PK&]b((vim80/syntax/lilo.vimnu[" Vim syntax file " Language: lilo configuration (lilo.conf) " Maintainer: Niels Horn " Previous Maintainer: David Necas (Yeti) " Last Change: 2010-02-03 " Setup " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif setlocal iskeyword=@,48-57,.,-,_ syn case ignore " Base constructs syn match liloError "\S\+" syn match liloComment "#.*$" syn match liloEnviron "\$\w\+" contained syn match liloEnviron "\${[^}]\+}" contained syn match liloDecNumber "\d\+" contained syn match liloHexNumber "0[xX]\x\+" contained syn match liloDecNumberP "\d\+p\=" contained syn match liloSpecial contained "\\\(\"\|\\\|$\)" syn region liloString start=+"+ skip=+\\\\\|\\"+ end=+"+ contained contains=liloSpecial,liloEnviron syn match liloLabel :[^ "]\+: contained contains=liloSpecial,liloEnviron syn region liloPath start=+[$/]+ skip=+\\\\\|\\ \|\\$"+ end=+ \|$+ contained contains=liloSpecial,liloEnviron syn match liloDecNumberList "\(\d\|,\)\+" contained contains=liloDecNumber syn match liloDecNumberPList "\(\d\|[,p]\)\+" contained contains=liloDecNumberP,liloDecNumber syn region liloAnything start=+[^[:space:]#]+ skip=+\\\\\|\\ \|\\$+ end=+ \|$+ contained contains=liloSpecial,liloEnviron,liloString " Path syn keyword liloOption backup bitmap boot disktab force-backup keytable map message nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty syn keyword liloKernelOpt initrd root nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty syn keyword liloImageOpt path loader table nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty syn keyword liloDiskOpt partition nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty " Other syn keyword liloOption menu-scheme raid-extra-boot serial install nextgroup=liloEqAnything,liloEqAnythingComment,liloError skipwhite skipempty syn keyword liloOption bios-passes-dl nextgroup=liloEqAnything,liloEqAnythingComment,liloError skipwhite skipempty syn keyword liloOption default label alias wmdefault nextgroup=liloEqLabelString,liloEqLabelStringComment,liloError skipwhite skipempty syn keyword liloKernelOpt ramdisk nextgroup=liloEqAnything,liloEqAnythingComment,liloError skipwhite skipempty syn keyword liloImageOpt password range nextgroup=liloEqAnything,liloEqAnythingComment,liloError skipwhite skipempty syn keyword liloDiskOpt set type nextgroup=liloEqAnything,liloEqAnythingComment,liloError skipwhite skipempty " Symbolic syn keyword liloKernelOpt vga nextgroup=liloEqVga,liloEqVgaComment,liloError skipwhite skipempty " Number syn keyword liloOption delay timeout verbose nextgroup=liloEqDecNumber,liloEqDecNumberComment,liloError skipwhite skipempty syn keyword liloDiskOpt sectors heads cylinders start nextgroup=liloEqDecNumber,liloEqDecNumberComment,liloError skipwhite skipempty " String syn keyword liloOption menu-title nextgroup=liloEqString,liloEqStringComment,liloError skipwhite skipempty syn keyword liloKernelOpt append addappend nextgroup=liloEqString,liloEqStringComment,liloError skipwhite skipempty syn keyword liloImageOpt fallback literal nextgroup=liloEqString,liloEqStringComment,liloError skipwhite skipempty " Hex number syn keyword liloImageOpt map-drive to boot-as nextgroup=liloEqHexNumber,liloEqHexNumberComment,liloError skipwhite skipempty syn keyword liloDiskOpt bios normal hidden nextgroup=liloEqNumber,liloEqNumberComment,liloError skipwhite skipempty " Number list syn keyword liloOption bmp-colors nextgroup=liloEqNumberList,liloEqNumberListComment,liloError skipwhite skipempty " Number list, some of the numbers followed by p syn keyword liloOption bmp-table bmp-timer nextgroup=liloEqDecNumberPList,liloEqDecNumberPListComment,liloError skipwhite skipempty " Flag syn keyword liloOption compact fix-table geometric ignore-table lba32 linear mandatory nowarn prompt syn keyword liloOption bmp-retain el-torito-bootable-CD large-memory suppress-boot-time-BIOS-data syn keyword liloKernelOpt read-only read-write syn keyword liloImageOpt bypass lock mandatory optional restricted single-key unsafe syn keyword liloImageOpt master-boot wmwarn wmdisable syn keyword liloDiskOpt change activate deactivate inaccessible reset " Image syn keyword liloImage image other nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty syn keyword liloDisk disk nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty syn keyword liloChRules change-rules " Vga keywords syn keyword liloVgaKeyword ask ext extended normal contained " Comment followed by equal sign and ... syn match liloEqPathComment "#.*$" contained nextgroup=liloEqPath,liloEqPathComment,liloError skipwhite skipempty syn match liloEqVgaComment "#.*$" contained nextgroup=liloEqVga,liloEqVgaComment,liloError skipwhite skipempty syn match liloEqNumberComment "#.*$" contained nextgroup=liloEqNumber,liloEqNumberComment,liloError skipwhite skipempty syn match liloEqDecNumberComment "#.*$" contained nextgroup=liloEqDecNumber,liloEqDecNumberComment,liloError skipwhite skipempty syn match liloEqHexNumberComment "#.*$" contained nextgroup=liloEqHexNumber,liloEqHexNumberComment,liloError skipwhite skipempty syn match liloEqStringComment "#.*$" contained nextgroup=liloEqString,liloEqStringComment,liloError skipwhite skipempty syn match liloEqLabelStringComment "#.*$" contained nextgroup=liloEqLabelString,liloEqLabelStringComment,liloError skipwhite skipempty syn match liloEqNumberListComment "#.*$" contained nextgroup=liloEqNumberList,liloEqNumberListComment,liloError skipwhite skipempty syn match liloEqDecNumberPListComment "#.*$" contained nextgroup=liloEqDecNumberPList,liloEqDecNumberPListComment,liloError skipwhite skipempty syn match liloEqAnythingComment "#.*$" contained nextgroup=liloEqAnything,liloEqAnythingComment,liloError skipwhite skipempty " Equal sign followed by ... syn match liloEqPath "=" contained nextgroup=liloPath,liloPathComment,liloError skipwhite skipempty syn match liloEqVga "=" contained nextgroup=liloVgaKeyword,liloHexNumber,liloDecNumber,liloVgaComment,liloError skipwhite skipempty syn match liloEqNumber "=" contained nextgroup=liloDecNumber,liloHexNumber,liloNumberComment,liloError skipwhite skipempty syn match liloEqDecNumber "=" contained nextgroup=liloDecNumber,liloDecNumberComment,liloError skipwhite skipempty syn match liloEqHexNumber "=" contained nextgroup=liloHexNumber,liloHexNumberComment,liloError skipwhite skipempty syn match liloEqString "=" contained nextgroup=liloString,liloStringComment,liloError skipwhite skipempty syn match liloEqLabelString "=" contained nextgroup=liloString,liloLabel,liloLabelStringComment,liloError skipwhite skipempty syn match liloEqNumberList "=" contained nextgroup=liloDecNumberList,liloDecNumberListComment,liloError skipwhite skipempty syn match liloEqDecNumberPList "=" contained nextgroup=liloDecNumberPList,liloDecNumberPListComment,liloError skipwhite skipempty syn match liloEqAnything "=" contained nextgroup=liloAnything,liloAnythingComment,liloError skipwhite skipempty " Comment followed by ... syn match liloPathComment "#.*$" contained nextgroup=liloPath,liloPathComment,liloError skipwhite skipempty syn match liloVgaComment "#.*$" contained nextgroup=liloVgaKeyword,liloHexNumber,liloVgaComment,liloError skipwhite skipempty syn match liloNumberComment "#.*$" contained nextgroup=liloDecNumber,liloHexNumber,liloNumberComment,liloError skipwhite skipempty syn match liloDecNumberComment "#.*$" contained nextgroup=liloDecNumber,liloDecNumberComment,liloError skipwhite skipempty syn match liloHexNumberComment "#.*$" contained nextgroup=liloHexNumber,liloHexNumberComment,liloError skipwhite skipempty syn match liloStringComment "#.*$" contained nextgroup=liloString,liloStringComment,liloError skipwhite skipempty syn match liloLabelStringComment "#.*$" contained nextgroup=liloString,liloLabel,liloLabelStringComment,liloError skipwhite skipempty syn match liloDecNumberListComment "#.*$" contained nextgroup=liloDecNumberList,liloDecNumberListComment,liloError skipwhite skipempty syn match liloDecNumberPListComment "#.*$" contained nextgroup=liloDecNumberPList,liloDecNumberPListComment,liloError skipwhite skipempty syn match liloAnythingComment "#.*$" contained nextgroup=liloAnything,liloAnythingComment,liloError skipwhite skipempty " Define the default highlighting hi def link liloEqPath liloEquals hi def link liloEqWord liloEquals hi def link liloEqVga liloEquals hi def link liloEqDecNumber liloEquals hi def link liloEqHexNumber liloEquals hi def link liloEqNumber liloEquals hi def link liloEqString liloEquals hi def link liloEqAnything liloEquals hi def link liloEquals Special hi def link liloError Error hi def link liloEqPathComment liloComment hi def link liloEqVgaComment liloComment hi def link liloEqDecNumberComment liloComment hi def link liloEqHexNumberComment liloComment hi def link liloEqStringComment liloComment hi def link liloEqAnythingComment liloComment hi def link liloPathComment liloComment hi def link liloVgaComment liloComment hi def link liloDecNumberComment liloComment hi def link liloHexNumberComment liloComment hi def link liloNumberComment liloComment hi def link liloStringComment liloComment hi def link liloAnythingComment liloComment hi def link liloComment Comment hi def link liloDiskOpt liloOption hi def link liloKernelOpt liloOption hi def link liloImageOpt liloOption hi def link liloOption Keyword hi def link liloDecNumber liloNumber hi def link liloHexNumber liloNumber hi def link liloDecNumberP liloNumber hi def link liloNumber Number hi def link liloString String hi def link liloPath Constant hi def link liloSpecial Special hi def link liloLabel Title hi def link liloDecNumberList Special hi def link liloDecNumberPList Special hi def link liloAnything Normal hi def link liloEnviron Identifier hi def link liloVgaKeyword Identifier hi def link liloImage Type hi def link liloChRules Preproc hi def link liloDisk Preproc let b:current_syntax = "lilo" PK&]:.XXvim80/syntax/chill.vimnu[" Vim syntax file " Language: CHILL " Maintainer: YoungSang Yoon " Last change: 2004 Jan 21 " " first created by image@lgic.co.kr & modified by paris@lgic.co.kr " CHILL (CCITT High Level Programming Language) is used for " developing software of ATM switch at LGIC (LG Information " & Communications LTd.) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " A bunch of useful CHILL keywords syn keyword chillStatement goto GOTO return RETURN returns RETURNS syn keyword chillLabel CASE case ESAC esac syn keyword chillConditional if IF else ELSE elsif ELSIF switch SWITCH THEN then FI fi syn keyword chillLogical NOT not syn keyword chillRepeat while WHILE for FOR do DO od OD TO to syn keyword chillProcess START start STACKSIZE stacksize PRIORITY priority THIS this STOP stop syn keyword chillBlock PROC proc PROCESS process syn keyword chillSignal RECEIVE receive SEND send NONPERSISTENT nonpersistent PERSISTENT peristent SET set EVER ever syn keyword chillTodo contained TODO FIXME XXX " String and Character constants " Highlight special characters (those which have a backslash) differently syn match chillSpecial contained "\\x\x\+\|\\\o\{1,3\}\|\\.\|\\$" syn region chillString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=chillSpecial syn match chillCharacter "'[^\\]'" syn match chillSpecialCharacter "'\\.'" syn match chillSpecialCharacter "'\\\o\{1,3\}'" "when wanted, highlight trailing white space if exists("chill_space_errors") syn match chillSpaceError "\s*$" syn match chillSpaceError " \+\t"me=e-1 endif "catch errors caused by wrong parenthesis syn cluster chillParenGroup contains=chillParenError,chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField syn region chillParen transparent start='(' end=')' contains=ALLBUT,@chillParenGroup syn match chillParenError ")" syn match chillInParen contained "[{}]" "integer number, or floating point number without a dot and with "f". syn case ignore syn match chillNumber "\<\d\+\(u\=l\=\|lu\|f\)\>" "floating point number, with dot, optional exponent syn match chillFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>" "floating point number, starting with a dot, optional exponent syn match chillFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>" "floating point number, without dot, with exponent syn match chillFloat "\<\d\+e[-+]\=\d\+[fl]\=\>" "hex number syn match chillNumber "\<0x\x\+\(u\=l\=\|lu\)\>" "syn match chillIdentifier "\<[a-z_][a-z0-9_]*\>" syn case match " flag an octal number with wrong digits syn match chillOctalError "\<0\o*[89]" if exists("chill_comment_strings") " A comment can contain chillString, chillCharacter and chillNumber. " But a "*/" inside a chillString in a chillComment DOES end the comment! So we " need to use a special type of chillString: chillCommentString, which also ends on " "*/", and sees a "*" at the start of the line as comment again. " Unfortunately this doesn't very well work for // type of comments :-( syntax match chillCommentSkip contained "^\s*\*\($\|\s\+\)" syntax region chillCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=chillSpecial,chillCommentSkip syntax region chillComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=chillSpecial syntax region chillComment start="/\*" end="\*/" contains=chillTodo,chillCommentString,chillCharacter,chillNumber,chillFloat,chillSpaceError syntax match chillComment "//.*" contains=chillTodo,chillComment2String,chillCharacter,chillNumber,chillSpaceError else syn region chillComment start="/\*" end="\*/" contains=chillTodo,chillSpaceError syn match chillComment "//.*" contains=chillTodo,chillSpaceError endif syntax match chillCommentError "\*/" syn keyword chillOperator SIZE size syn keyword chillType dcl DCL int INT char CHAR bool BOOL REF ref LOC loc INSTANCE instance syn keyword chillStructure struct STRUCT enum ENUM newmode NEWMODE synmode SYNMODE "syn keyword chillStorageClass syn keyword chillBlock PROC proc END end syn keyword chillScope GRANT grant SEIZE seize syn keyword chillEDML select SELECT delete DELETE update UPDATE in IN seq SEQ WHERE where INSERT insert include INCLUDE exclude EXCLUDE syn keyword chillBoolConst true TRUE false FALSE syn region chillPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=chillComment,chillString,chillCharacter,chillNumber,chillCommentError,chillSpaceError syn region chillIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match chillIncluded contained "<[^>]*>" syn match chillInclude "^\s*#\s*include\>\s*["<]" contains=chillIncluded "syn match chillLineSkip "\\$" syn cluster chillPreProcGroup contains=chillPreCondit,chillIncluded,chillInclude,chillDefine,chillInParen,chillUserLabel syn region chillDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup syn region chillPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup " Highlight User Labels syn cluster chillMultiGroup contains=chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField syn region chillMulti transparent start='?' end=':' contains=ALLBUT,@chillMultiGroup " Avoid matching foo::bar() in C++ by requiring that the next char is not ':' syn match chillUserCont "^\s*\I\i*\s*:$" contains=chillUserLabel syn match chillUserCont ";\s*\I\i*\s*:$" contains=chillUserLabel syn match chillUserCont "^\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel syn match chillUserCont ";\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel syn match chillUserLabel "\I\i*" contained " Avoid recognizing most bitfields as labels syn match chillBitField "^\s*\I\i*\s*:\s*[1-9]"me=e-1 syn match chillBitField ";\s*\I\i*\s*:\s*[1-9]"me=e-1 syn match chillBracket contained "[<>]" if !exists("chill_minlines") let chill_minlines = 15 endif exec "syn sync ccomment chillComment minlines=" . chill_minlines " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link chillLabel Label hi def link chillUserLabel Label hi def link chillConditional Conditional " hi def link chillConditional term=bold ctermfg=red guifg=red gui=bold hi def link chillRepeat Repeat hi def link chillProcess Repeat hi def link chillSignal Repeat hi def link chillCharacter Character hi def link chillSpecialCharacter chillSpecial hi def link chillNumber Number hi def link chillFloat Float hi def link chillOctalError chillError hi def link chillParenError chillError hi def link chillInParen chillError hi def link chillCommentError chillError hi def link chillSpaceError chillError hi def link chillOperator Operator hi def link chillStructure Structure hi def link chillBlock Operator hi def link chillScope Operator "hi def link chillEDML term=underline ctermfg=DarkRed guifg=Red hi def link chillEDML PreProc "hi def link chillBoolConst term=bold ctermfg=brown guifg=brown hi def link chillBoolConst Constant "hi def link chillLogical term=bold ctermfg=brown guifg=brown hi def link chillLogical Constant hi def link chillStorageClass StorageClass hi def link chillInclude Include hi def link chillPreProc PreProc hi def link chillDefine Macro hi def link chillIncluded chillString hi def link chillError Error hi def link chillStatement Statement hi def link chillPreCondit PreCondit hi def link chillType Type hi def link chillCommentError chillError hi def link chillCommentString chillString hi def link chillComment2String chillString hi def link chillCommentSkip chillComment hi def link chillString String hi def link chillComment Comment " hi def link chillComment term=None ctermfg=lightblue guifg=lightblue hi def link chillSpecial SpecialChar hi def link chillTodo Todo hi def link chillBlock Statement "hi def link chillIdentifier Identifier hi def link chillBracket Delimiter let b:current_syntax = "chill" " vim: ts=8 PK&]eMMvim80/syntax/idl.vimnu[" Vim syntax file " Language: IDL (Interface Description Language) " Created By: Jody Goldberg " Maintainer: Michael Geddes " Last Change: 2012 Jan 11 " This is an experiment. IDL's structure is simple enough to permit a full " grammar based approach to rather than using a few heuristics. The result " is large and somewhat repetative but seems to work. " There are some Microsoft extensions to idl files that are here. Some of " them are disabled by defining idl_no_ms_extensions. " " The more complex of the extensions are disabled by defining idl_no_extensions. " " History: " 2.0: Michael's new version " 2.1: Support for Vim 7 spell (Anduin Withers) " if exists("b:current_syntax") finish endif let s:cpo_save = &cpo try set cpo&vim if exists("idlsyntax_showerror") syn match idlError +\S+ skipwhite skipempty nextgroup=idlError endif syn region idlCppQuote start='\]*>" syn match idlInclude "^[ \t]*#[ \t]*include\>[ \t]*["<]" contains=idlIncluded,idlString syn region idlPreCondit start="^[ \t]*#[ \t]*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=idlComment,idlCommentError syn region idlDefine start="^[ \t]*#[ \t]*\(define\>\|undef\>\)" skip="\\$" end="$" contains=idlLiteral,idlString " Constants syn keyword idlConst const skipempty skipwhite nextgroup=idlBaseType,idlBaseTypeInt " Attribute syn keyword idlROAttr readonly skipempty skipwhite nextgroup=idlAttr syn keyword idlAttr attribute skipempty skipwhite nextgroup=idlBaseTypeInt,idlBaseType " Types syn region idlD4 contained start="<" end=">" skipempty skipwhite nextgroup=idlSimpDecl contains=idlSeqType,idlBaseTypeInt,idlBaseType,idlLiteral syn keyword idlSeqType contained sequence skipempty skipwhite nextgroup=idlD4 syn keyword idlBaseType contained float double char boolean octet any skipempty skipwhite nextgroup=idlSimpDecl syn keyword idlBaseTypeInt contained short long skipempty skipwhite nextgroup=idlSimpDecl syn keyword idlBaseType contained unsigned skipempty skipwhite nextgroup=idlBaseTypeInt syn region idlD1 contained start="<" end=">" skipempty skipwhite nextgroup=idlSimpDecl contains=idlString,idlLiteral syn keyword idlBaseType contained string skipempty skipwhite nextgroup=idlD1,idlSimpDecl syn match idlBaseType contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlSimpDecl " Modules syn region idlModuleContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=idlUnion,idlStruct,idlEnum,idlInterface,idlComment,idlTypedef,idlConst,idlException,idlModule syn match idlModuleName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlModuleContent,idlError,idlSemiColon syn keyword idlModule module skipempty skipwhite nextgroup=idlModuleName " Interfaces syn cluster idlCommentable contains=idlComment syn cluster idlContentCluster contains=idlUnion,idlStruct,idlEnum,idlROAttr,idlAttr,idlOp,idlOneWayOp,idlException,idlConst,idlTypedef,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlInterfaceSections syn region idlInterfaceContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable syn match idlInheritFrom2 contained "," skipempty skipwhite nextgroup=idlInheritFrom syn match idlInheritFrom contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlInheritFrom2,idlInterfaceContent syn match idlInherit contained ":" skipempty skipwhite nextgroup=idlInheritFrom syn match idlInterfaceName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlInterfaceContent,idlInherit,idlError,idlSemiColon syn keyword idlInterface interface dispinterface skipempty skipwhite nextgroup=idlInterfaceName syn keyword idlInterfaceSections contained properties methods skipempty skipwhite nextgroup=idlSectionColon,idlError syn match idlSectionColon contained ":" syn match idlLibraryName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlLibraryContent,idlError,idlSemiColon syn keyword idlLibrary library skipempty skipwhite nextgroup=idlLibraryName syn region idlLibraryContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlCommentable,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlImportlib,idlCoclass,idlTypedef,idlInterface syn keyword idlImportlib contained importlib skipempty skipwhite nextgroup=idlStringArg syn region idlStringArg contained start="(" end=")" contains=idlString nextgroup=idlError,idlSemiColon,idlErrorBrace,idlErrorSquareBracket syn keyword idlCoclass coclass contained skipempty skipwhite nextgroup=idlCoclassName syn match idlCoclassName "[a-zA-Z0-9_]\+" contained skipempty skipwhite nextgroup=idlCoclassDefinition,idlError,idlSemiColon syn region idlCoclassDefinition contained start="{" end="}" contains=idlCoclassAttributes,idlInterface,idlErrorBracket,idlErrorSquareBracket skipempty skipwhite nextgroup=idlError,idlSemiColon syn region idlCoclassAttributes contained start=+\[+ end=+]+ skipempty skipwhite nextgroup=idlInterface contains=idlErrorBracket,idlErrorBrace,idlCoclassAttribute syn keyword idlCoclassAttribute contained default source "syn keyword idlInterface interface skipempty skipwhite nextgroup=idlInterfaceStubName syn match idlImportString +"\f\+"+ skipempty skipwhite nextgroup=idlError,idlSemiColon syn keyword idlImport import skipempty skipwhite nextgroup=idlImportString syn region idlAttributes start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace,idlComment syn keyword idlAttribute contained propput propget propputref id helpstring object uuid pointer_default if !exists('idl_no_ms_extensions') syn keyword idlAttribute contained nonextensible dual version aggregatable restricted hidden noncreatable oleautomation endif syn region idlAttributeParam contained start="(" end=")" contains=idlString,idlUuid,idlLiteral,idlErrorBrace,idlErrorSquareBracket " skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral syn match idlErrorBrace contained "}" syn match idlErrorBracket contained ")" syn match idlErrorSquareBracket contained "\]" syn match idlUuid contained +[0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}+ " Raises syn keyword idlRaises contained raises skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon " Context syn keyword idlContext contained context skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon " Operation syn match idlParmList contained "," skipempty skipwhite nextgroup=idlOpParms syn region idlArraySize contained start="\[" end="\]" skipempty skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral syn match idlParmName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlParmList,idlArraySize syn keyword idlParmInt contained short long skipempty skipwhite nextgroup=idlParmName syn keyword idlParmType contained unsigned skipempty skipwhite nextgroup=idlParmInt syn region idlD3 contained start="<" end=">" skipempty skipwhite nextgroup=idlParmName contains=idlString,idlLiteral syn keyword idlParmType contained string skipempty skipwhite nextgroup=idlD3,idlParmName syn keyword idlParmType contained void float double char boolean octet any skipempty skipwhite nextgroup=idlParmName syn match idlParmType contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlParmName syn keyword idlOpParms contained in out inout skipempty skipwhite nextgroup=idlParmType if !exists('idl_no_ms_extensions') syn keyword idlOpParms contained retval optional skipempty skipwhite nextgroup=idlParmType syn match idlOpParms contained +\<\(iid_is\|defaultvalue\)\s*([^)]*)+ skipempty skipwhite nextgroup=idlParamType syn keyword idlVariantType contained BSTR VARIANT VARIANT_BOOL long short unsigned double CURRENCY DATE syn region idlSafeArray contained matchgroup=idlVariantType start=+SAFEARRAY(\s*+ end=+)+ contains=idlVariantType endif syn region idlOpContents contained start="(" end=")" skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon contains=idlOpParms,idlSafeArray,idlVariantType,@idlCommentable syn match idlOpName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlOpContents syn keyword idlOpInt contained short long skipempty skipwhite nextgroup=idlOpName syn region idlD2 contained start="<" end=">" skipempty skipwhite nextgroup=idlOpName contains=idlString,idlLiteral syn keyword idlOp contained unsigned skipempty skipwhite nextgroup=idlOpInt syn keyword idlOp contained string skipempty skipwhite nextgroup=idlD2,idlOpName syn keyword idlOp contained void float double char boolean octet any skipempty skipwhite nextgroup=idlOpName syn match idlOp contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlOpName syn keyword idlOp contained void skipempty skipwhite nextgroup=idlOpName syn keyword idlOneWayOp contained oneway skipempty skipwhite nextgroup=idOp " Enum syn region idlEnumContents contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlId,idlAttributes,@idlCommentable syn match idlEnumName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlEnumContents syn keyword idlEnum enum skipempty skipwhite nextgroup=idlEnumName,idlEnumContents " Typedef syn keyword idlTypedef typedef skipempty skipwhite nextgroup=idlTypedefOtherTypeQualifier,idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError if !exists('idl_no_extensions') syn keyword idlTypedefOtherTypeQualifier contained struct enum interface nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError skipwhite syn region idlDefAttributes contained start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace skipempty skipwhite nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlError syn keyword idlDefBaseType contained float double char boolean octet any skipempty skipwhite nextgroup=idlTypedefDecl,idlError syn keyword idlDefBaseTypeInt contained short long skipempty skipwhite nextgroup=idlTypedefDecl,idlError syn match idlDefOtherType contained +\<\k\+\>+ skipempty nextgroup=idlTypedefDecl,idlError " syn keyword idlDefSeqType contained sequence skipempty skipwhite nextgroup=idlD4 " Enum typedef syn keyword idlDefEnum contained enum skipempty skipwhite nextgroup=idlDefEnumName,idlDefEnumContents syn match idlDefEnumName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlDefEnumContents,idlTypedefDecl syn region idlDefEnumContents contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlTypedefDecl contains=idlId,idlAttributes syn match idlTypedefDecl contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlError,idlSemiColon endif " Struct syn region idlStructContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlBaseType,idlBaseTypeInt,idlSeqType,@idlCommentable,idlEnum,idlUnion syn match idlStructName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlStructContent syn keyword idlStruct struct skipempty skipwhite nextgroup=idlStructName " Exception syn keyword idlException exception skipempty skipwhite nextgroup=idlStructName " Union syn match idlColon contained ":" skipempty skipwhite nextgroup=idlCase,idlSeqType,idlBaseType,idlBaseTypeInt syn region idlCaseLabel contained start="" skip="::" end=":"me=e-1 skipempty skipwhite nextgroup=idlColon contains=idlLiteral,idlString syn keyword idlCase contained case skipempty skipwhite nextgroup=idlCaseLabel syn keyword idlCase contained default skipempty skipwhite nextgroup=idlColon syn region idlUnionContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlCase syn region idlSwitchType contained start="(" end=")" skipempty skipwhite nextgroup=idlUnionContent syn keyword idlUnionSwitch contained switch skipempty skipwhite nextgroup=idlSwitchType syn match idlUnionName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlUnionSwitch syn keyword idlUnion union skipempty skipwhite nextgroup=idlUnionName if !exists('idl_no_extensions') syn sync match idlInterfaceSync grouphere idlInterfaceContent "\<\(disp\)\=interface\>\s\+\k\+\s*:\s*\k\+\_s*{" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable syn sync maxlines=1000 minlines=100 else syn sync lines=200 endif " syn sync fromstart if !exists("did_idl_syntax_inits") let did_idl_syntax_inits = 1 " The default methods for highlighting. Can be overridden later hi def link idlInclude Include hi def link idlPreProc PreProc hi def link idlPreCondit PreCondit hi def link idlDefine Macro hi def link idlIncluded String hi def link idlString String hi def link idlComment Comment hi def link idlTodo Todo hi def link idlLiteral Number hi def link idlUuid Number hi def link idlType Type hi def link idlVariantType idlType hi def link idlModule Keyword hi def link idlInterface Keyword hi def link idlEnum Keyword hi def link idlStruct Keyword hi def link idlUnion Keyword hi def link idlTypedef Keyword hi def link idlException Keyword hi def link idlTypedefOtherTypeQualifier keyword hi def link idlModuleName Typedef hi def link idlInterfaceName Typedef hi def link idlEnumName Typedef hi def link idlStructName Typedef hi def link idlUnionName Typedef hi def link idlBaseTypeInt idlType hi def link idlBaseType idlType hi def link idlSeqType idlType hi def link idlD1 Paren hi def link idlD2 Paren hi def link idlD3 Paren hi def link idlD4 Paren "hi def link idlArraySize Paren "hi def link idlArraySize1 Paren hi def link idlModuleContent Paren hi def link idlUnionContent Paren hi def link idlStructContent Paren hi def link idlEnumContents Paren hi def link idlInterfaceContent Paren hi def link idlSimpDecl Identifier hi def link idlROAttr StorageClass hi def link idlAttr Keyword hi def link idlConst StorageClass hi def link idlOneWayOp StorageClass hi def link idlOp idlType hi def link idlParmType idlType hi def link idlOpName Function hi def link idlOpParms SpecialComment hi def link idlParmName Identifier hi def link idlInheritFrom Identifier hi def link idlAttribute SpecialComment hi def link idlId Constant "hi def link idlCase Keyword hi def link idlCaseLabel Constant hi def link idlErrorBracket Error hi def link idlErrorBrace Error hi def link idlErrorSquareBracket Error hi def link idlImport Keyword hi def link idlImportString idlString hi def link idlCoclassAttribute StorageClass hi def link idlLibrary Keyword hi def link idlImportlib Keyword hi def link idlCoclass Keyword hi def link idlLibraryName Typedef hi def link idlCoclassName Typedef " hi def link idlLibraryContent guifg=red hi def link idlTypedefDecl Typedef hi def link idlDefEnum Keyword hi def link idlDefv1Enum Keyword hi def link idlDefEnumName Typedef hi def link idlDefEnumContents Paren hi def link idlDefBaseTypeInt idlType hi def link idlDefBaseType idlType hi def link idlDefSeqType idlType hi def link idlInterfaceSections Label if exists("idlsyntax_showerror") if exists("idlsyntax_showerror_soft") hi default idlError guibg=#d0ffd0 else hi def link idlError Error endif endif endif let b:current_syntax = "idl" finally let &cpo = s:cpo_save unlet s:cpo_save endtry " vim: sw=2 et PK&]w#?<?<vim80/syntax/mf.vimnu[" Vim syntax file " Language: METAFONT " Maintainer: Nicola Vitacolonna " Former Maintainers: Andreas Scherer " Last Change: 2016 Oct 1 if exists("b:current_syntax") finish endif syn iskeyword @,_ " METAFONT 'primitives' as defined in chapter 25 of 'The METAFONTbook' " Page 210: 'boolean expressions' syn keyword mfBoolExp and charexists false known not odd or true unknown " Page 210: 'numeric expression' syn keyword mfNumExp ASCII angle cosd directiontime floor hex length syn keyword mfNumExp mexp mlog normaldeviate oct sind sqrt totalweight syn keyword mfNumExp turningnumber uniformdeviate xpart xxpart xypart syn keyword mfNumExp ypart yxpart yypart " Page 211: 'internal quantities' syn keyword mfInternal autorounding boundarychar charcode chardp chardx syn keyword mfInternal chardy charext charht charic charwd day designsize syn keyword mfInternal fillin fontmaking granularity hppp jobname month syn keyword mfInternal pausing proofing showstopping smoothing time syn keyword mfInternal tracingcapsules tracingchoices tracingcommands syn keyword mfInternal tracingedges tracingequations tracingmacros syn keyword mfInternal tracingonline tracingoutput tracingpens syn keyword mfInternal tracingrestores tracingspecs tracingstats syn keyword mfInternal tracingtitles turningcheck vppp warningcheck syn keyword mfInternal xoffset year yoffset " Page 212: 'pair expressions' syn keyword mfPairExp of penoffset point postcontrol precontrol rotated syn keyword mfPairExp scaled shifted slanted transformed xscaled yscaled syn keyword mfPairExp zscaled " Page 213: 'path expressions' syn keyword mfPathExp atleast controls curl cycle makepath reverse syn keyword mfPathExp subpath tension " Page 214: 'pen expressions' syn keyword mfPenExp makepen nullpen pencircle " Page 214: 'picture expressions' syn keyword mfPicExp nullpicture " Page 214: 'string expressions' syn keyword mfStringExp char decimal readstring str substring " Page 217: 'commands and statements' syn keyword mfCommand addto also at batchmode contour cull delimiters syn keyword mfCommand display doublepath dropping dump end errhelp syn keyword mfCommand errmessage errorstopmode everyjob from interim syn keyword mfCommand inwindow keeping let message newinternal syn keyword mfCommand nonstopmode numspecial openwindow outer randomseed syn keyword mfCommand save scrollmode shipout show showdependencies syn keyword mfCommand showstats showtoken showvariable special to withpen syn keyword mfCommand withweight " Page 56: 'types' syn keyword mfType boolean numeric pair path pen picture string syn keyword mfType transform " Page 155: 'grouping' syn keyword mfStatement begingroup endgroup " Page 165: 'definitions' syn keyword mfDefinition def enddef expr primary primarydef secondary syn keyword mfDefinition secondarydef suffix tertiary tertiarydef text syn keyword mfDefinition vardef " Page 169: 'conditions and loops' syn keyword mfCondition else elseif endfor exitif fi for forever syn keyword mfCondition forsuffixes if step until " Other primitives listed in the index syn keyword mfPrimitive charlist endinput expandafter extensible fontdimen syn keyword mfPrimitive headerbyte inner input intersectiontimes kern syn keyword mfPrimitive ligtable quote scantokens skipto " Implicit suffix parameters syn match mfSuffixParam "@#\|#@\|@" " These are just tags, but given their special status, we " highlight them as variables syn keyword mfVariable x y " Keywords defined by plain.mf (defined on pp.262-278) if get(g:, "plain_mf_macros", 1) syn keyword mfDef addto_currentpicture beginchar capsule_def syn keyword mfDef change_width clear_pen_memory clearit clearpen syn keyword mfDef clearxy culldraw cullit cutdraw syn keyword mfDef define_blacker_pixels define_corrected_pixels syn keyword mfDef define_good_x_pixels define_good_y_pixels syn keyword mfDef define_horizontal_corrected_pixels define_pixels syn keyword mfDef define_whole_blacker_pixels define_whole_pixels syn keyword mfDef define_whole_vertical_blacker_pixels syn keyword mfDef define_whole_vertical_pixels downto draw drawdot syn keyword mfDef endchar erase exitunless fill filldraw fix_units syn keyword mfDef flex font_coding_scheme font_extra_space syn keyword mfDef font_identifier font_normal_shrink syn keyword mfDef font_normal_space font_normal_stretch font_quad syn keyword mfDef font_size font_slant font_x_height gfcorners gobble syn keyword mfDef hide imagerules interact italcorr killtext syn keyword mfDef loggingall lowres_fix makebox makegrid maketicks syn keyword mfDef mode_def mode_setup nodisplays notransforms numtok syn keyword mfDef openit penrazor pensquare penstroke pickup syn keyword mfDef proofoffset proofrule range reflectedabout syn keyword mfDef rotatedaround screenchars screenrule screenstrokes syn keyword mfDef shipit showit smode stop superellipse takepower syn keyword mfDef tracingall tracingnone undraw undrawdot unfill syn keyword mfDef unfilldraw upto z syn match mfDef "???" syn keyword mfVardef bot byte ceiling counterclockwise cutoff decr dir syn keyword mfVardef direction directionpoint grayfont hround incr syn keyword mfVardef interpath inverse labelfont labels lft magstep " Note: nodot is not a vardef, it is used as in makelabel.lft.nodot("5",z5) " (METAFONT only) syn keyword mfVardef makelabel max min nodot penlabels penpos syn keyword mfVardef proofrulethickness round rt savepen slantfont solve syn keyword mfVardef tensepath titlefont top unitvector vround whatever syn match mpVardef "\" syn keyword mfPrimaryDef div dotprod gobbled mod syn keyword mfSecondaryDef intersectionpoint syn keyword mfTertiaryDef softjoin thru syn keyword mfNewInternal blacker currentwindow displaying eps epsilon syn keyword mfNewInternal infinity join_radius number_of_modes o_correction syn keyword mfNewInternal pen_bot pen_lft pen_rt pen_top pixels_per_inch syn keyword mfNewInternal screen_cols screen_rows tolerance " Predefined constants syn keyword mfConstant base_name base_version blankpicture ditto down syn keyword mfConstant fullcircle halfcircle identity left lowres origin syn keyword mfConstant penspeck proof quartercircle right rulepen smoke syn keyword mfConstant unitpixel unitsquare up " Other predefined variables syn keyword mfVariable aspect_ratio currentpen extra_beginchar syn keyword mfVariable extra_endchar currentpen_path currentpicture syn keyword mfVariable currenttransform d extra_setup h localfont mag mode syn keyword mfVariable mode_name w " let statements: syn keyword mfnumExp abs syn keyword mfPairExp rotatedabout syn keyword mfCommand bye relax endif " By default, METAFONT loads modes.mf, too if get(g:, "plain_mf_modes", 1) syn keyword mfConstant APSSixMed AgfaFourZeroZero AgfaThreeFourZeroZero syn keyword mfConstant AtariNineFive AtariNineSix AtariSLMEightZeroFour syn keyword mfConstant AtariSMOneTwoFour CItohEightFiveOneZero syn keyword mfConstant CItohThreeOneZero CanonBJCSixZeroZero CanonCX syn keyword mfConstant CanonEX CanonLBPLX CanonLBPTen CanonSX ChelgraphIBX syn keyword mfConstant CompugraphicEightSixZeroZero syn keyword mfConstant CompugraphicNineSixZeroZero DD DEClarge DECsmall syn keyword mfConstant DataDiscNew EightThree EpsonAction syn keyword mfConstant EpsonLQFiveZeroZeroLo EpsonLQFiveZeroZeroMed syn keyword mfConstant EpsonMXFX EpsonSQEightSevenZero EpsonStylusPro syn keyword mfConstant EpsonStylusProHigh EpsonStylusProLow syn keyword mfConstant EpsonStylusProMed FourFour GThreefax HPDeskJet syn keyword mfConstant HPLaserJetIIISi IBMFourTwoFiveZero IBMFourTwoOneSix syn keyword mfConstant IBMFourTwoThreeZero IBMFourZeroOneNine syn keyword mfConstant IBMFourZeroThreeNine IBMFourZeroTwoNine syn keyword mfConstant IBMProPrinter IBMSixOneFiveFour IBMSixSixSevenZero syn keyword mfConstant IBMThreeEightOneTwo IBMThreeEightTwoZero syn keyword mfConstant IBMThreeOneNineThree IBMThreeOneSevenNine syn keyword mfConstant IBMUlfHolleberg LASevenFive LNOthreR LNOthree syn keyword mfConstant LNZeroOne LNZeroThree LPSFourZero LPSTwoZero syn keyword mfConstant LexmarkFourZeroThreeNine LexmarkOptraR syn keyword mfConstant LexmarkOptraS LinotypeLThreeThreeZero syn keyword mfConstant LinotypeOneZeroZero LinotypeOneZeroZeroLo syn keyword mfConstant LinotypeThreeZeroZeroHi MacTrueSize NeXTprinter syn keyword mfConstant NeXTscreen NecTwoZeroOne Newgen NineOne syn keyword mfConstant OCESixSevenFiveZeroPS OneTwoZero OneZeroZero syn keyword mfConstant PrintwareSevenTwoZeroIQ Prism QMSOneSevenTwoFive syn keyword mfConstant QMSOneSevenZeroZero QMSTwoFourTwoFive RicohA syn keyword mfConstant RicohFortyEighty RicohFourZeroEightZero RicohLP syn keyword mfConstant SparcPrinter StarNLOneZero VAXstation VTSix syn keyword mfConstant VarityperFiveZeroSixZeroW syn keyword mfConstant VarityperFourThreeZeroZeroHi syn keyword mfConstant VarityperFourThreeZeroZeroLo syn keyword mfConstant VarityperFourTwoZeroZero VarityperSixZeroZero syn keyword mfConstant XeroxDocutech XeroxEightSevenNineZero syn keyword mfConstant XeroxFourZeroFiveZero XeroxNineSevenZeroZero syn keyword mfConstant XeroxPhaserSixTwoZeroZeroDP XeroxThreeSevenZeroZero syn keyword mfConstant Xerox_world agfafzz agfatfzz amiga aps apssixhi syn keyword mfConstant aselect atariezf atarinf atarins atariotf bitgraph syn keyword mfConstant bjtenex bjtzzex bjtzzl bjtzzs boise canonbjc syn keyword mfConstant canonex canonlbp cg cgl cgnszz citohtoz corona crs syn keyword mfConstant cthreeten cx datadisc declarge decsmall deskjet syn keyword mfConstant docutech dover dp dpdfezzz eighthre elvira epscszz syn keyword mfConstant epsdraft epsdrft epsdrftl epsfast epsfastl epshi syn keyword mfConstant epslo epsmed epsmedl epson epsonact epsonfx epsonl syn keyword mfConstant epsonlo epsonlol epsonlq epsonsq epstylus epstylwr syn keyword mfConstant epstyplo epstypmd epstypml epstypro epswlo epswlol syn keyword mfConstant esphi fourfour gpx gtfax gtfaxhi gtfaxl gtfaxlo syn keyword mfConstant gtfaxlol help hifax highfax hplaser hprugged ibm_a syn keyword mfConstant ibmd ibmega ibmegal ibmfzon ibmfztn ibmpp ibmppl syn keyword mfConstant ibmsoff ibmteot ibmtetz ibmtont ibmtosn ibmtosnl syn keyword mfConstant ibmvga ibx imagen imagewriter itoh itohl itohtoz syn keyword mfConstant itohtozl iw jetiiisi kyocera laserjet laserjetfive syn keyword mfConstant laserjetfivemp laserjetfour laserjetfourthousand syn keyword mfConstant laserjetfourzerozerozero laserjethi laserjetlo syn keyword mfConstant laserjettwoonezerozero syn keyword mfConstant laserjettwoonezerozerofastres lasermaster syn keyword mfConstant laserwriter lasf lexmarkr lexmarks lexmarku syn keyword mfConstant linohalf linohi linolo linolttz linoone linosuper syn keyword mfConstant linothree linothreelo linotzzh ljfive ljfivemp syn keyword mfConstant ljfour ljfzzz ljfzzzfr ljlo ljtozz ljtozzfr lmaster syn keyword mfConstant lnotr lnzo lps lpstz lqhires lqlores lqmed lqmedl syn keyword mfConstant lqmedres lview lviewl lwpro macmag mactrue modes_mf syn keyword mfConstant ncd nec nechi neclm nectzo newdd newddl nexthi syn keyword mfConstant nextscreen nextscrn nineone nullmode ocessfz syn keyword mfConstant okidata okidatal okifourten okifte okihi onetz syn keyword mfConstant onezz pcprevw pcscreen phaser phaserfs phasertf syn keyword mfConstant phasertfl phasertl pixpt printware prntware syn keyword mfConstant proprinter qms qmsesz qmsostf qmsoszz qmstftf ricoh syn keyword mfConstant ricoha ricohlp ricohsp sherpa sparcptr starnlt syn keyword mfConstant starnltl styletwo stylewr stylewri stylewriter sun syn keyword mfConstant supre swtwo toshiba ultre varityper vs vtftzz syn keyword mfConstant vtftzzhi vtftzzlo vtfzszw vtszz xpstzz xpstzzl syn keyword mfConstant xrxesnz xrxfzfz xrxnszz xrxtszz syn keyword mfDef BCPL_string coding_scheme font_face_byte syn keyword mfDef font_family landscape syn keyword mfDef mode_extra_info mode_help mode_param syn keyword mfNewInternal blacker_min endif " Some other basic macro names, e.g., from cmbase, logo, etc. if get(g:, "other_mf_macros", 1) syn keyword mfDef beginlogochar syn keyword mfDef font_setup syn keyword mfPrimitive generate endif " Numeric tokens syn match mfNumeric "[-]\=\d\+" syn match mfNumeric "[-]\=\.\d\+" syn match mfNumeric "[-]\=\d\+\.\d\+" " METAFONT lengths syn match mfLength "\<\(bp\|cc\|cm\|dd\|in\|mm\|pc\|pt\)\>" syn match mfLength "[-]\=\d\+\(bp\|cc\|cm\|dd\|in\|mm\|pc\|pt\)\#\=" syn match mfLength "[-]\=\.\d\+\(bp\|cc\|cm\|dd\|in\|mm\|pc\|pt\)\#\=" syn match mfLength "[-]\=\d\+\.\d\+\(bp\|cc\|cm\|dd\|in\|mm\|pc\|pt\)\#\=" " String constants syn match mfOpenString /"[^"]*/ syn region mfString oneline keepend start=+"+ end=+"+ " Comments: syn keyword mfTodoComment contained TODO FIXME XXX DEBUG NOTE syn match mfComment "%.*$" contains=mfTodoComment,@Spell " synchronizing syn sync maxlines=50 " Define the default highlighting hi def link mfBoolExp Statement hi def link mfNumExp Statement hi def link mfPairExp Statement hi def link mfPathExp Statement hi def link mfPenExp Statement hi def link mfPicExp Statement hi def link mfStringExp Statement hi def link mfInternal Identifier hi def link mfCommand Statement hi def link mfType Type hi def link mfStatement Statement hi def link mfDefinition Statement hi def link mfCondition Conditional hi def link mfPrimitive Statement hi def link mfDef Function hi def link mfVardef mfDef hi def link mfPrimaryDef mfDef hi def link mfSecondaryDef mfDef hi def link mfTertiaryDef mfDef hi def link mfCoord Identifier hi def link mfPoint Identifier hi def link mfNumeric Number hi def link mfLength Number hi def link mfComment Comment hi def link mfString String hi def link mfOpenString Todo hi def link mfSuffixParam Label hi def link mfNewInternal mfInternal hi def link mfVariable Identifier hi def link mfConstant Constant hi def link mfTodoComment Todo let b:current_syntax = "mf" " vim:sw=2 PK&]==vim80/syntax/splint.vimnu[" Vim syntax file " Language: splint (C with lclint/splint Annotations) " Maintainer: Ralf Wildenhues " Splint Home: http://www.splint.org/ " Last Change: $Date: 2004/06/13 20:08:47 $ " $Revision: 1.1 $ " Note: Splint annotated files are not detected by default. " If you want to use this file for highlighting C code, " please make sure splint.vim is sourced instead of c.vim, " for example by putting " /* vim: set filetype=splint : */ " at the end of your code or something like " au! BufRead,BufNewFile *.c setfiletype splint " in your vimrc file or filetype.vim " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Read the C syntax to start with runtime! syntax/c.vim " FIXME: uses and changes several clusters defined in c.vim " so watch for changes there " TODO: make a little more grammar explicit " match flags with hyphen and underscore notation " match flag expanded forms " accept other comment char than @ syn case match " splint annotations (taken from 'splint -help annotations') syn match splintStateAnnot contained "\(pre\|post\):\(only\|shared\|owned\|dependent\|observer\|exposed\|isnull\|notnull\)" syn keyword splintSpecialAnnot contained special syn keyword splintSpecTag contained uses sets defines allocated releases syn keyword splintModifies contained modifies syn keyword splintRequires contained requires ensures syn keyword splintGlobals contained globals syn keyword splintGlobitem contained internalState fileSystem syn keyword splintGlobannot contained undef killed syn keyword splintWarning contained warn syn keyword splintModitem contained internalState fileSystem nothing syn keyword splintReqitem contained MaxSet MaxRead result syn keyword splintIter contained iter yield syn keyword splintConst contained constant syn keyword splintAlt contained alt syn keyword splintType contained abstract concrete mutable immutable refcounted numabstract syn keyword splintGlobalType contained unchecked checkmod checked checkedstrict syn keyword splintMemMgm contained dependent keep killref only owned shared temp syn keyword splintAlias contained unique returned syn keyword splintExposure contained observer exposed syn keyword splintDefState contained out in partial reldef syn keyword splintGlobState contained undef killed syn keyword splintNullState contained null notnull relnull syn keyword splintNullPred contained truenull falsenull nullwhentrue falsewhennull syn keyword splintExit contained exits mayexit trueexit falseexit neverexit syn keyword splintExec contained noreturn maynotreturn noreturnwhentrue noreturnwhenfalse alwaysreturns syn keyword splintSef contained sef syn keyword splintDecl contained unused external syn keyword splintCase contained fallthrough syn keyword splintBreak contained innerbreak loopbreak switchbreak innercontinue syn keyword splintUnreach contained notreached syn keyword splintSpecFunc contained printflike scanflike messagelike " TODO: make these region or match syn keyword splintErrSupp contained i ignore end t syn match splintErrSupp contained "[it]\d\+\>" syn keyword splintTypeAcc contained access noaccess syn keyword splintMacro contained notfunction syn match splintSpecType contained "\(\|unsigned\|signed\)integraltype" " Flags taken from 'splint -help flags full' divided in local and global flags " Local Flags: syn keyword splintFlag contained abstract abstractcompare accessall accessczech accessczechoslovak syn keyword splintFlag contained accessfile accessmodule accessslovak aliasunique allblock syn keyword splintFlag contained allempty allglobs allimponly allmacros alwaysexits syn keyword splintFlag contained annotationerror ansi89limits assignexpose badflag bitwisesigned syn keyword splintFlag contained boolcompare boolfalse boolint boolops booltrue syn keyword splintFlag contained booltype bounds boundscompacterrormessages boundsread boundswrite syn keyword splintFlag contained branchstate bufferoverflow bufferoverflowhigh bugslimit casebreak syn keyword splintFlag contained caseinsensitivefilenames castexpose castfcnptr charindex charint syn keyword splintFlag contained charintliteral charunsignedchar checkedglobalias checkmodglobalias checkpost syn keyword splintFlag contained checkstrictglobalias checkstrictglobs codeimponly commentchar commenterror syn keyword splintFlag contained compdef compdestroy compmempass constmacros constprefix syn keyword splintFlag contained constprefixexclude constuse continuecomment controlnestdepth cppnames syn keyword splintFlag contained csvoverwrite czech czechconsts czechfcns czechmacros syn keyword splintFlag contained czechoslovak czechoslovakconsts czechoslovakfcns czechoslovakmacros czechoslovaktypes syn keyword splintFlag contained czechoslovakvars czechtypes czechvars debugfcnconstraint declundef syn keyword splintFlag contained deepbreak deparrays dependenttrans distinctexternalnames distinctinternalnames syn keyword splintFlag contained duplicatecases duplicatequals elseifcomplete emptyret enumindex syn keyword splintFlag contained enumint enummembers enummemuse enumprefix enumprefixexclude syn keyword splintFlag contained evalorder evalorderuncon exitarg exportany exportconst syn keyword splintFlag contained exportfcn exportheader exportheadervar exportiter exportlocal syn keyword splintFlag contained exportmacro exporttype exportvar exposetrans externalnamecaseinsensitive syn keyword splintFlag contained externalnamelen externalprefix externalprefixexclude fcnderef fcnmacros syn keyword splintFlag contained fcnpost fcnuse fielduse fileextensions filestaticprefix syn keyword splintFlag contained filestaticprefixexclude firstcase fixedformalarray floatdouble forblock syn keyword splintFlag contained forcehints forempty forloopexec formalarray formatcode syn keyword splintFlag contained formatconst formattype forwarddecl freshtrans fullinitblock syn keyword splintFlag contained globalias globalprefix globalprefixexclude globimponly globnoglobs syn keyword splintFlag contained globs globsimpmodsnothing globstate globuse gnuextensions syn keyword splintFlag contained grammar hasyield hints htmlfileformat ifblock syn keyword splintFlag contained ifempty ignorequals ignoresigns immediatetrans impabstract syn keyword splintFlag contained impcheckedglobs impcheckedspecglobs impcheckedstatics impcheckedstrictglobs impcheckedstrictspecglobs syn keyword splintFlag contained impcheckedstrictstatics impcheckmodglobs impcheckmodinternals impcheckmodspecglobs impcheckmodstatics syn keyword splintFlag contained impconj implementationoptional implictconstraint impouts imptype syn keyword splintFlag contained includenest incompletetype incondefs incondefslib indentspaces syn keyword splintFlag contained infloops infloopsuncon initallelements initsize internalglobs syn keyword splintFlag contained internalglobsnoglobs internalnamecaseinsensitive internalnamelen internalnamelookalike iso99limits syn keyword splintFlag contained isoreserved isoreservedinternal iterbalance iterloopexec iterprefix syn keyword splintFlag contained iterprefixexclude iteryield its4low its4moderate its4mostrisky syn keyword splintFlag contained its4risky its4veryrisky keep keeptrans kepttrans syn keyword splintFlag contained legacy libmacros likelyboundsread likelyboundswrite likelybool syn keyword splintFlag contained likelybounds limit linelen lintcomments localprefix syn keyword splintFlag contained localprefixexclude locindentspaces longint longintegral longsignedintegral syn keyword splintFlag contained longunsignedintegral longunsignedunsignedintegral loopexec looploopbreak looploopcontinue syn keyword splintFlag contained loopswitchbreak macroassign macroconstdecl macrodecl macroempty syn keyword splintFlag contained macrofcndecl macromatchname macroparams macroparens macroredef syn keyword splintFlag contained macroreturn macrostmt macrounrecog macrovarprefix macrovarprefixexclude syn keyword splintFlag contained maintype matchanyintegral matchfields mayaliasunique memchecks syn keyword splintFlag contained memimp memtrans misplacedsharequal misscase modfilesys syn keyword splintFlag contained modglobs modglobsnomods modglobsunchecked modinternalstrict modnomods syn keyword splintFlag contained modobserver modobserveruncon mods modsimpnoglobs modstrictglobsnomods syn keyword splintFlag contained moduncon modunconnomods modunspec multithreaded mustdefine syn keyword splintFlag contained mustfree mustfreefresh mustfreeonly mustmod mustnotalias syn keyword splintFlag contained mutrep namechecks needspec nestcomment nestedextern syn keyword splintFlag contained newdecl newreftrans nextlinemacros noaccess nocomments syn keyword splintFlag contained noeffect noeffectuncon noparams nopp noret syn keyword splintFlag contained null nullassign nullderef nullinit nullpass syn keyword splintFlag contained nullptrarith nullret nullstate nullterminated syn keyword splintFlag contained numabstract numabstractcast numabstractindex numabstractlit numabstractprint syn keyword splintFlag contained numenummembers numliteral numstructfields observertrans obviousloopexec syn keyword splintFlag contained oldstyle onlytrans onlyunqglobaltrans orconstraint overload syn keyword splintFlag contained ownedtrans paramimptemp paramuse parenfileformat partial syn keyword splintFlag contained passunknown portability predassign predbool predboolint syn keyword splintFlag contained predboolothers predboolptr preproc protoparammatch protoparamname syn keyword splintFlag contained protoparamprefix protoparamprefixexclude ptrarith ptrcompare ptrnegate syn keyword splintFlag contained quiet readonlystrings readonlytrans realcompare redecl syn keyword splintFlag contained redef redundantconstraints redundantsharequal refcounttrans relaxquals syn keyword splintFlag contained relaxtypes repeatunrecog repexpose retalias retexpose syn keyword splintFlag contained retimponly retval retvalbool retvalint retvalother syn keyword splintFlag contained sefparams sefuncon shadow sharedtrans shiftimplementation syn keyword splintFlag contained shiftnegative shortint showallconjs showcolumn showconstraintlocation syn keyword splintFlag contained showconstraintparens showdeephistory showfunc showloadloc showscan syn keyword splintFlag contained showsourceloc showsummary sizeofformalarray sizeoftype skipisoheaders syn keyword splintFlag contained skipposixheaders slashslashcomment slovak slovakconsts slovakfcns syn keyword splintFlag contained slovakmacros slovaktypes slovakvars specglobimponly specimponly syn keyword splintFlag contained specmacros specretimponly specstructimponly specundecl specundef syn keyword splintFlag contained stackref statemerge statetransfer staticinittrans statictrans syn keyword splintFlag contained strictbranchstate strictdestroy strictops strictusereleased stringliterallen syn keyword splintFlag contained stringliteralnoroom stringliteralnoroomfinalnull stringliteralsmaller stringliteraltoolong structimponly syn keyword splintFlag contained superuser switchloopbreak switchswitchbreak syntax sysdirerrors syn keyword splintFlag contained sysdirexpandmacros sysunrecog tagprefix tagprefixexclude temptrans syn keyword splintFlag contained tmpcomments toctou topuse trytorecover type syn keyword splintFlag contained typeprefix typeprefixexclude typeuse uncheckedglobalias uncheckedmacroprefix syn keyword splintFlag contained uncheckedmacroprefixexclude uniondef unixstandard unqualifiedinittrans unqualifiedtrans syn keyword splintFlag contained unreachable unrecog unrecogcomments unrecogdirective unrecogflagcomments syn keyword splintFlag contained unsignedcompare unusedspecial usedef usereleased usevarargs syn keyword splintFlag contained varuse voidabstract warnflags warnlintcomments warnmissingglobs syn keyword splintFlag contained warnmissingglobsnoglobs warnposixheaders warnrc warnsysfiles warnunixlib syn keyword splintFlag contained warnuse whileblock whileempty whileloopexec zerobool syn keyword splintFlag contained zeroptr " Global Flags: syn keyword splintGlobalFlag contained csv dump errorstream errorstreamstderr errorstreamstdout syn keyword splintGlobalFlag contained expect f help i isolib syn keyword splintGlobalFlag contained larchpath lclexpect lclimportdir lcs lh syn keyword splintGlobalFlag contained load messagestream messagestreamstderr messagestreamstdout mts syn keyword splintGlobalFlag contained neverinclude nof nolib posixlib posixstrictlib syn keyword splintGlobalFlag contained showalluses singleinclude skipsysheaders stats streamoverwrite syn keyword splintGlobalFlag contained strictlib supcounts sysdirs timedist tmpdir syn keyword splintGlobalFlag contained unixlib unixstrictlib warningstream warningstreamstderr warningstreamstdout syn keyword splintGlobalFlag contained whichlib syn match splintFlagExpr contained "[\+\-\=]" nextgroup=splintFlag,splintGlobalFlag " detect missing /*@ and wrong */ syn match splintAnnError "@\*/" syn cluster cCommentGroup add=splintAnnError syn match splintAnnError2 "[^@]\*/"hs=s+1 contained syn region splintAnnotation start="/\*@" end="@\*/" contains=@splintAnnotElem,cType keepend syn match splintShortAnn "/\*@\*/" syn cluster splintAnnotElem contains=splintStateAnnot,splintSpecialAnnot,splintSpecTag,splintModifies,splintRequires,splintGlobals,splintGlobitem,splintGlobannot,splintWarning,splintModitem,splintIter,splintConst,splintAlt,splintType,splintGlobalType,splintMemMgm,splintAlias,splintExposure,splintDefState,splintGlobState,splintNullState,splintNullPred,splintExit,splintExec,splintSef,splintDecl,splintCase,splintBreak,splintUnreach,splintSpecFunc,splintErrSupp,splintTypeAcc,splintMacro,splintSpecType,splintAnnError2,splintFlagExpr syn cluster splintAllStuff contains=@splintAnnotElem,splintFlag,splintGlobalFlag syn cluster cParenGroup add=@splintAllStuff syn cluster cPreProcGroup add=@splintAllStuff syn cluster cMultiGroup add=@splintAllStuff " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link splintShortAnn splintAnnotation hi def link splintAnnotation Comment hi def link splintAnnError splintError hi def link splintAnnError2 splintError hi def link splintFlag SpecialComment hi def link splintGlobalFlag splintError hi def link splintSpecialAnnot splintAnnKey hi def link splintStateAnnot splintAnnKey hi def link splintSpecTag splintAnnKey hi def link splintModifies splintAnnKey hi def link splintRequires splintAnnKey hi def link splintGlobals splintAnnKey hi def link splintGlobitem Constant hi def link splintGlobannot splintAnnKey hi def link splintWarning splintAnnKey hi def link splintModitem Constant hi def link splintIter splintAnnKey hi def link splintConst splintAnnKey hi def link splintAlt splintAnnKey hi def link splintType splintAnnKey hi def link splintGlobalType splintAnnKey hi def link splintMemMgm splintAnnKey hi def link splintAlias splintAnnKey hi def link splintExposure splintAnnKey hi def link splintDefState splintAnnKey hi def link splintGlobState splintAnnKey hi def link splintNullState splintAnnKey hi def link splintNullPred splintAnnKey hi def link splintExit splintAnnKey hi def link splintExec splintAnnKey hi def link splintSef splintAnnKey hi def link splintDecl splintAnnKey hi def link splintCase splintAnnKey hi def link splintBreak splintAnnKey hi def link splintUnreach splintAnnKey hi def link splintSpecFunc splintAnnKey hi def link splintErrSupp splintAnnKey hi def link splintTypeAcc splintAnnKey hi def link splintMacro splintAnnKey hi def link splintSpecType splintAnnKey hi def link splintAnnKey Type hi def link splintError Error let b:current_syntax = "splint" " vim: ts=8 PK&]z F vim80/syntax/chordpro.vimnu[" Vim syntax file " Language: ChordPro (v. 3.6.2) " Maintainer: Niels Bo Andersen " Last Change: 2006 Apr 30 " Remark: Requires VIM version 6.00 or greater " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim setlocal iskeyword+=- syn case ignore syn keyword chordproDirective contained \ start_of_chorus soc end_of_chorus eoc new_song ns no_grid ng grid g \ new_page np new_physical_page npp start_of_tab sot end_of_tab eot \ column_break colb syn keyword chordproDirWithOpt contained \ comment c comment_italic ci comment_box cb title t subtitle st define \ textfont textsize chordfont chordsize columns col syn keyword chordproDefineKeyword contained base-fret frets syn match chordproDirMatch /{\w*}/ contains=chordproDirective contained transparent syn match chordproDirOptMatch /{\w*:/ contains=chordproDirWithOpt contained transparent " Workaround for a bug in VIM 6, which causes incorrect coloring of the first { if version < 700 syn region chordproOptions start=/{\w*:/ end=/}/ contains=chordproDirOptMatch contained transparent syn region chordproOptions start=/{define:/ end=/}/ contains=chordproDirOptMatch, chordproDefineKeyword contained transparent else syn region chordproOptions start=/{\w*:/hs=e+1 end=/}/he=s-1 contains=chordproDirOptMatch contained syn region chordproOptions start=/{define:/hs=e+1 end=/}/he=s-1 contains=chordproDirOptMatch, chordproDefineKeyword contained endif syn region chordproTag start=/{/ end=/}/ contains=chordproDirMatch,chordproOptions oneline syn region chordproChord matchgroup=chordproBracket start=/\[/ end=/]/ oneline syn region chordproTab start=/{start_of_tab}\|{sot}/hs=e+1 end=/{end_of_tab}\|{eot}/he=s-1 contains=chordproTag,chordproComment keepend syn region chordproChorus start=/{start_of_chorus}\|{soc}/hs=e+1 end=/{end_of_chorus}\|{eoc}/he=s-1 contains=chordproTag,chordproChord,chordproComment keepend syn match chordproComment /^#.*/ " Define the default highlighting. hi def link chordproDirective Statement hi def link chordproDirWithOpt Statement hi def link chordproOptions Special hi def link chordproChord Type hi def link chordproTag Constant hi def link chordproTab PreProc hi def link chordproComment Comment hi def link chordproBracket Constant hi def link chordproDefineKeyword Type hi def chordproChorus term=bold cterm=bold gui=bold let b:current_syntax = "chordpro" let &cpo = s:cpo_save unlet s:cpo_save PK&]ivim80/syntax/spice.vimnu[" Vim syntax file " Language: Spice circuit simulator input netlist " Maintainer: Noam Halevy " Last Change: 2012 Jun 01 " (Dominique Pelle added @Spell) " " This is based on sh.vim by Lennart Schultz " but greatly simplified " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " spice syntax is case INsensitive syn case ignore syn keyword spiceTodo contained TODO syn match spiceComment "^ \=\*.*$" contains=@Spell syn match spiceComment "\$.*$" contains=@Spell " Numbers, all with engineering suffixes and optional units "========================================================== "floating point number, with dot, optional exponent syn match spiceNumber "\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=\(meg\=\|[afpnumkg]\)\=" "floating point number, starting with a dot, optional exponent syn match spiceNumber "\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\(meg\=\|[afpnumkg]\)\=" "integer number with optional exponent syn match spiceNumber "\<[0-9]\+\(e[-+]\=[0-9]\+\)\=\(meg\=\|[afpnumkg]\)\=" " Misc "===== syn match spiceWrapLineOperator "\\$" syn match spiceWrapLineOperator "^+" syn match spiceStatement "^ \=\.\I\+" " Matching pairs of parentheses "========================================== syn region spiceParen transparent matchgroup=spiceOperator start="(" end=")" contains=ALLBUT,spiceParenError syn region spiceSinglequote matchgroup=spiceOperator start=+'+ end=+'+ " Errors "======= syn match spiceParenError ")" " Syncs " ===== syn sync minlines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link spiceTodo Todo hi def link spiceWrapLineOperator spiceOperator hi def link spiceSinglequote spiceExpr hi def link spiceExpr Function hi def link spiceParenError Error hi def link spiceStatement Statement hi def link spiceNumber Number hi def link spiceComment Comment hi def link spiceOperator Operator let b:current_syntax = "spice" " insert the following to $VIM/syntax/scripts.vim " to autodetect HSpice netlists and text listing output: " " " Spice netlists and text listings " elseif getline(1) =~ 'spice\>' || getline("$") =~ '^\.end' " so :p:h/spice.vim " vim: ts=8 PK&]dk4ICICvim80/syntax/masm.vimnu[" Vim syntax file " Language: Microsoft Macro Assembler (80x86) " Orig Author: Rob Brady " Maintainer: Wu Yongwei " Last Change: $Date: 2013/11/13 11:49:24 $ " $Revision: 1.48 $ " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore syn match masmIdentifier "[@a-z_$?][@a-z0-9_$?]*" syn match masmLabel "^\s*[@a-z_$?][@a-z0-9_$?]*:"he=e-1 syn match masmDecimal "[-+]\?\d\+[dt]\?" syn match masmBinary "[-+]\?[0-1]\+[by]" "put this before hex or 0bfh dies! syn match masmOctal "[-+]\?[0-7]\+[oq]" syn match masmHexadecimal "[-+]\?[0-9]\x*h" syn match masmFloatRaw "[-+]\?[0-9]\x*r" syn match masmFloat "[-+]\?\d\+\.\(\d*\(E[-+]\?\d\+\)\?\)\?" syn match masmComment ";.*" contains=@Spell syn region masmComment start=+COMMENT\s*\z(\S\)+ end=+\z1.*+ contains=@Spell syn region masmString start=+'+ end=+'+ oneline contains=@Spell syn region masmString start=+"+ end=+"+ oneline contains=@Spell syn region masmTitleArea start=+\" syn match masmOperator "CARRY?" syn match masmOperator "OVERFLOW?" syn match masmOperator "PARITY?" syn match masmOperator "SIGN?" syn match masmOperator "ZERO?" syn keyword masmDirective ALIAS ASSUME CATSTR COMM DB DD DF DOSSEG DQ DT syn keyword masmDirective DW ECHO ELSE ELSEIF ELSEIF1 ELSEIF2 ELSEIFB syn keyword masmDirective ELSEIFDEF ELSEIFDIF ELSEIFDIFI ELSEIFE syn keyword masmDirective ELSEIFIDN ELSEIFIDNI ELSEIFNB ELSEIFNDEF END syn keyword masmDirective ENDIF ENDM ENDP ENDS EQU EVEN EXITM EXTERN syn keyword masmDirective EXTERNDEF EXTRN FOR FORC GOTO GROUP IF IF1 IF2 syn keyword masmDirective IFB IFDEF IFDIF IFDIFI IFE IFIDN IFIDNI IFNB syn keyword masmDirective IFNDEF INCLUDE INCLUDELIB INSTR INVOKE IRP syn keyword masmDirective IRPC LABEL LOCAL MACRO NAME OPTION ORG PAGE syn keyword masmDirective POPCONTEXT PROC PROTO PUBLIC PURGE PUSHCONTEXT syn keyword masmDirective RECORD REPEAT REPT SEGMENT SIZESTR STRUC syn keyword masmDirective STRUCT SUBSTR SUBTITLE SUBTTL TEXTEQU TITLE syn keyword masmDirective TYPEDEF UNION WHILE syn match masmDirective "\.8086\>" syn match masmDirective "\.8087\>" syn match masmDirective "\.NO87\>" syn match masmDirective "\.186\>" syn match masmDirective "\.286\>" syn match masmDirective "\.286C\>" syn match masmDirective "\.286P\>" syn match masmDirective "\.287\>" syn match masmDirective "\.386\>" syn match masmDirective "\.386C\>" syn match masmDirective "\.386P\>" syn match masmDirective "\.387\>" syn match masmDirective "\.486\>" syn match masmDirective "\.486P\>" syn match masmDirective "\.586\>" syn match masmDirective "\.586P\>" syn match masmDirective "\.686\>" syn match masmDirective "\.686P\>" syn match masmDirective "\.K3D\>" syn match masmDirective "\.MMX\>" syn match masmDirective "\.XMM\>" syn match masmDirective "\.ALPHA\>" syn match masmDirective "\.DOSSEG\>" syn match masmDirective "\.SEQ\>" syn match masmDirective "\.CODE\>" syn match masmDirective "\.CONST\>" syn match masmDirective "\.DATA\>" syn match masmDirective "\.DATA?" syn match masmDirective "\.EXIT\>" syn match masmDirective "\.FARDATA\>" syn match masmDirective "\.FARDATA?" syn match masmDirective "\.MODEL\>" syn match masmDirective "\.STACK\>" syn match masmDirective "\.STARTUP\>" syn match masmDirective "\.IF\>" syn match masmDirective "\.ELSE\>" syn match masmDirective "\.ELSEIF\>" syn match masmDirective "\.ENDIF\>" syn match masmDirective "\.REPEAT\>" syn match masmDirective "\.UNTIL\>" syn match masmDirective "\.UNTILCXZ\>" syn match masmDirective "\.WHILE\>" syn match masmDirective "\.ENDW\>" syn match masmDirective "\.BREAK\>" syn match masmDirective "\.CONTINUE\>" syn match masmDirective "\.ERR\>" syn match masmDirective "\.ERR1\>" syn match masmDirective "\.ERR2\>" syn match masmDirective "\.ERRB\>" syn match masmDirective "\.ERRDEF\>" syn match masmDirective "\.ERRDIF\>" syn match masmDirective "\.ERRDIFI\>" syn match masmDirective "\.ERRE\>" syn match masmDirective "\.ERRIDN\>" syn match masmDirective "\.ERRIDNI\>" syn match masmDirective "\.ERRNB\>" syn match masmDirective "\.ERRNDEF\>" syn match masmDirective "\.ERRNZ\>" syn match masmDirective "\.LALL\>" syn match masmDirective "\.SALL\>" syn match masmDirective "\.XALL\>" syn match masmDirective "\.LFCOND\>" syn match masmDirective "\.SFCOND\>" syn match masmDirective "\.TFCOND\>" syn match masmDirective "\.CREF\>" syn match masmDirective "\.NOCREF\>" syn match masmDirective "\.XCREF\>" syn match masmDirective "\.LIST\>" syn match masmDirective "\.NOLIST\>" syn match masmDirective "\.XLIST\>" syn match masmDirective "\.LISTALL\>" syn match masmDirective "\.LISTIF\>" syn match masmDirective "\.NOLISTIF\>" syn match masmDirective "\.LISTMACRO\>" syn match masmDirective "\.NOLISTMACRO\>" syn match masmDirective "\.LISTMACROALL\>" syn match masmDirective "\.FPO\>" syn match masmDirective "\.RADIX\>" syn match masmDirective "\.SAFESEH\>" syn match masmDirective "%OUT\>" syn match masmDirective "ALIGN\>" syn match masmOption "ALIGN([0-9]\+)" syn keyword masmRegister AX BX CX DX SI DI BP SP syn keyword masmRegister CS DS SS ES FS GS syn keyword masmRegister AH BH CH DH AL BL CL DL syn keyword masmRegister EAX EBX ECX EDX ESI EDI EBP ESP syn keyword masmRegister CR0 CR2 CR3 CR4 syn keyword masmRegister DR0 DR1 DR2 DR3 DR6 DR7 syn keyword masmRegister TR3 TR4 TR5 TR6 TR7 syn match masmRegister "ST([0-7])" " x86-64 registers syn keyword masmRegister RAX RBX RCX RDX RSI RDI RBP RSP syn keyword masmRegister R8 R9 R10 R11 R12 R13 R14 R15 syn keyword masmRegister R8D R9D R10D R11D R12D R13D R14D R15D syn keyword masmRegister R8W R9W R10W R11W R12W R13W R14W R15W syn keyword masmRegister R8B R9B R10B R11B R12B R13B R14B R15B " SSE/AVX registers syn match masmRegister "\(X\|Y\)MM[0-9]\>" syn match masmRegister "\(X\|Y\)MM1[0-5]\>" " Instruction prefixes syn keyword masmOpcode LOCK REP REPE REPNE REPNZ REPZ " 8086/8088 opcodes syn keyword masmOpcode AAA AAD AAM AAS ADC ADD AND CALL CBW CLC CLD syn keyword masmOpcode CLI CMC CMP CMPS CMPSB CMPSW CWD DAA DAS DEC syn keyword masmOpcode DIV ESC HLT IDIV IMUL IN INC INT INTO IRET syn keyword masmOpcode JCXZ JMP LAHF LDS LEA LES LODS LODSB LODSW syn keyword masmOpcode LOOP LOOPE LOOPEW LOOPNE LOOPNEW LOOPNZ syn keyword masmOpcode LOOPNZW LOOPW LOOPZ LOOPZW MOV MOVS MOVSB syn keyword masmOpcode MOVSW MUL NEG NOP NOT OR OUT POP POPF PUSH syn keyword masmOpcode PUSHF RCL RCR RET RETF RETN ROL ROR SAHF SAL syn keyword masmOpcode SAR SBB SCAS SCASB SCASW SHL SHR STC STD STI syn keyword masmOpcode STOS STOSB STOSW SUB TEST WAIT XCHG XLAT XLATB syn keyword masmOpcode XOR syn match masmOpcode "J\(P[EO]\|\(N\?\([ABGL]E\?\|[CEOPSZ]\)\)\)\>" " 80186 opcodes syn keyword masmOpcode BOUND ENTER INS INSB INSW LEAVE OUTS OUTSB syn keyword masmOpcode OUTSW POPA PUSHA PUSHW " 80286 opcodes syn keyword masmOpcode ARPL LAR LSL SGDT SIDT SLDT SMSW STR VERR VERW " 80286/80386 privileged opcodes syn keyword masmOpcode CLTS LGDT LIDT LLDT LMSW LTR " 80386 opcodes syn keyword masmOpcode BSF BSR BT BTC BTR BTS CDQ CMPSD CWDE INSD syn keyword masmOpcode IRETD IRETDF IRETF JECXZ LFS LGS LODSD LOOPD syn keyword masmOpcode LOOPED LOOPNED LOOPNZD LOOPZD LSS MOVSD MOVSX syn keyword masmOpcode MOVZX OUTSD POPAD POPFD PUSHAD PUSHD PUSHFD syn keyword masmOpcode SCASD SHLD SHRD STOSD syn match masmOpcode "SET\(P[EO]\|\(N\?\([ABGL]E\?\|[CEOPSZ]\)\)\)\>" " 80486 opcodes syn keyword masmOpcode BSWAP CMPXCHG INVD INVLPG WBINVD XADD " Floating-point opcodes as of 487 syn keyword masmOpFloat F2XM1 FABS FADD FADDP FBLD FBSTP FCHS FCLEX syn keyword masmOpFloat FNCLEX FCOM FCOMP FCOMPP FCOS FDECSTP FDISI syn keyword masmOpFloat FNDISI FDIV FDIVP FDIVR FDIVRP FENI FNENI syn keyword masmOpFloat FFREE FIADD FICOM FICOMP FIDIV FIDIVR FILD syn keyword masmOpFloat FIMUL FINCSTP FINIT FNINIT FIST FISTP FISUB syn keyword masmOpFloat FISUBR FLD FLDCW FLDENV FLDLG2 FLDLN2 FLDL2E syn keyword masmOpFloat FLDL2T FLDPI FLDZ FLD1 FMUL FMULP FNOP FPATAN syn keyword masmOpFloat FPREM FPREM1 FPTAN FRNDINT FRSTOR FSAVE FNSAVE syn keyword masmOpFloat FSCALE FSETPM FSIN FSINCOS FSQRT FST FSTCW syn keyword masmOpFloat FNSTCW FSTENV FNSTENV FSTP FSTSW FNSTSW FSUB syn keyword masmOpFloat FSUBP FSUBR FSUBRP FTST FUCOM FUCOMP FUCOMPP syn keyword masmOpFloat FWAIT FXAM FXCH FXTRACT FYL2X FYL2XP1 " Floating-point opcodes in Pentium and later processors syn keyword masmOpFloat FCMOVE FCMOVNE FCMOVB FCMOVBE FCMOVNB FCMOVNBE syn keyword masmOpFloat FCMOVU FCMOVNU FCOMI FUCOMI FCOMIP FUCOMIP syn keyword masmOpFloat FXSAVE FXRSTOR " MMX opcodes (Pentium w/ MMX, Pentium II, and later) syn keyword masmOpcode MOVD MOVQ PACKSSWB PACKSSDW PACKUSWB syn keyword masmOpcode PUNPCKHBW PUNPCKHWD PUNPCKHDQ syn keyword masmOpcode PUNPCKLBW PUNPCKLWD PUNPCKLDQ syn keyword masmOpcode PADDB PADDW PADDD PADDSB PADDSW PADDUSB PADDUSW syn keyword masmOpcode PSUBB PSUBW PSUBD PSUBSB PSUBSW PSUBUSB PSUBUSW syn keyword masmOpcode PMULHW PMULLW PMADDWD syn keyword masmOpcode PCMPEQB PCMPEQW PCMPEQD PCMPGTB PCMPGTW PCMPGTD syn keyword masmOpcode PAND PANDN POR PXOR syn keyword masmOpcode PSLLW PSLLD PSLLQ PSRLW PSRLD PSRLQ PSRAW PSRAD syn keyword masmOpcode EMMS " SSE opcodes (Pentium III and later) syn keyword masmOpcode MOVAPS MOVUPS MOVHPS MOVHLPS MOVLPS MOVLHPS syn keyword masmOpcode MOVMSKPS MOVSS syn keyword masmOpcode ADDPS ADDSS SUBPS SUBSS MULPS MULSS DIVPS DIVSS syn keyword masmOpcode RCPPS RCPSS SQRTPS SQRTSS RSQRTPS RSQRTSS syn keyword masmOpcode MAXPS MAXSS MINPS MINSS syn keyword masmOpcode CMPPS CMPSS COMISS UCOMISS syn keyword masmOpcode ANDPS ANDNPS ORPS XORPS syn keyword masmOpcode SHUFPS UNPCKHPS UNPCKLPS syn keyword masmOpcode CVTPI2PS CVTSI2SS CVTPS2PI CVTTPS2PI syn keyword masmOpcode CVTSS2SI CVTTSS2SI syn keyword masmOpcode LDMXCSR STMXCSR syn keyword masmOpcode PAVGB PAVGW PEXTRW PINSRW PMAXUB PMAXSW syn keyword masmOpcode PMINUB PMINSW PMOVMSKB PMULHUW PSADBW PSHUFW syn keyword masmOpcode MASKMOVQ MOVNTQ MOVNTPS SFENCE syn keyword masmOpcode PREFETCHT0 PREFETCHT1 PREFETCHT2 PREFETCHNTA " SSE2 opcodes (Pentium 4 and later) syn keyword masmOpcode MOVAPD MOVUPD MOVHPD MOVLPD MOVMSKPD MOVSD syn keyword masmOpcode ADDPD ADDSD SUBPD SUBSD MULPD MULSD DIVPD DIVSD syn keyword masmOpcode SQRTPD SQRTSD MAXPD MAXSD MINPD MINSD syn keyword masmOpcode ANDPD ANDNPD ORPD XORPD syn keyword masmOpcode CMPPD CMPSD COMISD UCOMISD syn keyword masmOpcode SHUFPD UNPCKHPD UNPCKLPD syn keyword masmOpcode CVTPD2PI CVTTPD2PI CVTPI2PD CVTPD2DQ syn keyword masmOpcode CVTTPD2DQ CVTDQ2PD CVTPS2PD CVTPD2PS syn keyword masmOpcode CVTSS2SD CVTSD2SS CVTSD2SI CVTTSD2SI CVTSI2SD syn keyword masmOpcode CVTDQ2PS CVTPS2DQ CVTTPS2DQ syn keyword masmOpcode MOVDQA MOVDQU MOVQ2DQ MOVDQ2Q PMULUDQ syn keyword masmOpcode PADDQ PSUBQ PSHUFLW PSHUFHW PSHUFD syn keyword masmOpcode PSLLDQ PSRLDQ PUNPCKHQDQ PUNPCKLQDQ syn keyword masmOpcode CLFLUSH LFENCE MFENCE PAUSE MASKMOVDQU syn keyword masmOpcode MOVNTPD MOVNTDQ MOVNTI " SSE3 opcodes (Pentium 4 w/ Hyper-Threading and later) syn keyword masmOpcode FISTTP LDDQU ADDSUBPS ADDSUBPD syn keyword masmOpcode HADDPS HSUBPS HADDPD HSUBPD syn keyword masmOpcode MOVSHDUP MOVSLDUP MOVDDUP MONITOR MWAIT " SSSE3 opcodes (Core and later) syn keyword masmOpcode PSIGNB PSIGNW PSIGND PABSB PABSW PABSD syn keyword masmOpcode PALIGNR PSHUFB PMULHRSW PMADDUBSW syn keyword masmOpcode PHSUBW PHSUBD PHSUBSW PHADDW PHADDD PHADDSW " SSE 4.1 opcodes (Penryn and later) syn keyword masmOpcode MPSADBW PHMINPOSUW PMULDQ PMULLD DPPS DPPD syn keyword masmOpcode BLENDPS BLENDPD BLENDVPS BLENDVPD syn keyword masmOpcode PBLENDVB PBLENDW syn keyword masmOpcode PMINSB PMAXSB PMINSD PMAXSD syn keyword masmOpcode PMINUW PMAXUW PMINUD PMAXUD syn keyword masmOpcode ROUNDPS ROUNDSS ROUNDPD ROUNDSD syn keyword masmOpcode INSERTPS PINSRB PINSRD PINSRQ syn keyword masmOpcode EXTRACTPS PEXTRB PEXTRD PEXTRQ syn keyword masmOpcode PMOVSXBW PMOVZXBW PMOVSXBD PMOVZXBD syn keyword masmOpcode PMOVSXBQ PMOVZXBQ PMOVSXWD PMOVZXWD syn keyword masmOpcode PMOVSXWQ PMOVZXWQ PMOVSXDQ PMOVZXDQ syn keyword masmOpcode PTEST PCMPEQQ PACKUSDW MOVNTDQA " SSE 4.2 opcodes (Nehalem and later) syn keyword masmOpcode PCMPESTRI PCMPESTRM PCMPISTRI PCMPISTRM PCMPGTQ syn keyword masmOpcode CRC32 POPCNT LZCNT " AES-NI (Westmere (2010) and later) syn keyword masmOpcode AESENC AESENCLAST AESDEC AESDECLAST syn keyword masmOpcode AESKEYGENASSIST AESIMC PCLMULQDQ " AVX (Sandy Bridge (2011) and later) syn keyword masmOpcode VBROADCASTSS VBROADCASTSD VBROADCASTF128 syn keyword masmOpcode VINSERTF128 VEXTRACTF128 VMASKMOVPS VMASKMOVPD syn keyword masmOpcode VPERMILPS VPERMILPD VPERM2F128 syn keyword masmOpcode VZEROALL VZEROUPPER " Other opcodes in Pentium and later processors syn keyword masmOpcode CMPXCHG8B CPUID UD2 syn keyword masmOpcode RSM RDMSR WRMSR RDPMC RDTSC SYSENTER SYSEXIT syn match masmOpcode "CMOV\(P[EO]\|\(N\?\([ABGL]E\?\|[CEOPSZ]\)\)\)\>" " The default highlighting hi def link masmLabel PreProc hi def link masmComment Comment hi def link masmDirective Statement hi def link masmType Type hi def link masmOperator Type hi def link masmOption Special hi def link masmRegister Special hi def link masmString String hi def link masmText String hi def link masmTitle Title hi def link masmOpcode Statement hi def link masmOpFloat Statement hi def link masmHexadecimal Number hi def link masmDecimal Number hi def link masmOctal Number hi def link masmBinary Number hi def link masmFloatRaw Number hi def link masmFloat Number hi def link masmIdentifier Identifier syntax sync minlines=50 let b:current_syntax = "masm" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]llvim80/syntax/ave.vimnu[" Vim syntax file " Copyright by Jan-Oliver Wagner " Language: avenue " Maintainer: Jan-Oliver Wagner " Last change: 2001 May 10 " Avenue is the ArcView built-in language. ArcView is " a desktop GIS by ESRI. Though it is a built-in language " and a built-in editor is provided, the use of VIM increases " development speed. " I use some technologies to automatically load avenue scripts " into ArcView. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Avenue is entirely case-insensitive. syn case ignore " The keywords syn keyword aveStatement if then elseif else end break exit return syn keyword aveStatement for each in continue while " String syn region aveString start=+"+ end=+"+ " Integer number syn match aveNumber "[+-]\=\<[0-9]\+\>" " Operator syn keyword aveOperator or and max min xor mod by " 'not' is a kind of a problem: It's an Operator as well as a method " 'not' is only marked as an Operator if not applied as method syn match aveOperator "[^\.]not[^a-zA-Z]" " Variables syn keyword aveFixVariables av nil self false true nl tab cr tab syn match globalVariables "_[a-zA-Z][a-zA-Z0-9]*" syn match aveVariables "[a-zA-Z][a-zA-Z0-9_]*" syn match aveConst "#[A-Z][A-Z_]+" " Comments syn match aveComment "'.*" " Typical Typos " for C programmers: syn match aveTypos "==" syn match aveTypos "!=" " Define the default highlighting. " Only when an item doesn't have highlighting+yet hi def link aveStatement Statement hi def link aveString String hi def link aveNumber Number hi def link aveFixVariables Special hi def link aveVariables Identifier hi def link globalVariables Special hi def link aveConst Special hi def link aveClassMethods Function hi def link aveOperator Operator hi def link aveComment Comment hi def link aveTypos Error let b:current_syntax = "ave" PK&]ǦTTvim80/syntax/treetop.vimnu[" Vim syntax file " Language: Treetop " Previous Maintainer: Nikolai Weibull " Latest Revision: 2011-03-14 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword treetopTodo \ contained \ TODO \ FIXME \ XXX \ NOTE syn match treetopComment \ '#.*' \ display \ contains=treetopTodo syn include @treetopRuby syntax/ruby.vim unlet b:current_syntax syn keyword treetopKeyword \ require \ end syn region treetopKeyword \ matchgroup=treetopKeyword \ start='\<\%(grammar\|include\|module\)\>\ze\s' \ end='$' \ transparent \ oneline \ keepend \ contains=@treetopRuby syn keyword treetopKeyword \ rule \ nextgroup=treetopRuleName \ skipwhite skipnl syn match treetopGrammarName \ '\u\w*' \ contained syn match treetopRubyModuleName \ '\u\w*' \ contained syn match treetopRuleName \ '\h\w*' \ contained syn region treetopString \ matchgroup=treetopStringDelimiter \ start=+"+ \ end=+"+ syn region treetopString \ matchgroup=treetopStringDelimiter \ start=+'+ \ end=+'+ syn region treetopCharacterClass \ matchgroup=treetopCharacterClassDelimiter \ start=+\[+ \ skip=+\\\]+ \ end=+\]+ syn region treetopRubyBlock \ matchgroup=treetopRubyBlockDelimiter \ start=+{+ \ end=+}+ \ contains=@treetopRuby syn region treetopSemanticPredicate \ matchgroup=treetopSemanticPredicateDelimiter \ start=+[!&]{+ \ end=+}+ \ contains=@treetopRuby syn region treetopSubclassDeclaration \ matchgroup=treetopSubclassDeclarationDelimiter \ start=+<+ \ end=+>+ \ contains=@treetopRuby syn match treetopEllipsis \ +''+ hi def link treetopTodo Todo hi def link treetopComment Comment hi def link treetopKeyword Keyword hi def link treetopGrammarName Constant hi def link treetopRubyModuleName Constant hi def link treetopRuleName Identifier hi def link treetopString String hi def link treetopStringDelimiter treetopString hi def link treetopCharacterClass treetopString hi def link treetopCharacterClassDelimiter treetopCharacterClass hi def link treetopRubyBlockDelimiter PreProc hi def link treetopSemanticPredicateDelimiter PreProc hi def link treetopSubclassDeclarationDelimiter PreProc hi def link treetopEllipsis Special let b:current_syntax = 'treetop' let &cpo = s:cpo_save unlet s:cpo_save PK&]c2c2vim80/syntax/n1ql.vimnu[" Vim syntax file " Language: N1QL / Couchbase Server " Maintainer: Eugene Ciurana " Version: 1.0 " Source: https://github.com/pr3d4t0r/n1ql-vim-syntax " " License: Vim is Charityware. n1ql.vim syntax is Charityware. " (c) Copyright 2017 by Eugene Ciurana / pr3d4t0r. Licensed " under the standard VIM LICENSE - Vim command :help uganda.txt " for details. " " Questions, comments: " https://ciurana.eu/pgp, https://keybase.io/pr3d4t0r " " vim: set fileencoding=utf-8: if exists("b:current_syntax") finish endif syn case ignore syn keyword n1qlSpecial DATASTORES syn keyword n1qlSpecial DUAL syn keyword n1qlSpecial FALSE syn keyword n1qlSpecial INDEXES syn keyword n1qlSpecial KEYSPACES syn keyword n1qlSpecial MISSING syn keyword n1qlSpecial NAMESPACES syn keyword n1qlSpecial NULL syn keyword n1qlSpecial TRUE " " *** keywords *** " syn keyword n1qlKeyword ALL syn keyword n1qlKeyword ANY syn keyword n1qlKeyword ASC syn keyword n1qlKeyword BEGIN syn keyword n1qlKeyword BETWEEN syn keyword n1qlKeyword BREAK syn keyword n1qlKeyword BUCKET syn keyword n1qlKeyword CALL syn keyword n1qlKeyword CASE syn keyword n1qlKeyword CAST syn keyword n1qlKeyword CLUSTER syn keyword n1qlKeyword COLLATE syn keyword n1qlKeyword COLLECTION syn keyword n1qlKeyword CONNECT syn keyword n1qlKeyword CONTINUE syn keyword n1qlKeyword CORRELATE syn keyword n1qlKeyword COVER syn keyword n1qlKeyword DATABASE syn keyword n1qlKeyword DATASET syn keyword n1qlKeyword DATASTORE syn keyword n1qlKeyword DECLARE syn keyword n1qlKeyword DECREMENT syn keyword n1qlKeyword DERIVED syn keyword n1qlKeyword DESC syn keyword n1qlKeyword DESCRIBE syn keyword n1qlKeyword DO syn keyword n1qlKeyword EACH syn keyword n1qlKeyword ELEMENT syn keyword n1qlKeyword ELSE syn keyword n1qlKeyword END syn keyword n1qlKeyword EVERY syn keyword n1qlKeyword EXCLUDE syn keyword n1qlKeyword EXISTS syn keyword n1qlKeyword FETCH syn keyword n1qlKeyword FIRST syn keyword n1qlKeyword FLATTEN syn keyword n1qlKeyword FOR syn keyword n1qlKeyword FORCE syn keyword n1qlKeyword FROM syn keyword n1qlKeyword FUNCTION syn keyword n1qlKeyword GROUP syn keyword n1qlKeyword GSI syn keyword n1qlKeyword HAVING syn keyword n1qlKeyword IF syn keyword n1qlKeyword IGNORE syn keyword n1qlKeyword INCLUDE syn keyword n1qlKeyword INCREMENT syn keyword n1qlKeyword INDEX syn keyword n1qlKeyword INITIAL syn keyword n1qlKeyword INLINE syn keyword n1qlKeyword INNER syn keyword n1qlKeyword INTO syn keyword n1qlKeyword KEY syn keyword n1qlKeyword KEYS syn keyword n1qlKeyword KEYSPACE syn keyword n1qlKeyword KNOWN syn keyword n1qlKeyword LAST syn keyword n1qlKeyword LET syn keyword n1qlKeyword LETTING syn keyword n1qlKeyword LIMIT syn keyword n1qlKeyword LOOP syn keyword n1qlKeyword LSM syn keyword n1qlKeyword MAP syn keyword n1qlKeyword MAPPING syn keyword n1qlKeyword MATCHED syn keyword n1qlKeyword MATERIALIZED syn keyword n1qlKeyword MERGE syn keyword n1qlKeyword NAMESPACE syn keyword n1qlKeyword NEST syn keyword n1qlKeyword OPTION syn keyword n1qlKeyword ORDER syn keyword n1qlKeyword OUTER syn keyword n1qlKeyword OVER syn keyword n1qlKeyword PARSE syn keyword n1qlKeyword PARTITION syn keyword n1qlKeyword PASSWORD syn keyword n1qlKeyword PATH syn keyword n1qlKeyword POOL syn keyword n1qlKeyword PRIMARY syn keyword n1qlKeyword PRIVATE syn keyword n1qlKeyword PRIVILEGE syn keyword n1qlKeyword PROCEDURE syn keyword n1qlKeyword PUBLIC syn keyword n1qlKeyword REALM syn keyword n1qlKeyword REDUCE syn keyword n1qlKeyword RETURN syn keyword n1qlKeyword RETURNING syn keyword n1qlKeyword ROLE syn keyword n1qlKeyword SATISFIES syn keyword n1qlKeyword SCHEMA syn keyword n1qlKeyword SELF syn keyword n1qlKeyword SEMI syn keyword n1qlKeyword SHOW syn keyword n1qlKeyword START syn keyword n1qlKeyword STATISTICS syn keyword n1qlKeyword SYSTEM syn keyword n1qlKeyword THEN syn keyword n1qlKeyword TRANSACTION syn keyword n1qlKeyword TRIGGER syn keyword n1qlKeyword UNDER syn keyword n1qlKeyword UNKNOWN syn keyword n1qlKeyword UNSET syn keyword n1qlKeyword USE syn keyword n1qlKeyword USER syn keyword n1qlKeyword USING syn keyword n1qlKeyword VALIDATE syn keyword n1qlKeyword VALUE syn keyword n1qlKeyword VALUED syn keyword n1qlKeyword VALUES syn keyword n1qlKeyword VIEW syn keyword n1qlKeyword WHEN syn keyword n1qlKeyword WHERE syn keyword n1qlKeyword WHILE syn keyword n1qlKeyword WITHIN syn keyword n1qlKeyword WORK " " *** functions *** " syn keyword n1qlOperator ABS syn keyword n1qlOperator ACOS syn keyword n1qlOperator ARRAY_AGG syn keyword n1qlOperator ARRAY_APPEND syn keyword n1qlOperator ARRAY_AVG syn keyword n1qlOperator ARRAY_CONCAT syn keyword n1qlOperator ARRAY_CONTAINS syn keyword n1qlOperator ARRAY_COUNT syn keyword n1qlOperator ARRAY_DISTINCT syn keyword n1qlOperator ARRAY_FLATTEN syn keyword n1qlOperator ARRAY_IFNULL syn keyword n1qlOperator ARRAY_INSERT syn keyword n1qlOperator ARRAY_INTERSECT syn keyword n1qlOperator ARRAY_LENGTH syn keyword n1qlOperator ARRAY_MAX syn keyword n1qlOperator ARRAY_MIN syn keyword n1qlOperator ARRAY_POSITION syn keyword n1qlOperator ARRAY_PREPEND syn keyword n1qlOperator ARRAY_PUT syn keyword n1qlOperator ARRAY_RANGE syn keyword n1qlOperator ARRAY_REMOVE syn keyword n1qlOperator ARRAY_REPEAT syn keyword n1qlOperator ARRAY_REPLACE syn keyword n1qlOperator ARRAY_REVERSE syn keyword n1qlOperator ARRAY_SORT syn keyword n1qlOperator ARRAY_START syn keyword n1qlOperator ARRAY_SUM syn keyword n1qlOperator ARRAY_SYMDIFF syn keyword n1qlOperator ARRAY_UNION syn keyword n1qlOperator ASIN syn keyword n1qlOperator ATAN syn keyword n1qlOperator ATAN2 syn keyword n1qlOperator AVG syn keyword n1qlOperator BASE64 syn keyword n1qlOperator BASE64_DECODE syn keyword n1qlOperator BASE64_ENCODE syn keyword n1qlOperator CEIL syn keyword n1qlOperator CLOCK_LOCAL syn keyword n1qlOperator CLOCK_STR syn keyword n1qlOperator CLOCK_TZ syn keyword n1qlOperator CLOCK_UTC syn keyword n1qlOperator CLOCL_MILLIS syn keyword n1qlOperator CONTAINS syn keyword n1qlOperator COS syn keyword n1qlOperator COUNT syn keyword n1qlOperator DATE_ADD_MILLIS syn keyword n1qlOperator DATE_ADD_STR syn keyword n1qlOperator DATE_DIFF_MILLIS syn keyword n1qlOperator DATE_DIFF_STR syn keyword n1qlOperator DATE_FORMAT_STR syn keyword n1qlOperator DATE_PART_MILLIS syn keyword n1qlOperator DATE_PART_STR syn keyword n1qlOperator DATE_RANGE_MILLIS syn keyword n1qlOperator DATE_RANGE_STR syn keyword n1qlOperator DATE_TRUC_STR syn keyword n1qlOperator DATE_TRUNC_MILLIS syn keyword n1qlOperator DECODE_JSON syn keyword n1qlOperator DEGREES syn keyword n1qlOperator DURATION_TO_STR syn keyword n1qlOperator E syn keyword n1qlOperator ENCODED_SIZE syn keyword n1qlOperator ENCODE_JSON syn keyword n1qlOperator EXP syn keyword n1qlOperator FLOOR syn keyword n1qlOperator GREATEST syn keyword n1qlOperator IFINF syn keyword n1qlOperator IFMISSING syn keyword n1qlOperator IFMISSINGORNULL syn keyword n1qlOperator IFNAN syn keyword n1qlOperator IFNANORINF syn keyword n1qlOperator IFNULL syn keyword n1qlOperator INITCAP syn keyword n1qlOperator ISARRAY syn keyword n1qlOperator ISATOM syn keyword n1qlOperator ISBOOLEAN syn keyword n1qlOperator ISNUMBER syn keyword n1qlOperator ISOBJECT syn keyword n1qlOperator ISSTRING syn keyword n1qlOperator LEAST syn keyword n1qlOperator LENGTH syn keyword n1qlOperator LN syn keyword n1qlOperator LOG syn keyword n1qlOperator LOWER syn keyword n1qlOperator LTRIM syn keyword n1qlOperator MAX syn keyword n1qlOperator META syn keyword n1qlOperator MILLIS syn keyword n1qlOperator MILLIS_TO_LOCAL syn keyword n1qlOperator MILLIS_TO_STR syn keyword n1qlOperator MILLIS_TO_TZ syn keyword n1qlOperator MILLIS_TO_UTC syn keyword n1qlOperator MILLIS_TO_ZONE_NAME syn keyword n1qlOperator MIN syn keyword n1qlOperator MISSINGIF syn keyword n1qlOperator NANIF syn keyword n1qlOperator NEGINFIF syn keyword n1qlOperator NOW_LOCAL syn keyword n1qlOperator NOW_MILLIS syn keyword n1qlOperator NOW_STR syn keyword n1qlOperator NOW_TZ syn keyword n1qlOperator NOW_UTC syn keyword n1qlOperator NULLIF syn keyword n1qlOperator OBJECT_ADD syn keyword n1qlOperator OBJECT_CONCAT syn keyword n1qlOperator OBJECT_INNER_PAIRS syn keyword n1qlOperator OBJECT_INNER_VALUES syn keyword n1qlOperator OBJECT_LENGTH syn keyword n1qlOperator OBJECT_NAMES syn keyword n1qlOperator OBJECT_PAIRS syn keyword n1qlOperator OBJECT_PUT syn keyword n1qlOperator OBJECT_REMOVE syn keyword n1qlOperator OBJECT_RENAME syn keyword n1qlOperator OBJECT_REPLACE syn keyword n1qlOperator OBJECT_UNWRAP syn keyword n1qlOperator OBJECT_VALUES syn keyword n1qlOperator PI syn keyword n1qlOperator POLY_LENGTH syn keyword n1qlOperator POSINIF syn keyword n1qlOperator POSITION syn keyword n1qlOperator POWER syn keyword n1qlOperator RADIANS syn keyword n1qlOperator RANDOM syn keyword n1qlOperator REGEXP_CONTAINS syn keyword n1qlOperator REGEXP_LIKE syn keyword n1qlOperator REGEXP_POSITION syn keyword n1qlOperator REGEXP_REPLACE syn keyword n1qlOperator REPEAT syn keyword n1qlOperator REPLACE syn keyword n1qlOperator REVERSE syn keyword n1qlOperator ROUND syn keyword n1qlOperator RTRIM syn keyword n1qlOperator SIGN syn keyword n1qlOperator SIN syn keyword n1qlOperator SPLIT syn keyword n1qlOperator SQRT syn keyword n1qlOperator STR_TO_DURATION syn keyword n1qlOperator STR_TO_MILLIS syn keyword n1qlOperator STR_TO_TZ syn keyword n1qlOperator STR_TO_UTC syn keyword n1qlOperator STR_TO_ZONE_NAME syn keyword n1qlOperator SUBSTR syn keyword n1qlOperator SUFFIXES syn keyword n1qlOperator SUM syn keyword n1qlOperator TAN syn keyword n1qlOperator TITLE syn keyword n1qlOperator TOARRAY syn keyword n1qlOperator TOATOM syn keyword n1qlOperator TOBOOLEAN syn keyword n1qlOperator TOKENS syn keyword n1qlOperator TONUMBER syn keyword n1qlOperator TOOBJECT syn keyword n1qlOperator TOSTRING syn keyword n1qlOperator TRIM syn keyword n1qlOperator TRUNC syn keyword n1qlOperator TYPE syn keyword n1qlOperator UPPER syn keyword n1qlOperator UUID syn keyword n1qlOperator WEEKDAY_MILLIS syn keyword n1qlOperator WEEKDAY_STR " " *** operators *** " syn keyword n1qlOperator AND syn keyword n1qlOperator AS syn keyword n1qlOperator BY syn keyword n1qlOperator DISTINCT syn keyword n1qlOperator EXCEPT syn keyword n1qlOperator ILIKE syn keyword n1qlOperator IN syn keyword n1qlOperator INTERSECT syn keyword n1qlOperator IS syn keyword n1qlOperator JOIN syn keyword n1qlOperator LEFT syn keyword n1qlOperator LIKE syn keyword n1qlOperator MINUS syn keyword n1qlOperator NEST syn keyword n1qlOperator NESTING syn keyword n1qlOperator NOT syn keyword n1qlOperator OFFSET syn keyword n1qlOperator ON syn keyword n1qlOperator OR syn keyword n1qlOperator OUT syn keyword n1qlOperator RIGHT syn keyword n1qlOperator SOME syn keyword n1qlOperator TO syn keyword n1qlOperator UNION syn keyword n1qlOperator UNIQUE syn keyword n1qlOperator UNNEST syn keyword n1qlOperator VIA syn keyword n1qlOperator WITH syn keyword n1qlOperator XOR " " *** statements *** " syn keyword n1qlStatement ALTER syn keyword n1qlStatement ANALYZE syn keyword n1qlStatement BUILD syn keyword n1qlStatement COMMIT syn keyword n1qlStatement CREATE syn keyword n1qlStatement DELETE syn keyword n1qlStatement DROP syn keyword n1qlStatement EXECUTE syn keyword n1qlStatement EXPLAIN syn keyword n1qlStatement GRANT syn keyword n1qlStatement INFER syn keyword n1qlStatement INSERT syn keyword n1qlStatement MERGE syn keyword n1qlStatement PREPARE syn keyword n1qlStatement RENAME syn keyword n1qlStatement REVOKE syn keyword n1qlStatement ROLLBACK syn keyword n1qlStatement SELECT syn keyword n1qlStatement SET syn keyword n1qlStatement TRUNCATE syn keyword n1qlStatement UPDATE syn keyword n1qlStatement UPSERT " " *** types *** " syn keyword n1qlType ARRAY syn keyword n1qlType BINARY syn keyword n1qlType BOOLEAN syn keyword n1qlType NUMBER syn keyword n1qlType OBJECT syn keyword n1qlType RAW syn keyword n1qlType STRING " " *** strings and characters *** " syn region n1qlString start=+"+ skip=+\\\\\|\\"+ end=+"+ syn region n1qlString start=+'+ skip=+\\\\\|\\'+ end=+'+ syn region n1qlBucketSpec start=+`+ skip=+\\\\\|\\'+ end=+`+ " " *** numbers *** " syn match n1qlNumber "-\=\<\d*\.\=[0-9_]\>" " " *** comments *** " syn region n1qlComment start="/\*" end="\*/" contains=n1qlTODO syn match n1qlComment "--.*$" contains=n1qlTODO syn sync ccomment n1qlComment " " *** TODO *** " syn keyword n1qlTODO contained TODO FIXME XXX DEBUG NOTE " " *** enable *** " hi def link n1qlBucketSpec Underlined hi def link n1qlComment Comment hi def link n1qlKeyword Macro hi def link n1qlOperator Function hi def link n1qlSpecial Special hi def link n1qlStatement Statement hi def link n1qlString String hi def link n1qlTODO Todo hi def link n1qlType Type let b:current_syntax = "n1ql" PK&]T1T1vim80/syntax/spec.vimnu[" Filename: spec.vim " Purpose: Vim syntax file " Language: SPEC: Build/install scripts for Linux RPM packages " Maintainer: Igor Gnatenko i.gnatenko.brain@gmail.com " Former Maintainer: Donovan Rebbechi elflord@panix.com (until March 2014) " Last Change: Sat Apr 9 15:30 2016 Filip Szymański " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn sync minlines=1000 syn match specSpecialChar contained '[][!$()\\|>^;:{}]' syn match specColon contained ':' syn match specPercent contained '%' syn match specVariables contained '\$\h\w*' contains=specSpecialVariablesNames,specSpecialChar syn match specVariables contained '\${\w*}' contains=specSpecialVariablesNames,specSpecialChar syn match specMacroIdentifier contained '%\h\w*' contains=specMacroNameLocal,specMacroNameOther,specPercent syn match specMacroIdentifier contained '%{\w*}' contains=specMacroNameLocal,specMacroNameOther,specPercent,specSpecialChar syn match specSpecialVariables contained '\$[0-9]\|\${[0-9]}' syn match specCommandOpts contained '\s\(-\w\+\|--\w[a-zA-Z_-]\+\)'ms=s+1 syn match specComment '^\s*#.*$' syn case match "matches with no highlight syn match specNoNumberHilite 'X11\|X11R6\|[a-zA-Z]*\.\d\|[a-zA-Z][-/]\d' syn match specManpageFile '[a-zA-Z]\.1' "Day, Month and most used license acronyms syn keyword specLicense contained GPL LGPL BSD MIT GNU distributable syn keyword specWeekday contained Mon Tue Wed Thu Fri Sat Sun syn keyword specMonth contained Jan Feb Mar Apr Jun Jul Aug Sep Oct Nov Dec syn keyword specMonth contained January February March April May June July August September October November December "#, @, www syn match specNumber '\(^-\=\|[ \t]-\=\|-\)[0-9.-]*[0-9]' syn match specEmail contained "<\=\<[A-Za-z0-9_.-]\+@\([A-Za-z0-9_-]\+\.\)\+[A-Za-z]\+\>>\=" syn match specURL contained '\<\(\(https\{0,1}\|ftp\)://\|\(www[23]\{0,1}\.\|ftp\.\)\)[A-Za-z0-9._/~:,#-]\+\>' syn match specURLMacro contained '\<\(\(https\{0,1}\|ftp\)://\|\(www[23]\{0,1}\.\|ftp\.\)\)[A-Za-z0-9._/~:,#%{}-]\+\>' contains=specMacroIdentifier "TODO take specSpecialVariables out of the cluster for the sh* contains (ALLBUT) "Special system directories syn match specListedFilesPrefix contained '/\(usr\|local\|opt\|X11R6\|X11\)/'me=e-1 syn match specListedFilesBin contained '/s\=bin/'me=e-1 syn match specListedFilesLib contained '/\(lib\|include\)/'me=e-1 syn match specListedFilesDoc contained '/\(man\d*\|doc\|info\)\>' syn match specListedFilesEtc contained '/etc/'me=e-1 syn match specListedFilesShare contained '/share/'me=e-1 syn cluster specListedFiles contains=specListedFilesBin,specListedFilesLib,specListedFilesDoc,specListedFilesEtc,specListedFilesShare,specListedFilesPrefix,specVariables,specSpecialChar "specComands syn match specConfigure contained '\./configure' syn match specTarCommand contained '\' "valid _macro names from /usr/lib/rpm/macros syn keyword specMacroNameLocal contained _arch _binary_payload _bindir _build _build_alias _build_cpu _builddir _build_os _buildshell _buildsubdir _build_vendor _bzip2bin _datadir _dbpath _dbpath_rebuild _defaultdocdir _docdir _excludedocs _exec_prefix _fixgroup _fixowner _fixperms _ftpport _ftpproxy _gpg_path _gzipbin _host _host_alias _host_cpu _host_os _host_vendor _httpport _httpproxy _includedir _infodir _install_langs _install_script_path _instchangelog _langpatt _lib _libdir _libexecdir _localstatedir _mandir _netsharedpath _oldincludedir _os _pgpbin _pgp_path _prefix _preScriptEnvironment _provides _rpmdir _rpmfilename _sbindir _sharedstatedir _signature _sourcedir _source_payload _specdir _srcrpmdir _sysconfdir _target _target_alias _target_cpu _target_os _target_platform _target_vendor _timecheck _tmppath _topdir _usr _usrsrc _var _vendor "------------------------------------------------------------------------------ " here's is all the spec sections definitions: PreAmble, Description, Package, " Scripts, Files and Changelog "One line macros - valid in all ScriptAreas "tip: remember do include new items on specScriptArea's skip section syn region specSectionMacroArea oneline matchgroup=specSectionMacro start='^%\(define\|global\|patch\d*\|setup\|autosetup\|autopatch\|configure\|GNUconfigure\|find_lang\|make_build\|makeinstall\|make_install\|include\)\>' end='$' contains=specCommandOpts,specMacroIdentifier syn region specSectionMacroBracketArea oneline matchgroup=specSectionMacro start='^%{\(configure\|GNUconfigure\|find_lang\|make_build\|makeinstall\|make_install\)}' end='$' contains=specCommandOpts,specMacroIdentifier "%% Files Section %% "TODO %config valid parameters: missingok\|noreplace "TODO %verify valid parameters: \(not\)\= \(md5\|atime\|...\) syn region specFilesArea matchgroup=specSection start='^%[Ff][Ii][Ll][Ee][Ss]\>' skip='%\(attrib\|defattr\|attr\|dir\|config\|docdir\|doc\|lang\|verify\|ghost\|license\)\>' end='^%[a-zA-Z]'me=e-2 contains=specFilesOpts,specFilesDirective,@specListedFiles,specComment,specCommandSpecial,specMacroIdentifier "tip: remember to include new itens in specFilesArea above syn match specFilesDirective contained '%\(attrib\|defattr\|attr\|dir\|config\|docdir\|doc\|lang\|verify\|ghost\|license\)\>' "valid options for certain section headers syn match specDescriptionOpts contained '\s-[ln]\s*\a'ms=s+1,me=e-1 syn match specPackageOpts contained '\s-n\s*\w'ms=s+1,me=e-1 syn match specFilesOpts contained '\s-f\s*\w'ms=s+1,me=e-1 syn case ignore "%% PreAmble Section %% "Copyright and Serial were deprecated by License and Epoch syn region specPreAmbleDeprecated oneline matchgroup=specError start='^\(Copyright\|Serial\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExcludeOS\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier "%% Description Section %% syn region specDescriptionArea matchgroup=specSection start='^%description' end='^%'me=e-1 contains=specDescriptionOpts,specEmail,specURL,specNumber,specMacroIdentifier,specComment "%% Package Section %% syn region specPackageArea matchgroup=specSection start='^%package' end='^%'me=e-1 contains=specPackageOpts,specPreAmble,specComment "%% Scripts Section %% syn region specScriptArea matchgroup=specSection start='^%\(prep\|build\|install\|check\|clean\|pre\|postun\|preun\|post\|posttrans\)\>' skip='^%{\|^%\(define\|global\|patch\d*\|configure\|GNUconfigure\|setup\|find_lang\|makeinstall\|make_install\)\>' end='^%'me=e-1 contains=specSpecialVariables,specVariables,@specCommands,specVariables,shDo,shFor,shCaseEsac,specNoNumberHilite,specCommandOpts,shComment,shIf,specSpecialChar,specMacroIdentifier,specSectionMacroArea,specSectionMacroBracketArea,shOperator,shQuote1,shQuote2 "%% Changelog Section %% syn region specChangelogArea matchgroup=specSection start='^%changelog' end='^%'me=e-1 contains=specEmail,specURL,specWeekday,specMonth,specNumber,specComment,specLicense "------------------------------------------------------------------------------ "here's the shell syntax for all the Script Sections syn case match "sh-like comment stile, only valid in script part syn match shComment contained '#.*$' syn region shQuote1 contained matchgroup=shQuoteDelim start=+'+ skip=+\\'+ end=+'+ contains=specMacroIdentifier syn region shQuote2 contained matchgroup=shQuoteDelim start=+"+ skip=+\\"+ end=+"+ contains=specVariables,specMacroIdentifier syn match shOperator contained '[><|!&;]\|[!=]=' syn region shDo transparent matchgroup=specBlock start="\" end="\" contains=ALLBUT,shFunction,shDoError,shCase,specPreAmble,@specListedFiles syn region specIf matchgroup=specBlock start="%ifosf\|%ifos\|%ifnos\|%ifarch\|%ifnarch\|%else" end='%endif' contains=ALLBUT, specIfError, shCase syn region shIf transparent matchgroup=specBlock start="\" end="\" contains=ALLBUT,shFunction,shIfError,shCase,@specListedFiles syn region shFor matchgroup=specBlock start="\" end="\" contains=ALLBUT,shFunction,shInError,shCase,@specListedFiles syn region shCaseEsac transparent matchgroup=specBlock start="\" matchgroup=NONE end="\"me=s-1 contains=ALLBUT,shFunction,shCaseError,@specListedFiles nextgroup=shCaseEsac syn region shCaseEsac matchgroup=specBlock start="\" end="\" contains=ALLBUT,shFunction,shCaseError,@specListedFilesBin syn region shCase matchgroup=specBlock contained start=")" end=";;" contains=ALLBUT,shFunction,shCaseError,shCase,@specListedFiles syn sync match shDoSync grouphere shDo "\" syn sync match shDoSync groupthere shDo "\" syn sync match shIfSync grouphere shIf "\" syn sync match shIfSync groupthere shIf "\" syn sync match specIfSync grouphere specIf "%ifarch\|%ifos\|%ifnos" syn sync match specIfSync groupthere specIf "%endIf" syn sync match shForSync grouphere shFor "\" syn sync match shForSync groupthere shFor "\" syn sync match shCaseEsacSync grouphere shCaseEsac "\" syn sync match shCaseEsacSync groupthere shCaseEsac "\" " Define the default highlighting. " Only when an item doesn't have highlighting yet "main types color definitions hi def link specSection Structure hi def link specSectionMacro Macro hi def link specWWWlink PreProc hi def link specOpts Operator "yes, it's ugly, but white is sooo cool if &background == "dark" hi def specGlobalMacro ctermfg=white else hi def link specGlobalMacro Identifier endif "sh colors hi def link shComment Comment hi def link shIf Statement hi def link shOperator Special hi def link shQuote1 String hi def link shQuote2 String hi def link shQuoteDelim Statement "spec colors hi def link specBlock Function hi def link specColon Special hi def link specCommand Statement hi def link specCommandOpts specOpts hi def link specCommandSpecial Special hi def link specComment Comment hi def link specConfigure specCommand hi def link specDate String hi def link specDescriptionOpts specOpts hi def link specEmail specWWWlink hi def link specError Error hi def link specFilesDirective specSectionMacro hi def link specFilesOpts specOpts hi def link specLicense String hi def link specMacroNameLocal specGlobalMacro hi def link specMacroNameOther specGlobalMacro hi def link specManpageFile NONE hi def link specMonth specDate hi def link specNoNumberHilite NONE hi def link specNumber Number hi def link specPackageOpts specOpts hi def link specPercent Special hi def link specSpecialChar Special hi def link specSpecialVariables specGlobalMacro hi def link specSpecialVariablesNames specGlobalMacro hi def link specTarCommand specCommand hi def link specURL specWWWlink hi def link specURLMacro specWWWlink hi def link specVariables Identifier hi def link specWeekday specDate hi def link specListedFilesBin Statement hi def link specListedFilesDoc Statement hi def link specListedFilesEtc Statement hi def link specListedFilesLib Statement hi def link specListedFilesPrefix Statement hi def link specListedFilesShare Statement let b:current_syntax = "spec" " vim: ts=8 PK&]vim80/syntax/modconf.vimnu[" Vim syntax file " Language: modules.conf(5) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-10-25 if exists("b:current_syntax") finish endif setlocal iskeyword+=- let s:cpo_save = &cpo set cpo&vim syn keyword modconfTodo FIXME TODO XXX NOTE syn region modconfComment start='#' skip='\\$' end='$' \ contains=modconfTodo,@Spell syn keyword modconfConditional if else elseif endif syn keyword modconfPreProc alias define include keep prune \ post-install post-remove pre-install \ pre-remove persistdir blacklist syn keyword modconfKeyword add above below install options probe probeall \ remove syn keyword modconfIdentifier depfile insmod_opt path generic_stringfile \ pcimapfile isapnpmapfile usbmapfile \ parportmapfile ieee1394mapfile pnpbiosmapfile syn match modconfIdentifier 'path\[[^]]\+\]' hi def link modconfTodo Todo hi def link modconfComment Comment hi def link modconfConditional Conditional hi def link modconfPreProc PreProc hi def link modconfKeyword Keyword hi def link modconfIdentifier Identifier let b:current_syntax = "modconf" let &cpo = s:cpo_save unlet s:cpo_save PK&]9\Iddvim80/syntax/conaryrecipe.vimnu[" Vim syntax file " Language: Conary Recipe " Maintainer: rPath Inc " Updated: 2007-12-08 if exists("b:current_syntax") finish endif runtime! syntax/python.vim syn keyword conarySFunction mainDir addAction addSource addArchive addPatch syn keyword conarySFunction addRedirect addSvnSnapshot addMercurialSnapshot syn keyword conarySFunction addCvsSnapshot addGitSnapshot addBzrSnapshot syn keyword conaryGFunction add addAll addNewGroup addReference createGroup syn keyword conaryGFunction addNewGroup startGroup remove removeComponents syn keyword conaryGFunction replace setByDefault setDefaultGroup syn keyword conaryGFunction setLabelPath addCopy setSearchPath AddAllFlags syn keyword conaryGFunction GroupRecipe GroupReference TroveCacheWrapper syn keyword conaryGFunction TroveCache buildGroups findTrovesForGroups syn keyword conaryGFunction followRedirect processAddAllDirectives syn keyword conaryGFunction processOneAddAllDirective removeDifferences syn keyword conaryGFunction addTrovesToGroup addCopiedComponents syn keyword conaryGFunction findAllWeakTrovesToRemove checkForRedirects syn keyword conaryGFunction addPackagesForComponents getResolveSource syn keyword conaryGFunction resolveGroupDependencies checkGroupDependencies syn keyword conaryGFunction calcSizeAndCheckHashes findSourcesForGroup syn keyword conaryGFunction addPostInstallScript addPostRollbackScript syn keyword conaryGFunction addPostUpdateScript addPreUpdateScript syn keyword conaryGFunction addTrove moveComponents copyComponents syn keyword conaryGFunction removeItemsAlsoInNewGroup removeItemsAlsoInGroup syn keyword conaryGFunction addResolveSource iterReplaceSpecs syn keyword conaryGFunction setCompatibilityClass getLabelPath syn keyword conaryGFunction getResolveTroveSpecs getSearchFlavor syn keyword conaryGFunction getChildGroups getGroupMap syn keyword conaryBFunction Run Automake Configure ManualConfigure syn keyword conaryBFunction Make MakeParallelSubdir MakeInstall syn keyword conaryBFunction MakePathsInstall CompilePython syn keyword conaryBFunction Ldconfig Desktopfile Environment SetModes syn keyword conaryBFunction Install Copy Move Symlink Link Remove Doc syn keyword conaryBFunction Create MakeDirs disableParallelMake syn keyword conaryBFunction ConsoleHelper Replace SGMLCatalogEntry syn keyword conaryBFunction XInetdService XMLCatalogEntry TestSuite syn keyword conaryBFunction PythonSetup CMake Ant JavaCompile ClassPath syn keyword conaryBFunction JavaDoc IncludeLicense MakeFIFO syn keyword conaryPFunction NonBinariesInBindirs FilesInMandir syn keyword conaryPFunction ImproperlyShared CheckSonames CheckDestDir syn keyword conaryPFunction ComponentSpec PackageSpec syn keyword conaryPFunction Config InitScript GconfSchema SharedLibrary syn keyword conaryPFunction ParseManifest MakeDevices DanglingSymlinks syn keyword conaryPFunction AddModes WarnWriteable IgnoredSetuid syn keyword conaryPFunction Ownership ExcludeDirectories syn keyword conaryPFunction BadFilenames BadInterpreterPaths ByDefault syn keyword conaryPFunction ComponentProvides ComponentRequires Flavor syn keyword conaryPFunction EnforceConfigLogBuildRequirements Group syn keyword conaryPFunction EnforceSonameBuildRequirements InitialContents syn keyword conaryPFunction FilesForDirectories LinkCount syn keyword conaryPFunction MakdeDevices NonMultilibComponent ObsoletePaths syn keyword conaryPFunction NonMultilibDirectories NonUTF8Filenames TagSpec syn keyword conaryPFunction Provides RequireChkconfig Requires TagHandler syn keyword conaryPFunction TagDescription Transient User UtilizeGroup syn keyword conaryPFunction WorldWritableExecutables UtilizeUser syn keyword conaryPFunction WarnWritable Strip CheckDesktopFiles syn keyword conaryPFunction FixDirModes LinkType reportMissingBuildRequires syn keyword conaryPFunction reportErrors FixupManpagePaths FixObsoletePaths syn keyword conaryPFunction NonLSBPaths PythonEggs syn keyword conaryPFunction EnforcePythonBuildRequirements syn keyword conaryPFunction EnforceJavaBuildRequirements syn keyword conaryPFunction EnforceCILBuildRequirements syn keyword conaryPFunction EnforcePerlBuildRequirements syn keyword conaryPFunction EnforceFlagBuildRequirements syn keyword conaryPFunction FixupMultilibPaths ExecutableLibraries syn keyword conaryPFunction NormalizeLibrarySymlinks NormalizeCompression syn keyword conaryPFunction NormalizeManPages NormalizeInfoPages syn keyword conaryPFunction NormalizeInitscriptLocation syn keyword conaryPFunction NormalizeInitscriptContents syn keyword conaryPFunction NormalizeAppDefaults NormalizeInterpreterPaths syn keyword conaryPFunction NormalizePamConfig ReadableDocs syn keyword conaryPFunction WorldWriteableExecutables NormalizePkgConfig syn keyword conaryPFunction EtcConfig InstallBucket SupplementalGroup syn keyword conaryPFunction FixBuilddirSymlink RelativeSymlinks " Most destdirPolicy aren't called from recipes, except for these syn keyword conaryPFunction AutoDoc RemoveNonPackageFiles TestSuiteFiles syn keyword conaryPFunction TestSuiteLinks syn match conaryMacro "%(\w\+)[sd]" contained syn match conaryBadMacro "%(\w*)[^sd]" contained " no final marker syn keyword conaryArches contained x86 x86_64 alpha ia64 ppc ppc64 s390 syn keyword conaryArches contained sparc sparc64 syn keyword conarySubArches contained sse2 3dnow 3dnowext cmov i486 i586 syn keyword conarySubArches contained i686 mmx mmxext nx sse sse2 syn keyword conaryBad RPM_BUILD_ROOT EtcConfig InstallBucket subDir syn keyword conaryBad RPM_OPT_FLAGS subdir syn cluster conaryArchFlags contains=conaryArches,conarySubArches syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches syn keyword conaryKeywords name buildRequires version clearBuildReqs syn keyword conaryUseFlag contained pcre tcpwrappers gcj gnat selinux pam syn keyword conaryUseFlag contained bootstrap python perl syn keyword conaryUseFlag contained readline gdbm emacs krb builddocs syn keyword conaryUseFlag contained alternatives tcl tk X gtk gnome qt syn keyword conaryUseFlag contained xfce gd ldap sasl pie desktop ssl kde syn keyword conaryUseFlag contained slang netpbm nptl ipv6 buildtests syn keyword conaryUseFlag contained ntpl xen dom0 domU syn match conaryUse "Use\.[a-z0-9A-Z]\+" contains=conaryUseFlag " strings syn region pythonString matchgroup=Normal start=+[uU]\='+ end=+'+ skip=+\\\\\|\\'+ contains=pythonEscape,conaryMacro,conaryBadMacro syn region pythonString matchgroup=Normal start=+[uU]\="+ end=+"+ skip=+\\\\\|\\"+ contains=pythonEscape,conaryMacro,conaryBadMacro syn region pythonString matchgroup=Normal start=+[uU]\="""+ end=+"""+ contains=pythonEscape,conaryMacro,conaryBadMacro syn region pythonString matchgroup=Normal start=+[uU]\='''+ end=+'''+ contains=pythonEscape,conaryMacro,conaryBadMacro syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'+ end=+'+ skip=+\\\\\|\\'+ contains=conaryMacro,conaryBadMacro syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"+ end=+"+ skip=+\\\\\|\\"+ contains=conaryMacro,conaryBadMacro syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"""+ end=+"""+ contains=conaryMacro,conaryBadMacro syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'''+ end=+'''+ contains=conaryMacro,conaryBadMacro hi def link conaryMacro Special hi def link conaryrecipeFunction Function hi def link conaryError Error hi def link conaryBFunction conaryrecipeFunction hi def link conaryGFunction conaryrecipeFunction hi def link conarySFunction Operator hi def link conaryPFunction Typedef hi def link conaryFlags PreCondit hi def link conaryArches Special hi def link conarySubArches Special hi def link conaryBad conaryError hi def link conaryBadMacro conaryError hi def link conaryKeywords Special hi def link conaryUseFlag Typedef let b:current_syntax = "conaryrecipe" PK&]xz z vim80/syntax/a2ps.vimnu[" Vim syntax file " Language: a2ps(1) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword a2psPreProc Include \ nextgroup=a2psKeywordColon syn keyword a2psMacro UserOption \ nextgroup=a2psKeywordColon syn keyword a2psKeyword LibraryPath AppendLibraryPath PrependLibraryPath \ Options Medium Printer UnknownPrinter \ DefaultPrinter OutputFirstLine \ PageLabelFormat Delegation FileCommand \ nextgroup=a2psKeywordColon syn match a2psKeywordColon contained display ':' syn keyword a2psKeyword Variable nextgroup=a2psVariableColon syn match a2psVariableColon contained display ':' \ nextgroup=a2psVariable skipwhite syn match a2psVariable contained display '[^ \t:(){}]\+' \ contains=a2psVarPrefix syn match a2psVarPrefix contained display \ '\<\%(del\|pro\|ps\|pl\|toc\|user\|\)\ze\.' syn match a2psLineCont display '\\$' syn match a2psSubst display '$\%(-\=.\=\d\+\)\=\h\d\=' syn match a2psSubst display '#[?!]\=\w\d\=' syn match a2psSubst display '#{[^}]\+}' syn region a2psString display oneline start=+'+ end=+'+ \ contains=a2psSubst syn region a2psString display oneline start=+"+ end=+"+ \ contains=a2psSubst syn keyword a2psTodo contained TODO FIXME XXX NOTE syn region a2psComment display oneline start='^\s*#' end='$' \ contains=a2psTodo,@Spell hi def link a2psTodo Todo hi def link a2psComment Comment hi def link a2psPreProc PreProc hi def link a2psMacro Macro hi def link a2psKeyword Keyword hi def link a2psKeywordColon Delimiter hi def link a2psVariableColon Delimiter hi def link a2psVariable Identifier hi def link a2psVarPrefix Type hi def link a2psLineCont Special hi def link a2psSubst PreProc hi def link a2psString String let b:current_syntax = "a2ps" let &cpo = s:cpo_save unlet s:cpo_save PK&]]u7u7vim80/syntax/upstreamrpt.vimnu[" Vim syntax file " Language: Innovation Data Processing upstream.rpt file " Maintainer: Rob Owens " Latest Revision: 2014-03-13 " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif setlocal foldmethod=syntax " Parameters: syn keyword upstreamdat_Parameter ACCEPTPCREMOTE syn keyword upstreamdat_Parameter ACCEPTREMOTE syn keyword upstreamdat_Parameter ACTION syn keyword upstreamdat_Parameter ACTIVATEONENTRY syn keyword upstreamdat_Parameter ARCHIVEBIT syn keyword upstreamdat_Parameter ARCHIVEBIT syn keyword upstreamdat_Parameter ASCTOEBC syn keyword upstreamdat_Parameter ASRBACKUP syn keyword upstreamdat_Parameter ATTENDED syn keyword upstreamdat_Parameter AUTHORITATIVE syn keyword upstreamdat_Parameter AUTHORITATIVERESTORE syn keyword upstreamdat_Parameter AUTHORITATIVERESTORE syn keyword upstreamdat_Parameter BACKUPPROFILE syn keyword upstreamdat_Parameter BACKUPPROFILE2 syn keyword upstreamdat_Parameter BACKUPREPARSEFILES syn keyword upstreamdat_Parameter BACKUPREPARSEFILES syn keyword upstreamdat_Parameter BACKUPVERIFY syn keyword upstreamdat_Parameter BLANKTRUNC syn keyword upstreamdat_Parameter CALCDASDSIZE syn keyword upstreamdat_Parameter CHANGEDIRATTRIBS syn keyword upstreamdat_Parameter CHANGEDIRATTRIBS syn keyword upstreamdat_Parameter COMPRESSLEVEL syn keyword upstreamdat_Parameter CONTROLFILE syn keyword upstreamdat_Parameter DASDOVERRIDE syn keyword upstreamdat_Parameter DATELIMIT syn keyword upstreamdat_Parameter DATELIMIT syn keyword upstreamdat_Parameter DAYSOLD syn keyword upstreamdat_Parameter DAYSOLD syn keyword upstreamdat_Parameter DELETED syn keyword upstreamdat_Parameter DELETED syn keyword upstreamdat_Parameter DELETEPROMPTS syn keyword upstreamdat_Parameter DELETEPROMPTS syn keyword upstreamdat_Parameter DESTINATION syn keyword upstreamdat_Parameter DESTINATION syn keyword upstreamdat_Parameter DIRDELETE syn keyword upstreamdat_Parameter DIRECTORVMC syn keyword upstreamdat_Parameter DIRONLYRESTOREOK syn keyword upstreamdat_Parameter DIRSONLY syn keyword upstreamdat_Parameter DIRSONLY syn keyword upstreamdat_Parameter DISASTERRECOVERY syn keyword upstreamdat_Parameter DISPLAY syn keyword upstreamdat_Parameter DRIVEALIAS syn keyword upstreamdat_Parameter DRIVEALIAS syn keyword upstreamdat_Parameter DUALCOPY syn keyword upstreamdat_Parameter DUPDAYS syn keyword upstreamdat_Parameter DUPLICATE syn keyword upstreamdat_Parameter EBCTOASC syn keyword upstreamdat_Parameter ENCRYPT syn keyword upstreamdat_Parameter ENCRYPTLEVEL syn keyword upstreamdat_Parameter EXCLUDELISTNAME syn keyword upstreamdat_Parameter FAILBACKUPONERROR syn keyword upstreamdat_Parameter FAILBACKUPONERROR syn keyword upstreamdat_Parameter FAILIFNOFILES syn keyword upstreamdat_Parameter FAILIFNOFILES syn keyword upstreamdat_Parameter FAILIFSKIP syn keyword upstreamdat_Parameter FAILJOB syn keyword upstreamdat_Parameter FAILRESTOREONERROR syn keyword upstreamdat_Parameter FAILRESTOREONERROR syn keyword upstreamdat_Parameter FILEDATE syn keyword upstreamdat_Parameter FILEDATE syn keyword upstreamdat_Parameter FILEDELETE syn keyword upstreamdat_Parameter FILEDELETE syn keyword upstreamdat_Parameter FILES syn keyword upstreamdat_Parameter FILES syn keyword upstreamdat_Parameter FILESOPENFORUPDAT syn keyword upstreamdat_Parameter FILESOPENFORUPDAT syn keyword upstreamdat_Parameter FILETRANSFER syn keyword upstreamdat_Parameter GETREMOTEFILES syn keyword upstreamdat_Parameter HARDLINKDB syn keyword upstreamdat_Parameter HARDLINKS syn keyword upstreamdat_Parameter HARDLINKS syn keyword upstreamdat_Parameter HIDDENFILES syn keyword upstreamdat_Parameter HIDDENFILES syn keyword upstreamdat_Parameter HOLDTAPE syn keyword upstreamdat_Parameter HOLDUSERDIRS syn keyword upstreamdat_Parameter HOSTFILENAME syn keyword upstreamdat_Parameter HOSTRECORD syn keyword upstreamdat_Parameter HOSTSORT syn keyword upstreamdat_Parameter IGNOREPLUGINSFORRESTORE syn keyword upstreamdat_Parameter INCRDB syn keyword upstreamdat_Parameter INCRDBARCHIVEBIT syn keyword upstreamdat_Parameter INCRDBDELETEDFILES syn keyword upstreamdat_Parameter INCREMENTAL syn keyword upstreamdat_Parameter INCREMENTAL syn keyword upstreamdat_Parameter INQOPTIONS syn keyword upstreamdat_Parameter INSTALLWIN2KAGENT syn keyword upstreamdat_Parameter INSTALLWIN2KAGENT syn keyword upstreamdat_Parameter JOBOPTIONS syn keyword upstreamdat_Parameter JOBRETURNCODEMAP syn keyword upstreamdat_Parameter JOBWAITTIMELIMIT syn keyword upstreamdat_Parameter KEEPALIVE syn keyword upstreamdat_Parameter LANINTERFACE syn keyword upstreamdat_Parameter LANWSNAME syn keyword upstreamdat_Parameter LANWSPASSWORD syn keyword upstreamdat_Parameter LASTACCESS syn keyword upstreamdat_Parameter LASTACCESS syn keyword upstreamdat_Parameter LATESTDATE syn keyword upstreamdat_Parameter LATESTDATE syn keyword upstreamdat_Parameter LATESTTIME syn keyword upstreamdat_Parameter LATESTTIME syn keyword upstreamdat_Parameter LATESTVERSION syn keyword upstreamdat_Parameter LINEBLOCK syn keyword upstreamdat_Parameter LINETRUNC syn keyword upstreamdat_Parameter LISTENFORREMOTE syn keyword upstreamdat_Parameter LOCALBACKUP syn keyword upstreamdat_Parameter LOCALBACKUPDIR syn keyword upstreamdat_Parameter LOCALBACKUPMAX syn keyword upstreamdat_Parameter LOCALBACKUPMAXFILESIZE syn keyword upstreamdat_Parameter LOCALBACKUPMAXSIZE syn keyword upstreamdat_Parameter LOCALEXCLUDEFILE syn keyword upstreamdat_Parameter LOCALPARAMETERS syn keyword upstreamdat_Parameter LOCALPASSWORD syn keyword upstreamdat_Parameter LOCALRESTORE syn keyword upstreamdat_Parameter LOCALUSER syn keyword upstreamdat_Parameter LOFS syn keyword upstreamdat_Parameter LOGNONFATAL syn keyword upstreamdat_Parameter MAXBACKUPFILESFAIL syn keyword upstreamdat_Parameter MAXBACKUPTIME syn keyword upstreamdat_Parameter MAXDUPS syn keyword upstreamdat_Parameter MAXFILENAMESIZE syn keyword upstreamdat_Parameter MAXKFILESIZE syn keyword upstreamdat_Parameter MAXLOGDAYS syn keyword upstreamdat_Parameter MAXRESTOREFILESFAIL syn keyword upstreamdat_Parameter MAXRESTORETIME syn keyword upstreamdat_Parameter MAXRETRY syn keyword upstreamdat_Parameter MAXRPTDAYS syn keyword upstreamdat_Parameter MERGE syn keyword upstreamdat_Parameter MIGRBITS syn keyword upstreamdat_Parameter MIGRBITS syn keyword upstreamdat_Parameter MINCOMPRESSSIZE syn keyword upstreamdat_Parameter MINIMIZE syn keyword upstreamdat_Parameter MODIFYFILE syn keyword upstreamdat_Parameter MOUNTPOINTS syn keyword upstreamdat_Parameter MOUNTPOINTS syn keyword upstreamdat_Parameter NDS syn keyword upstreamdat_Parameter NDS syn keyword upstreamdat_Parameter NEWFILECOMPARE syn keyword upstreamdat_Parameter NFSBELOW syn keyword upstreamdat_Parameter NODATAOK syn keyword upstreamdat_Parameter NODIRFORINCREMENTAL syn keyword upstreamdat_Parameter NODIRFORINCREMENTAL syn keyword upstreamdat_Parameter NONFILEDATABITMAP syn keyword upstreamdat_Parameter NONFILEDATABITMAP syn keyword upstreamdat_Parameter NOPOINTRESTORE syn keyword upstreamdat_Parameter NOSPECINHERITANCE syn keyword upstreamdat_Parameter NOTIFYEVENTS syn keyword upstreamdat_Parameter NOTIFYFAILUREATTACHMENT syn keyword upstreamdat_Parameter NOTIFYSUCCESSATTACHMENT syn keyword upstreamdat_Parameter NOTIFYTARGETS syn keyword upstreamdat_Parameter NOUIDGIDNAMES syn keyword upstreamdat_Parameter NOUIDGIDNAMES syn keyword upstreamdat_Parameter NOVELLMIGRATE syn keyword upstreamdat_Parameter NOVELLMIGRATE syn keyword upstreamdat_Parameter NOVELLMIGRATEADDEXT syn keyword upstreamdat_Parameter NOVELLMIGRATEADDEXT syn keyword upstreamdat_Parameter NOVELLPROFILE syn keyword upstreamdat_Parameter NOVELLRECALL syn keyword upstreamdat_Parameter NTFSADDPERMISSION syn keyword upstreamdat_Parameter NTFSADDPERMISSION syn keyword upstreamdat_Parameter NTREGRESTORE syn keyword upstreamdat_Parameter OSTYPE syn keyword upstreamdat_Parameter OUTPORT syn keyword upstreamdat_Parameter PACKFLUSHAFTERFILE syn keyword upstreamdat_Parameter PACKRECSIZE syn keyword upstreamdat_Parameter PARAMETER syn keyword upstreamdat_Parameter PASSWORD syn keyword upstreamdat_Parameter PATHNAME syn keyword upstreamdat_Parameter PATHNAME syn keyword upstreamdat_Parameter PERFORMBITMAP syn keyword upstreamdat_Parameter PERFORMNUMRECORDS syn keyword upstreamdat_Parameter PERFORMRECORDSIZE syn keyword upstreamdat_Parameter PLUGIN syn keyword upstreamdat_Parameter PLUGIN syn keyword upstreamdat_Parameter PLUGINPARAMETERS syn keyword upstreamdat_Parameter PLUGINPARAMETERS syn keyword upstreamdat_Parameter POSTJOB syn keyword upstreamdat_Parameter PREJOB syn keyword upstreamdat_Parameter PRTYCLASS syn keyword upstreamdat_Parameter PRTYLEVEL syn keyword upstreamdat_Parameter RECALLCLEANUP syn keyword upstreamdat_Parameter RECALLOFFLINEFILES syn keyword upstreamdat_Parameter RECALLOFFLINEFILES syn keyword upstreamdat_Parameter RECORDSIZE syn keyword upstreamdat_Parameter REMOTEADDR syn keyword upstreamdat_Parameter REMOTEAPPLPREF syn keyword upstreamdat_Parameter REMOTEAPPLRETRY syn keyword upstreamdat_Parameter REMOTECONNECTTYPE syn keyword upstreamdat_Parameter REMOTEFLAGS syn keyword upstreamdat_Parameter REMOTEIPADAPTER syn keyword upstreamdat_Parameter REMOTELOCALPARAMETERS syn keyword upstreamdat_Parameter REMOTELOGMODE syn keyword upstreamdat_Parameter REMOTELUNAME syn keyword upstreamdat_Parameter REMOTEMAXRETRIES syn keyword upstreamdat_Parameter REMOTEMODENAME syn keyword upstreamdat_Parameter REMOTEPARAMETERFILE syn keyword upstreamdat_Parameter REMOTEPORT syn keyword upstreamdat_Parameter REMOTEREQUEST syn keyword upstreamdat_Parameter REMOTERESTART syn keyword upstreamdat_Parameter REMOTEROUTE syn keyword upstreamdat_Parameter REMOTETARGETNAME syn keyword upstreamdat_Parameter REMOTETCP syn keyword upstreamdat_Parameter REMOTETIMEOUT syn keyword upstreamdat_Parameter REMOTETMAXRETRY syn keyword upstreamdat_Parameter REMOTETPN syn keyword upstreamdat_Parameter REMOTEUSAPPL syn keyword upstreamdat_Parameter REMOTEVERIFY syn keyword upstreamdat_Parameter REMOTEWTOCOMP syn keyword upstreamdat_Parameter REPORTNAME syn keyword upstreamdat_Parameter REPORTOPTIONS syn keyword upstreamdat_Parameter RESTARTLASTFILE syn keyword upstreamdat_Parameter RESTART syn keyword upstreamdat_Parameter RESTARTTYPE syn keyword upstreamdat_Parameter RESTARTVERSIONDATE syn keyword upstreamdat_Parameter RESTOREARCHIVEBIT syn keyword upstreamdat_Parameter RESTORECHECKPOINT syn keyword upstreamdat_Parameter RESTOREDATELIMIT syn keyword upstreamdat_Parameter RESTOREDATELIMIT syn keyword upstreamdat_Parameter RESTOREFILEFAIL syn keyword upstreamdat_Parameter RESTOREMOUNTPOINTS syn keyword upstreamdat_Parameter RESTOREMOUNTPOINTS syn keyword upstreamdat_Parameter RESTORESEGMENTS syn keyword upstreamdat_Parameter RESTORESEGMENTS syn keyword upstreamdat_Parameter RESTORETODIFFFS syn keyword upstreamdat_Parameter RETAIN syn keyword upstreamdat_Parameter RETAIN syn keyword upstreamdat_Parameter ROOTENTRY syn keyword upstreamdat_Parameter ROOTENTRY syn keyword upstreamdat_Parameter SAN syn keyword upstreamdat_Parameter SCHEDULENAME syn keyword upstreamdat_Parameter SEGMENTEDFILESIZE syn keyword upstreamdat_Parameter SEGMENTEDFILESIZE syn keyword upstreamdat_Parameter SEGMENTSIZE syn keyword upstreamdat_Parameter SEGMENTSIZE syn keyword upstreamdat_Parameter SENDHOSTDETAILS syn keyword upstreamdat_Parameter SINGLEFS syn keyword upstreamdat_Parameter SIZETRC syn keyword upstreamdat_Parameter SKIP syn keyword upstreamdat_Parameter SKIPBACKUPSCAN syn keyword upstreamdat_Parameter SKIPOLD syn keyword upstreamdat_Parameter SKIPOLD syn keyword upstreamdat_Parameter SMSTARGETSERVICENAME syn keyword upstreamdat_Parameter SMSTSA syn keyword upstreamdat_Parameter SOLO syn keyword upstreamdat_Parameter SORTBACKUP syn keyword upstreamdat_Parameter SOSDISK syn keyword upstreamdat_Parameter SOSDISK syn keyword upstreamdat_Parameter SOSTIMESTAMP syn keyword upstreamdat_Parameter SOSTIMESTAMP syn keyword upstreamdat_Parameter SOSTIMESTAMPPATH syn keyword upstreamdat_Parameter SOSTIMESTAMPPATH syn keyword upstreamdat_Parameter SPECNUMBER syn keyword upstreamdat_Parameter SPECNUMBER syn keyword upstreamdat_Parameter SPECTYPE syn keyword upstreamdat_Parameter SPECTYPE syn keyword upstreamdat_Parameter STARTTIME syn keyword upstreamdat_Parameter STORAGETYPE syn keyword upstreamdat_Parameter SUBDIRECTORIES syn keyword upstreamdat_Parameter SUBDIRECTORIES syn keyword upstreamdat_Parameter SWITCHTOTAPEMB syn keyword upstreamdat_Parameter TCPADDRESS syn keyword upstreamdat_Parameter TCPTIMEOUT syn keyword upstreamdat_Parameter TIMEOVERRIDE syn keyword upstreamdat_Parameter TRACE syn keyword upstreamdat_Parameter TRANSLATE syn keyword upstreamdat_Parameter ULTRACOMP syn keyword upstreamdat_Parameter ULTREG syn keyword upstreamdat_Parameter ULTUPD syn keyword upstreamdat_Parameter UNCMACHINEALIAS syn keyword upstreamdat_Parameter UNCMACHINEALIAS syn keyword upstreamdat_Parameter USEALEBRA syn keyword upstreamdat_Parameter USECONTROLFILE syn keyword upstreamdat_Parameter USEGID syn keyword upstreamdat_Parameter USERID syn keyword upstreamdat_Parameter USEUID syn keyword upstreamdat_Parameter USNOUIDGIDERRORS syn keyword upstreamdat_Parameter UTF8 syn keyword upstreamdat_Parameter VAULTNUMBER syn keyword upstreamdat_Parameter VERSIONDATE syn keyword upstreamdat_Parameter WRITESPARSE syn keyword upstreamdat_Parameter XFERECORDSIZE syn keyword upstreamdat_Parameter XFERRECSEP syn keyword upstreamdat_Parameter XFERRECUSECR " File Specs: syn match upstreamdat_Filespec /file spec\c \d\{1,3}.*/ " Comments: syn match upstreamdat_Comment /^#.*/ " List Of Parameters: syn region upstreamdat_Parms start="Current Parameters:" end="End Of Parameters" transparent fold hi def link upstreamdat_Parameter Type "hi def link upstreamdat_Filespec Underlined hi def link upstreamdat_Comment Comment let b:current_syntax = "upstreamdat" PK&]4..vim80/syntax/zimbu.vimnu[" Vim syntax file " Language: Zimbu " Maintainer: Bram Moolenaar " Last Change: 2014 Nov 23 if exists("b:current_syntax") finish endif syn include @Ccode syntax/c.vim syn keyword zimbuTodo TODO FIXME XXX contained syn match zimbuNoBar "|" contained syn match zimbuParam "|[^| ]\+|" contained contains=zimbuNoBar syn match zimbuNoBacktick "`" contained syn match zimbuCode "`[^`]\+`" contained contains=zimbuNoBacktick syn match zimbuComment "#.*$" contains=zimbuTodo,zimbuParam,zimbuCode,@Spell syn match zimbuComment "/\*.\{-}\*/" contains=zimbuTodo,zimbuParam,zimbuCode,@Spell syn match zimbuChar "'\\\=.'" syn keyword zimbuBasicType bool status syn keyword zimbuBasicType int1 int2 int3 int4 int5 int6 int7 syn keyword zimbuBasicType int9 int10 int11 int12 int13 int14 int15 syn keyword zimbuBasicType int int8 int16 int32 int64 bigInt syn keyword zimbuBasicType nat nat8 byte nat16 nat32 nat64 bigNat syn keyword zimbuBasicType nat1 nat2 nat3 nat4 nat5 nat6 nat7 syn keyword zimbuBasicType nat9 nat10 nat11 nat12 nat13 nat14 nat15 syn keyword zimbuBasicType float float32 float64 float80 float128 syn keyword zimbuBasicType fixed1 fixed2 fixed3 fixed4 fixed5 fixed6 syn keyword zimbuBasicType fixed7 fixed8 fixed9 fixed10 fixed11 fixed12 syn keyword zimbuBasicType fixed13 fixed14 fixed15 syn keyword zimbuCompType string varString syn keyword zimbuCompType byteString varByteString syn keyword zimbuCompType tuple array list dict dictList set callback syn keyword zimbuCompType sortedList multiDict multiDictList multiSet syn keyword zimbuCompType complex complex32 complex64 complex80 complex128 syn keyword zimbuCompType proc func def thread evalThread lock cond pipe syn keyword zimbuType VAR dyn type USE GET syn match zimbuType "IO.File" syn match zimbuType "IO.Stat" syn keyword zimbuStatement IF ELSE ELSEIF IFNIL WHILE REPEAT FOR IN TO STEP syn keyword zimbuStatement DO UNTIL SWITCH WITH syn keyword zimbuStatement TRY CATCH FINALLY syn keyword zimbuStatement GENERATE_IF GENERATE_ELSE GENERATE_ELSEIF syn keyword zimbuStatement GENERATE_ERROR syn keyword zimbuStatement BUILD_IF BUILD_ELSE BUILD_ELSEIF syn keyword zimbuStatement CASE DEFAULT FINAL ABSTRACT VIRTUAL DEFINE REPLACE syn keyword zimbuStatement IMPLEMENTS EXTENDS PARENT LOCAL syn keyword zimbuStatement PART ALIAS TYPE CONNECT WRAP syn keyword zimbuStatement BREAK CONTINUE PROCEED syn keyword zimbuStatement RETURN EXIT THROW DEFER syn keyword zimbuStatement IMPORT AS OPTIONS MAIN syn keyword zimbuStatement INTERFACE PIECE INCLUDE MODULE ENUM BITS syn keyword zimbuStatement SHARED STATIC syn keyword zimbuStatement LAMBDA syn match zimbuStatement "\<\(FUNC\|PROC\|DEF\)\>" syn match zimbuStatement "\" syn match zimbuStatement "}" syn match zimbuAttribute "@backtrace=no\>" syn match zimbuAttribute "@backtrace=yes\>" syn match zimbuAttribute "@abstract\>" syn match zimbuAttribute "@earlyInit\>" syn match zimbuAttribute "@default\>" syn match zimbuAttribute "@define\>" syn match zimbuAttribute "@replace\>" syn match zimbuAttribute "@final\>" syn match zimbuAttribute "@primitive\>" syn match zimbuAttribute "@notOnExit\>" syn match zimbuAttribute "@private\>" syn match zimbuAttribute "@protected\>" syn match zimbuAttribute "@public\>" syn match zimbuAttribute "@local\>" syn match zimbuAttribute "@file\>" syn match zimbuAttribute "@directory\>" syn match zimbuAttribute "@read=private\>" syn match zimbuAttribute "@read=protected\>" syn match zimbuAttribute "@read=public\>" syn match zimbuAttribute "@read=file\>" syn match zimbuAttribute "@read=directory\>" syn match zimbuAttribute "@items=private\>" syn match zimbuAttribute "@items=protected\>" syn match zimbuAttribute "@items=public\>" syn match zimbuAttribute "@items=file\>" syn match zimbuAttribute "@items=directory\>" syn keyword zimbuMethod NEW EQUAL COPY COMPARE SIZE GET SET INIT EARLYINIT syn keyword zimbuOperator IS ISNOT ISA ISNOTA syn keyword zimbuModule ARG CHECK E GC IO LOG PROTO SYS HTTP ZC ZWT T TIME THREAD syn match zimbuImport "\.\zsPROTO" syn match zimbuImport "\.\zsCHEADER" "syn match zimbuString +"\([^"\\]\|\\.\)*\("\|$\)+ contains=zimbuStringExpr syn region zimbuString start=+"+ skip=+[^"\\]\|\\.+ end=+"\|$+ contains=zimbuStringExpr syn match zimbuString +R"\([^"]\|""\)*\("\|$\)+ syn region zimbuLongString start=+''"+ end=+"''+ syn match zimbuStringExpr +\\([^)]*)+hs=s+2,he=e-1 contained contains=zimbuString,zimbuParenPairOuter syn region zimbuParenPairOuter start=+(+ms=s+1 end=+)+me=e-1 contained contains=zimbuString,zimbuParenPair syn region zimbuParenPair start=+(+ end=+)+ contained contains=zimbuString,zimbuParenPair syn keyword zimbuFixed TRUE FALSE NIL THIS THISTYPE FAIL OK syn keyword zimbuError NULL " trailing whitespace syn match zimbuSpaceError display excludenl "\S\s\+$"ms=s+1 " mixed tabs and spaces syn match zimbuSpaceError display " \+\t" syn match zimbuSpaceError display "\t\+ " syn match zimbuUses contained "\ " Former Maintainers: Vaidotas Zemlys " Tom Payne " Contributor: Johannes Ranke " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Sat Apr 08, 2017 07:01PM " Filenames: *.R *.r *.Rhistory *.Rt " " NOTE: The highlighting of R functions might be defined in " runtime files created by a filetype plugin, if installed. " " CONFIGURATION: " Syntax folding can be turned on by " " let r_syntax_folding = 1 " " ROxygen highlighting can be turned off by " " let r_syntax_hl_roxygen = 0 " " Some lines of code were borrowed from Zhuojun Chen. if exists("b:current_syntax") finish endif if has("patch-7.4.1142") syn iskeyword @,48-57,_,. else setlocal iskeyword=@,48-57,_,. endif " The variables g:r_hl_roxygen and g:r_syn_minlines were renamed on April 8, 2017. if exists("g:r_hl_roxygen") let g:r_syntax_hl_roxygen = g:r_hl_roxygen endif if exists("g:r_syn_minlines") let g:r_syntax_minlines = g:r_syn_minlines endif if exists("g:r_syntax_folding") && g:r_syntax_folding setlocal foldmethod=syntax endif if !exists("g:r_syntax_hl_roxygen") let g:r_syntax_hl_roxygen = 1 endif syn case match " Comment syn match rCommentTodo contained "\(BUG\|FIXME\|NOTE\|TODO\):" syn match rComment contains=@Spell,rCommentTodo,rOBlock "#.*" " Roxygen if g:r_syntax_hl_roxygen " A roxygen block can start at the beginning of a file (first version) and " after a blank line (second version). It ends when a line that does not " contain a roxygen comment. In the following comments, any line containing " a roxygen comment marker (one or two hash signs # followed by a single " quote ' and preceded only by whitespace) is called a roxygen line. A " roxygen line containing only a roxygen comment marker, optionally followed " by whitespace is called an empty roxygen line. " First we match all roxygen blocks as containing only a title. In case an " empty roxygen line ending the title or a tag is found, this will be " overriden later by the definitions of rOBlock. syn match rOTitleBlock "\%^\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag syn match rOTitleBlock "^\s*\n\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag " When a roxygen block has a title and additional content, the title " consists of one or more roxygen lines (as little as possible are matched), " followed either by an empty roxygen line syn region rOBlock start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold syn region rOBlock start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold " or by a roxygen tag (we match everything starting with @ but not @@ which is used as escape sequence for a literal @). syn region rOBlock start="\%^\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold syn region rOBlock start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold " If a block contains an @rdname, @describeIn tag, it may have paragraph breaks, but does not have a title syn region rOBlockNoTitle start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @rdname" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold syn region rOBlockNoTitle start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @rdname" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold syn region rOBlockNoTitle start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @describeIn" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold syn region rOBlockNoTitle start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @describeIn" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold " A title as part of a block is always at the beginning of the block, i.e. " either at the start of a file or after a completely empty line. syn match rOTitle "\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag syn match rOTitle "^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag syn match rOTitleTag contained "@title" syn match rOCommentKey "#\{1,2}'" contained syn region rOExamples start="^#\{1,2}' @examples.*"rs=e+1,hs=e+1 end="^\(#\{1,2}' @.*\)\@=" end="^\(#\{1,2}'\)\@!" contained contains=rOTag fold " rOTag list generated from the lists in " https://github.com/klutometis/roxygen/R/rd.R and " https://github.com/klutometis/roxygen/R/namespace.R " using s/^ \([A-Za-z0-9]*\) = .*/ syn match rOTag contained "@\1"/ " Plus we need the @include tag " rd.R syn match rOTag contained "@aliases" syn match rOTag contained "@author" syn match rOTag contained "@backref" syn match rOTag contained "@concept" syn match rOTag contained "@describeIn" syn match rOTag contained "@description" syn match rOTag contained "@details" syn match rOTag contained "@docType" syn match rOTag contained "@encoding" syn match rOTag contained "@evalRd" syn match rOTag contained "@example" syn match rOTag contained "@examples" syn match rOTag contained "@family" syn match rOTag contained "@field" syn match rOTag contained "@format" syn match rOTag contained "@inherit" syn match rOTag contained "@inheritParams" syn match rOTag contained "@inheritDotParams" syn match rOTag contained "@inheritSection" syn match rOTag contained "@keywords" syn match rOTag contained "@method" syn match rOTag contained "@name" syn match rOTag contained "@md" syn match rOTag contained "@noMd" syn match rOTag contained "@noRd" syn match rOTag contained "@note" syn match rOTag contained "@param" syn match rOTag contained "@rdname" syn match rOTag contained "@rawRd" syn match rOTag contained "@references" syn match rOTag contained "@return" syn match rOTag contained "@section" syn match rOTag contained "@seealso" syn match rOTag contained "@slot" syn match rOTag contained "@source" syn match rOTag contained "@template" syn match rOTag contained "@templateVar" syn match rOTag contained "@title" syn match rOTag contained "@usage" " namespace.R syn match rOTag contained "@export" syn match rOTag contained "@exportClass" syn match rOTag contained "@exportMethod" syn match rOTag contained "@exportPattern" syn match rOTag contained "@import" syn match rOTag contained "@importClassesFrom" syn match rOTag contained "@importFrom" syn match rOTag contained "@importMethodsFrom" syn match rOTag contained "@rawNamespace" syn match rOTag contained "@S3method" syn match rOTag contained "@useDynLib" " other syn match rOTag contained "@include" endif if &filetype == "rhelp" " string enclosed in double quotes syn region rString contains=rSpecial,@Spell start=/"/ skip=/\\\\\|\\"/ end=/"/ " string enclosed in single quotes syn region rString contains=rSpecial,@Spell start=/'/ skip=/\\\\\|\\'/ end=/'/ else " string enclosed in double quotes syn region rString contains=rSpecial,rStrError,@Spell start=/"/ skip=/\\\\\|\\"/ end=/"/ " string enclosed in single quotes syn region rString contains=rSpecial,rStrError,@Spell start=/'/ skip=/\\\\\|\\'/ end=/'/ endif syn match rStrError display contained "\\." " New line, carriage return, tab, backspace, bell, feed, vertical tab, backslash syn match rSpecial display contained "\\\(n\|r\|t\|b\|a\|f\|v\|'\|\"\)\|\\\\" " Hexadecimal and Octal digits syn match rSpecial display contained "\\\(x\x\{1,2}\|[0-8]\{1,3}\)" " Unicode characters syn match rSpecial display contained "\\u\x\{1,4}" syn match rSpecial display contained "\\U\x\{1,8}" syn match rSpecial display contained "\\u{\x\{1,4}}" syn match rSpecial display contained "\\U{\x\{1,8}}" " Statement syn keyword rStatement break next return syn keyword rConditional if else syn keyword rRepeat for in repeat while " Constant (not really) syn keyword rConstant T F LETTERS letters month.abb month.name pi syn keyword rConstant R.version.string syn keyword rNumber NA_integer_ NA_real_ NA_complex_ NA_character_ " Constants syn keyword rConstant NULL syn keyword rBoolean FALSE TRUE syn keyword rNumber NA Inf NaN " integer syn match rInteger "\<\d\+L" syn match rInteger "\<0x\([0-9]\|[a-f]\|[A-F]\)\+L" syn match rInteger "\<\d\+[Ee]+\=\d\+L" " number with no fractional part or exponent syn match rNumber "\<\d\+\>" " hexadecimal number syn match rNumber "\<0x\([0-9]\|[a-f]\|[A-F]\)\+" " floating point number with integer and fractional parts and optional exponent syn match rFloat "\<\d\+\.\d*\([Ee][-+]\=\d\+\)\=" " floating point number with no integer part and optional exponent syn match rFloat "\<\.\d\+\([Ee][-+]\=\d\+\)\=" " floating point number with no fractional part and optional exponent syn match rFloat "\<\d\+[Ee][-+]\=\d\+" " complex number syn match rComplex "\<\d\+i" syn match rComplex "\<\d\++\d\+i" syn match rComplex "\<0x\([0-9]\|[a-f]\|[A-F]\)\+i" syn match rComplex "\<\d\+\.\d*\([Ee][-+]\=\d\+\)\=i" syn match rComplex "\<\.\d\+\([Ee][-+]\=\d\+\)\=i" syn match rComplex "\<\d\+[Ee][-+]\=\d\+i" syn match rAssign '=' syn match rOperator "&" syn match rOperator '-' syn match rOperator '\*' syn match rOperator '+' if &filetype != "rmd" && &filetype != "rrst" syn match rOperator "[|!<>^~/:]" else syn match rOperator "[|!<>^~`/:]" endif syn match rOperator "%\{2}\|%\S\{-}%" syn match rOperator '\([!><]\)\@<==' syn match rOperator '==' syn match rOpError '\*\{3}' syn match rOpError '//' syn match rOpError '&&&' syn match rOpError '|||' syn match rOpError '<<' syn match rOpError '>>' syn match rAssign "<\{1,2}-" syn match rAssign "->\{1,2}" " Special syn match rDelimiter "[,;:]" " Error if exists("g:r_syntax_folding") syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError fold syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError fold syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError fold else syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError endif syn match rError "[)\]}]" syn match rBraceError "[)}]" contained syn match rCurlyError "[)\]]" contained syn match rParenError "[\]}]" contained " Use Nvim-R to highlight functions dynamically if it is installed if !exists("g:r_syntax_fun_pattern") let s:ff = split(substitute(globpath(&rtp, "R/functions.vim"), "functions.vim", "", "g"), "\n") if len(s:ff) > 0 let g:r_syntax_fun_pattern = 0 else let g:r_syntax_fun_pattern = 1 endif endif " Only use Nvim-R to highlight functions if they should not be highlighted " according to a generic pattern if g:r_syntax_fun_pattern == 1 syn match rFunction '[0-9a-zA-Z_\.]\+\s*\ze(' else if !exists("g:R_hi_fun") let g:R_hi_fun = 1 endif if g:R_hi_fun " Nvim-R: runtime R/functions.vim endif endif syn match rDollar display contained "\$" syn match rDollar display contained "@" " List elements will not be highlighted as functions: syn match rLstElmt "\$[a-zA-Z0-9\\._]*" contains=rDollar syn match rLstElmt "@[a-zA-Z0-9\\._]*" contains=rDollar " Functions that may add new objects syn keyword rPreProc library require attach detach source if &filetype == "rhelp" syn match rHelpIdent '\\method' syn match rHelpIdent '\\S4method' endif " Type syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame " Name of object with spaces if &filetype != "rmd" && &filetype != "rrst" syn region rNameWSpace start="`" end="`" endif if &filetype == "rhelp" syn match rhPreProc "^#ifdef.*" syn match rhPreProc "^#endif.*" syn match rhSection "\\dontrun\>" endif if exists("r_syntax_minlines") exe "syn sync minlines=" . r_syntax_minlines else syn sync minlines=40 endif " Define the default highlighting. hi def link rAssign Statement hi def link rBoolean Boolean hi def link rBraceError Error hi def link rComment Comment hi def link rCommentTodo Todo hi def link rComplex Number hi def link rConditional Conditional hi def link rConstant Constant hi def link rCurlyError Error hi def link rDelimiter Delimiter hi def link rDollar SpecialChar hi def link rError Error hi def link rFloat Float hi def link rFunction Function hi def link rHelpIdent Identifier hi def link rhPreProc PreProc hi def link rhSection PreCondit hi def link rInteger Number hi def link rLstElmt Normal hi def link rNameWSpace Normal hi def link rNumber Number hi def link rOperator Operator hi def link rOpError Error hi def link rParenError Error hi def link rPreProc PreProc hi def link rRepeat Repeat hi def link rSpecial SpecialChar hi def link rStatement Statement hi def link rString String hi def link rStrError Error hi def link rType Type if g:r_syntax_hl_roxygen hi def link rOTitleTag Operator hi def link rOTag Operator hi def link rOTitleBlock Title hi def link rOBlock Comment hi def link rOBlockNoTitle Comment hi def link rOTitle Title hi def link rOCommentKey Comment hi def link rOExamples SpecialComment endif let b:current_syntax="r" " vim: ts=8 sw=2 PK&]4 vim80/syntax/fetchmail.vimnu[" Vim syntax file " Language: fetchmail(1) RC File " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword fetchmailTodo contained FIXME TODO XXX NOTE syn region fetchmailComment start='#' end='$' contains=fetchmailTodo,@Spell syn match fetchmailNumber display '\<\d\+\>' syn region fetchmailString start=+"+ skip=+\\\\\|\\"+ end=+"+ \ contains=fetchmailStringEsc syn region fetchmailString start=+'+ skip=+\\\\\|\\'+ end=+'+ \ contains=fetchmailStringEsc syn match fetchmailStringEsc contained '\\\([ntb]\|0\d*\|x\x\+\)' syn region fetchmailKeyword transparent matchgroup=fetchmailKeyword \ start='\' \ end='\' \ contains=ALLBUT,fetchmailOptions,fetchmailSet syn keyword fetchmailServerOpts contained via proto[col] local[domains] port \ auth[enticate] timeout envelope qvirtual aka \ interface monitor plugin plugout dns \ checkalias uidl interval netsec principal \ esmtpname esmtppassword \ sslcertck sslcertpath sslfingerprint syn match fetchmailServerOpts contained '\ " Last Change: 02 Nov 2015 " Version: 0.7 " URL: http://ismito.it/vim/syntax/remind.vim " " Remind is a sophisticated calendar and alarm program. " You can download remind from: " https://www.roaringpenguin.com/products/remind " " Changelog " version 0.7: updated email and link " version 0.6: added THROUGH keyword (courtesy of Ben Orchard) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " shut case off. syn case ignore syn keyword remindCommands REM OMIT SET FSET UNSET syn keyword remindExpiry UNTIL FROM SCANFROM SCAN WARN SCHED THROUGH syn keyword remindTag PRIORITY TAG syn keyword remindTimed AT DURATION syn keyword remindMove ONCE SKIP BEFORE AFTER syn keyword remindSpecial INCLUDE INC BANNER PUSH-OMIT-CONTEXT PUSH CLEAR-OMIT-CONTEXT CLEAR POP-OMIT-CONTEXT POP COLOR syn keyword remindRun MSG MSF RUN CAL SATISFY SPECIAL PS PSFILE SHADE MOON syn keyword remindConditional IF ELSE ENDIF IFTRIG syn keyword remindDebug DEBUG DUMPVARS DUMP ERRMSG FLUSH PRESERVE syn match remindComment "#.*$" syn region remindString start=+'+ end=+'+ skip=+\\\\\|\\'+ oneline syn region remindString start=+"+ end=+"+ skip=+\\\\\|\\"+ oneline syn match remindVar "\$[_a-zA-Z][_a-zA-Z0-9]*" syn match remindSubst "%[^ ]" syn match remindAdvanceNumber "\(\*\|+\|-\|++\|--\)[0-9]\+" " XXX: use different separators for dates and times? syn match remindDateSeparators "[/:@\.-]" contained syn match remindTimes "[0-9]\{1,2}[:\.][0-9]\{1,2}" contains=remindDateSeparators " XXX: why not match only valid dates? Ok, checking for 'Feb the 30' would " be impossible, but at least check for valid months and times. syn match remindDates "'[0-9]\{4}[/-][0-9]\{1,2}[/-][0-9]\{1,2}\(@[0-9]\{1,2}[:\.][0-9]\{1,2}\)\?'" contains=remindDateSeparators " This will match trailing whitespaces that seem to break rem2ps. " Courtesy of Michael Dunn. syn match remindWarning display excludenl "\S\s\+$"ms=s+1 hi def link remindCommands Function hi def link remindExpiry Repeat hi def link remindTag Label hi def link remindTimed Statement hi def link remindMove Statement hi def link remindSpecial Include hi def link remindRun Function hi def link remindConditional Conditional hi def link remindComment Comment hi def link remindTimes String hi def link remindString String hi def link remindDebug Debug hi def link remindVar Identifier hi def link remindSubst Constant hi def link remindAdvanceNumber Number hi def link remindDateSeparators Comment hi def link remindDates String hi def link remindWarning Error let b:current_syntax = "remind" " vim: ts=8 sw=2 PK&]508vim80/syntax/manual.vimnu[" Vim syntax support file " Maintainer: Bram Moolenaar " Last Change: 2016 Feb 01 " This file is used for ":syntax manual". " It installs the Syntax autocommands, but no the FileType autocommands. if !has("syntax") finish endif " Load the Syntax autocommands and set the default methods for highlighting. if !exists("syntax_on") so :p:h/synload.vim endif let syntax_manual = 1 " Overrule the connection between FileType and Syntax autocommands. This sets " the syntax when the file type is detected, without changing the value. augroup syntaxset au! FileType * exe "set syntax=" . &syntax augroup END " If the GUI is already running, may still need to install the FileType menu. " Don't do it when the 'M' flag is included in 'guioptions'. if has("menu") && has("gui_running") && !exists("did_install_syntax_menu") && &guioptions !~# 'M' source $VIMRUNTIME/menu.vim endif PK&]# ttvim80/syntax/dosbatch.vimnu[" Vim syntax file " Language: MSDOS batch file (with NT command extensions) " Maintainer: Mike Williams " Filenames: *.bat " Last Change: 6th September 2009 " Web Page: http://www.eandem.co.uk/mrw/vim " " Options Flags: " dosbatch_cmdextversion - 1 = Windows NT, 2 = Windows 2000 [default] " " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Set default highlighting to Win2k if !exists("dosbatch_cmdextversion") let dosbatch_cmdextversion = 2 endif " DOS bat files are case insensitive but case preserving! syn case ignore syn keyword dosbatchTodo contained TODO " Dosbat keywords syn keyword dosbatchStatement goto call exit syn keyword dosbatchConditional if else syn keyword dosbatchRepeat for " Some operators - first lot are case sensitive! syn case match syn keyword dosbatchOperator EQU NEQ LSS LEQ GTR GEQ syn case ignore syn match dosbatchOperator "\s[-+\*/%!~]\s" syn match dosbatchOperator "=" syn match dosbatchOperator "[-+\*/%]=" syn match dosbatchOperator "\s\(&\||\|^\|<<\|>>\)=\=\s" syn match dosbatchIfOperator "if\s\+\(\(not\)\=\s\+\)\=\(exist\|defined\|errorlevel\|cmdextversion\)\="lc=2 " String - using "'s is a convenience rather than a requirement outside of FOR syn match dosbatchString "\"[^"]*\"" contains=dosbatchVariable,dosBatchArgument,dosbatchSpecialChar,@dosbatchNumber,@Spell syn match dosbatchString "\|]\|\^\@<=[)>|]\)*"lc=4 contains=dosbatchVariable,dosbatchArgument,dosbatchSpecialChar,@dosbatchNumber,@Spell syn match dosbatchEchoOperator "\^]" syn match dosbatchSpecialChar "\$[a-hl-npqstv_$+]" syn match dosbatchSpecialChar "%%" " Environment variables syn match dosbatchIdentifier contained "\s\h\w*\>" syn match dosbatchVariable "%\h\w*%" syn match dosbatchVariable "%\h\w*:\*\=[^=]*=[^%]*%" syn match dosbatchVariable "%\h\w*:\~[-]\=\d\+\(,[-]\=\d\+\)\=%" contains=dosbatchInteger syn match dosbatchVariable "!\h\w*!" syn match dosbatchVariable "!\h\w*:\*\=[^=]*=[^!]*!" syn match dosbatchVariable "!\h\w*:\~[-]\=\d\+\(,[-]\=\d\+\)\=!" contains=dosbatchInteger syn match dosbatchSet "\s\h\w*[+-]\==\{-1}" contains=dosbatchIdentifier,dosbatchOperator " Args to bat files and for loops, etc syn match dosbatchArgument "%\(\d\|\*\)" syn match dosbatchArgument "%[a-z]\>" if dosbatch_cmdextversion == 1 syn match dosbatchArgument "%\~[fdpnxs]\+\(\($PATH:\)\=[a-z]\|\d\)\>" else syn match dosbatchArgument "%\~[fdpnxsatz]\+\(\($PATH:\)\=[a-z]\|\d\)\>" endif " Line labels syn match dosbatchLabel "^\s*:\s*\h\w*\>" syn match dosbatchLabel "\<\(goto\|call\)\s\+:\h\w*\>"lc=4 syn match dosbatchLabel "\"lc=4 syn match dosbatchLabel ":\h\w*\>" " Comments - usual rem but also two colons as first non-space is an idiom syn match dosbatchComment "^rem\($\|\s.*$\)"lc=3 contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn match dosbatchComment "^@rem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn match dosbatchComment "\srem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn match dosbatchComment "\s@rem\($\|\s.*$\)"lc=5 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn match dosbatchComment "\s*:\s*:.*$" contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell " Comments in ()'s - still to handle spaces before rem syn match dosbatchComment "(rem\([^)]\|\^\@<=)\)*"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn keyword dosbatchImplicit append assoc at attrib break cacls cd chcp chdir syn keyword dosbatchImplicit chkdsk chkntfs cls cmd color comp compact convert copy syn keyword dosbatchImplicit date del dir diskcomp diskcopy doskey echo endlocal syn keyword dosbatchImplicit erase fc find findstr format ftype syn keyword dosbatchImplicit graftabl help keyb label md mkdir mode more move syn keyword dosbatchImplicit path pause popd print prompt pushd rd recover rem syn keyword dosbatchImplicit ren rename replace restore rmdir set setlocal shift syn keyword dosbatchImplicit sort start subst time title tree type ver verify syn keyword dosbatchImplicit vol xcopy " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link dosbatchTodo Todo hi def link dosbatchStatement Statement hi def link dosbatchCommands dosbatchStatement hi def link dosbatchLabel Label hi def link dosbatchConditional Conditional hi def link dosbatchRepeat Repeat hi def link dosbatchOperator Operator hi def link dosbatchEchoOperator dosbatchOperator hi def link dosbatchIfOperator dosbatchOperator hi def link dosbatchArgument Identifier hi def link dosbatchIdentifier Identifier hi def link dosbatchVariable dosbatchIdentifier hi def link dosbatchSpecialChar SpecialChar hi def link dosbatchString String hi def link dosbatchNumber Number hi def link dosbatchInteger dosbatchNumber hi def link dosbatchHex dosbatchNumber hi def link dosbatchBinary dosbatchNumber hi def link dosbatchOctal dosbatchNumber hi def link dosbatchComment Comment hi def link dosbatchImplicit Function hi def link dosbatchSwitch Special hi def link dosbatchCmd PreProc let b:current_syntax = "dosbatch" " vim: ts=8 PK&]R\vim80/syntax/plp.vimnu[" Vim syntax file " Language: PLP (Perl in HTML) " Maintainer: Juerd " Last Change: 2003 Apr 25 " Cloned From: aspperl.vim " Add to filetype.vim the following line (without quote sign): " au BufNewFile,BufRead *.plp setf plp " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif if !exists("main_syntax") let main_syntax = 'perlscript' endif runtime! syntax/html.vim unlet b:current_syntax syn include @PLPperl syntax/perl.vim syn cluster htmlPreproc add=PLPperlblock syn keyword perlControl PLP_END syn keyword perlStatementInclude include Include syn keyword perlStatementFiles ReadFile WriteFile Counter syn keyword perlStatementScalar Entity AutoURL DecodeURI EncodeURI syn cluster PLPperlcode contains=perlStatement.*,perlFunction,perlOperator,perlVarPlain,perlVarNotInMatches,perlShellCommand,perlFloat,perlNumber,perlStringUnexpanded,perlString,perlQQ,perlControl,perlConditional,perlRepeat,perlComment,perlPOD,perlHereDoc,perlPackageDecl,perlElseIfError,perlFiledescRead,perlMatch syn region PLPperlblock keepend matchgroup=Delimiter start=+<:=\=+ end=+:>+ transparent contains=@PLPperlcode syn region PLPinclude keepend matchgroup=Delimiter start=+<(+ end=+)>+ let b:current_syntax = "plp" PK&]PC77vim80/syntax/context.vimnu[" Vim syntax file " Language: ConTeXt typesetting engine " Maintainer: Nicola Vitacolonna " Former Maintainers: Nikolai Weibull " Latest Revision: 2016 Oct 16 if exists("b:current_syntax") finish endif runtime! syntax/plaintex.vim unlet b:current_syntax let s:cpo_save = &cpo set cpo&vim " Dictionary of (filetype, group) pairs to highlight between \startGROUP \stopGROUP. let s:context_include = get(b:, 'context_include', get(g:, 'context_include', {'xml': 'XML'})) " For backward compatibility (g:context_include used to be a List) if type(s:context_include) ==# type([]) let g:context_metapost = (index(s:context_include, 'mp') != -1) let s:context_include = filter( \ {'c': 'C', 'javascript': 'JS', 'ruby': 'Ruby', 'xml': 'XML'}, \ { k,_ -> index(s:context_include, k) != -1 } \ ) endif syn iskeyword @,48-57,a-z,A-Z,192-255 syn spell toplevel " ConTeXt options, i.e., [...] blocks syn region contextOptions matchgroup=contextDelimiter start='\[' end=']\|\ze\\stop' skip='\\\[\|\\\]' contains=ALLBUT,contextBeginEndLua,@Spell " Highlight braces syn match contextDelimiter '[{}]' " Comments syn match contextComment '\\\@>' syn region contextEscaped matchgroup=contextPreProc \ start='\\start\z(\a*\%(typing\|typen\)\)' \ end='\\stop\z1' contains=plaintexComment keepend syn region contextEscaped matchgroup=contextPreProc start='\\\h\+Type\%(\s\|\n\)*{' end='}' syn region contextEscaped matchgroup=contextPreProc start='\\Typed\h\+\%(\s\|\n\)*{' end='}' syn match contextBuiltin display contains=@NoSpell \ '\\\%(unprotect\|protect\|unexpanded\)\>' syn match contextPreProc '^\s*\\\%(start\|stop\)\=\%(component\|environment\|project\|product\)\>' \ contains=@NoSpell if get(b:, 'context_metapost', get(g:, 'context_metapost', 1)) let b:mp_metafun_macros = 1 " Highlight MetaFun keywords syn include @mpTop syntax/mp.vim unlet b:current_syntax syn region contextMPGraphic matchgroup=contextBlockDelim \ start='\\start\z(MP\%(clip\|code\|definitions\|drawing\|environment\|extensions\|inclusions\|initializations\|page\|\)\)\>.*$' \ end='\\stop\z1' \ contains=@mpTop,@NoSpell syn region contextMPGraphic matchgroup=contextBlockDelim \ start='\\start\z(\%(\%[re]usable\|use\|unique\|static\)MPgraphic\|staticMPfigure\|uniqueMPpagegraphic\)\>.*$' \ end='\\stop\z1' \ contains=@mpTop,@NoSpell endif if get(b:, 'context_lua', get(g:, 'context_lua', 1)) syn include @luaTop syntax/lua.vim unlet b:current_syntax syn region contextLuaCode matchgroup=contextBlockDelim \ start='\\startluacode\>' \ end='\\stopluacode\>' keepend \ contains=@luaTop,@NoSpell syn match contextDirectLua "\\\%(directlua\|ctxlua\)\>\%(\s*%.*$\)\=" \ nextgroup=contextBeginEndLua skipwhite skipempty \ contains=initexComment syn region contextBeginEndLua matchgroup=contextSpecial \ start="{" end="}" skip="\\[{}]" \ contained contains=@luaTop,@NoSpell endif for synname in keys(s:context_include) execute 'syn include @' . synname . 'Top' 'syntax/' . synname . '.vim' unlet b:current_syntax execute 'syn region context' . s:context_include[synname] . 'Code' \ 'matchgroup=contextBlockDelim' \ 'start=+\\start' . s:context_include[synname] . '+' \ 'end=+\\stop' . s:context_include[synname] . '+' \ 'contains=@' . synname . 'Top,@NoSpell' endfor syn match contextSectioning '\\\%(start\|stop\)\=\%(\%(sub\)*section\|\%(sub\)*subject\|chapter\|part\|component\|product\|title\)\>' \ contains=@NoSpell syn match contextSpecial '\\crlf\>\|\\par\>\|-\{2,3}\||[<>/]\=|' \ contains=@NoSpell syn match contextSpecial /\\[`'"]/ syn match contextSpecial +\\char\%(\d\{1,3}\|'\o\{1,3}\|"\x\{1,2}\)\>+ \ contains=@NoSpell syn match contextSpecial '\^\^.' syn match contextSpecial '`\%(\\.\|\^\^.\|.\)' syn match contextStyle '\\\%(em\|ss\|hw\|cg\|mf\)\>' \ contains=@NoSpell syn match contextFont '\\\%(CAP\|Cap\|cap\|Caps\|kap\|nocap\)\>' \ contains=@NoSpell syn match contextFont '\\\%(Word\|WORD\|Words\|WORDS\)\>' \ contains=@NoSpell syn match contextFont '\\\%(vi\{1,3}\|ix\|xi\{0,2}\)\>' \ contains=@NoSpell syn match contextFont '\\\%(tf\|b[si]\|s[cl]\|os\)\%(xx\|[xabcd]\)\=\>' \ contains=@NoSpell hi def link contextOptions Typedef hi def link contextComment Comment hi def link contextBlockDelim Keyword hi def link contextBuiltin Keyword hi def link contextDelimiter Delimiter hi def link contextEscaped String hi def link contextPreProc PreProc hi def link contextSectioning PreProc hi def link contextSpecial Special hi def link contextType Type hi def link contextStyle contextType hi def link contextFont contextType hi def link contextDirectLua Keyword let b:current_syntax = "context" let &cpo = s:cpo_save unlet s:cpo_save PK&]˕gvim80/syntax/cvsrc.vimnu[" Vim syntax file " Language: cvs(1) RC file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn region cvsrcString display oneline start=+"+ skip=+\\\\\|\\\\"+ end=+"+ syn region cvsrcString display oneline start=+'+ skip=+\\\\\|\\\\'+ end=+'+ syn match cvsrcNumber display '\<\d\+\>' syn match cvsrcBegin display '^' nextgroup=cvsrcCommand skipwhite syn region cvsrcCommand contained transparent matchgroup=cvsrcCommand \ start='add\|admin\|checkout\|commit\|cvs\|diff' \ start='export\|history\|import\|init\|log' \ start='rdiff\|release\|remove\|rtag\|status\|tag' \ start='update' \ end='$' \ contains=cvsrcOption,cvsrcString,cvsrcNumber \ keepend syn match cvsrcOption contained display '-\a\+' hi def link cvsrcString String hi def link cvsrcNumber Number hi def link cvsrcCommand Keyword hi def link cvsrcOption Identifier let b:current_syntax = "cvsrc" let &cpo = s:cpo_save unlet s:cpo_save PK&]((vim80/syntax/debsources.vimnu[" Vim syntax file " Language: Debian sources.list " Maintainer: Debian Vim Maintainers " Former Maintainer: Matthijs Mohlmann " Last Change: 2018 Jan 06 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim " Standard syntax initialization if exists("b:current_syntax") finish endif " case sensitive syn case match " A bunch of useful keywords syn match debsourcesKeyword /\(deb-src\|deb\|main\|contrib\|non-free\|restricted\|universe\|multiverse\)/ " Match comments syn match debsourcesComment /#.*/ contains=@Spell let s:cpo = &cpo set cpo-=C let s:supported = [ \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental', \ 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy', \ \ 'trusty', 'xenial', 'zesty', 'artful', 'bionic', 'devel' \ ] let s:unsupported = [ \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', \ 'woody', 'sarge', 'etch', 'lenny', 'squeeze', \ \ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty', \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid', \ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy', \ 'utopic', 'vivid', 'wily', 'yakkety' \ ] let &cpo=s:cpo " Match uri's syn match debsourcesUri +\(https\?://\|ftp://\|[rs]sh://\|debtorrent://\|\(cdrom\|copy\|file\):\)[^' <>"]\++ exe 'syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\<\('. join(s:supported, '\|'). '\)\>\([-[:alnum:]_./]*\)+' exe 'syn match debsourcesUnsupportedDistrKeyword +\([[:alnum:]_./]*\)\<\('. join(s:unsupported, '\|') .'\)\>\([-[:alnum:]_./]*\)+' " Associate our matches and regions with pretty colours hi def link debsourcesLine Error hi def link debsourcesKeyword Statement hi def link debsourcesDistrKeyword Type hi def link debsourcesUnsupportedDistrKeyword WarningMsg hi def link debsourcesComment Comment hi def link debsourcesUri Constant let b:current_syntax = "debsources" PK&]mvim80/syntax/conf.vimnu[" Vim syntax file " Language: generic configure file " Maintainer: Bram Moolenaar " Last Change: 2005 Jun 20 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish endif syn keyword confTodo contained TODO FIXME XXX " Avoid matching "text#text", used in /etc/disktab and /etc/gettytab syn match confComment "^#.*" contains=confTodo syn match confComment "\s#.*"ms=s+1 contains=confTodo syn region confString start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline syn region confString start=+'+ skip=+\\\\\|\\'+ end=+'+ oneline " Define the default highlighting. " Only used when an item doesn't have highlighting yet hi def link confComment Comment hi def link confTodo Todo hi def link confString String let b:current_syntax = "conf" " vim: ts=8 sw=2 PK&] ,vim80/syntax/bdf.vimnu[" Vim syntax file " Language: BDF font definition " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn region bdfFontDefinition transparent matchgroup=bdfKeyword \ start='^STARTFONT\>' end='^ENDFONT\>' \ contains=bdfComment,bdfFont,bdfSize, \ bdfBoundingBox,bdfProperties,bdfChars,bdfChar syn match bdfNumber contained display \ '\<\%(\x\+\|[+-]\=\d\+\%(\.\d\+\)*\)' syn keyword bdfTodo contained FIXME TODO XXX NOTE syn region bdfComment contained start='^COMMENT\>' end='$' \ contains=bdfTodo,@Spell syn region bdfFont contained matchgroup=bdfKeyword \ start='^FONT\>' end='$' syn region bdfSize contained transparent matchgroup=bdfKeyword \ start='^SIZE\>' end='$' contains=bdfNumber syn region bdfBoundingBox contained transparent matchgroup=bdfKeyword \ start='^FONTBOUNDINGBOX' end='$' \ contains=bdfNumber syn region bdfProperties contained transparent matchgroup=bdfKeyword \ start='^STARTPROPERTIES' end='^ENDPROPERTIES' \ contains=bdfNumber,bdfString,bdfProperty, \ bdfXProperty syn keyword bdfProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR syn match bdfProperty contained '^\S\+' syn keyword bdfXProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR \ FONTNAME_REGISTRY FOUNDRY FAMILY_NAME \ WEIGHT_NAME SLANT SETWIDTH_NAME PIXEL_SIZE \ POINT_SIZE RESOLUTION_X RESOLUTION_Y SPACING \ CHARSET_REGISTRY CHARSET_ENCODING COPYRIGHT \ ADD_STYLE_NAME WEIGHT RESOLUTION X_HEIGHT \ QUAD_WIDTH FONT AVERAGE_WIDTH syn region bdfString contained start=+"+ skip=+""+ end=+"+ syn region bdfChars contained display transparent \ matchgroup=bdfKeyword start='^CHARS' end='$' \ contains=bdfNumber syn region bdfChar transparent matchgroup=bdfKeyword \ start='^STARTCHAR' end='^ENDCHAR' \ contains=bdfEncoding,bdfWidth,bdfAttributes, \ bdfBitmap syn region bdfEncoding contained transparent matchgroup=bdfKeyword \ start='^ENCODING' end='$' contains=bdfNumber syn region bdfWidth contained transparent matchgroup=bdfKeyword \ start='^SWIDTH\|DWIDTH\|BBX' end='$' \ contains=bdfNumber syn region bdfAttributes contained transparent matchgroup=bdfKeyword \ start='^ATTRIBUTES' end='$' syn keyword bdfBitmap contained BITMAP if exists("bdf_minlines") let b:bdf_minlines = bdf_minlines else let b:bdf_minlines = 30 endif exec "syn sync ccomment bdfChar minlines=" . b:bdf_minlines hi def link bdfKeyword Keyword hi def link bdfNumber Number hi def link bdfTodo Todo hi def link bdfComment Comment hi def link bdfFont String hi def link bdfProperty Identifier hi def link bdfXProperty Identifier hi def link bdfString String hi def link bdfChars Keyword hi def link bdfBitmap Keyword let b:current_syntax = "bdf" let &cpo = s:cpo_save unlet s:cpo_save PK&]\cAjAjvim80/syntax/pfmain.vimnu[" Vim syntax file " Language: Postfix main.cf configuration " Maintainer: KELEMEN Peter " Last Updates: Anton Shestakov, Hong Xu " Last Change: 2015 Feb 10 " Version: 0.40 " URL: http://cern.ch/fuji/vim/syntax/pfmain.vim " Comment: Based on Postfix 2.12/3.0 postconf.5.html. " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif setlocal iskeyword=@,48-57,_,- syntax case match syntax sync minlines=1 syntax keyword pfmainConf 2bounce_notice_recipient syntax keyword pfmainConf access_map_defer_code syntax keyword pfmainConf access_map_reject_code syntax keyword pfmainConf address_verify_cache_cleanup_interval syntax keyword pfmainConf address_verify_default_transport syntax keyword pfmainConf address_verify_local_transport syntax keyword pfmainConf address_verify_map syntax keyword pfmainConf address_verify_negative_cache syntax keyword pfmainConf address_verify_negative_expire_time syntax keyword pfmainConf address_verify_negative_refresh_time syntax keyword pfmainConf address_verify_poll_count syntax keyword pfmainConf address_verify_poll_delay syntax keyword pfmainConf address_verify_positive_expire_time syntax keyword pfmainConf address_verify_positive_refresh_time syntax keyword pfmainConf address_verify_relay_transport syntax keyword pfmainConf address_verify_relayhost syntax keyword pfmainConf address_verify_sender syntax keyword pfmainConf address_verify_sender_dependent_default_transport_maps syntax keyword pfmainConf address_verify_sender_dependent_relayhost_maps syntax keyword pfmainConf address_verify_sender_ttl syntax keyword pfmainConf address_verify_service_name syntax keyword pfmainConf address_verify_transport_maps syntax keyword pfmainConf address_verify_virtual_transport syntax keyword pfmainConf alias_database syntax keyword pfmainConf alias_maps syntax keyword pfmainConf allow_mail_to_commands syntax keyword pfmainConf allow_mail_to_files syntax keyword pfmainConf allow_min_user syntax keyword pfmainConf allow_percent_hack syntax keyword pfmainConf allow_untrusted_routing syntax keyword pfmainConf alternate_config_directories syntax keyword pfmainConf always_add_missing_headers syntax keyword pfmainConf always_bcc syntax keyword pfmainConf anvil_rate_time_unit syntax keyword pfmainConf anvil_status_update_time syntax keyword pfmainConf append_at_myorigin syntax keyword pfmainConf append_dot_mydomain syntax keyword pfmainConf application_event_drain_time syntax keyword pfmainConf authorized_flush_users syntax keyword pfmainConf authorized_mailq_users syntax keyword pfmainConf authorized_submit_users syntax keyword pfmainConf authorized_verp_clients syntax keyword pfmainConf backwards_bounce_logfile_compatibility syntax keyword pfmainConf berkeley_db_create_buffer_size syntax keyword pfmainConf berkeley_db_read_buffer_size syntax keyword pfmainConf best_mx_transport syntax keyword pfmainConf biff syntax keyword pfmainConf body_checks syntax keyword pfmainConf body_checks_size_limit syntax keyword pfmainConf bounce_notice_recipient syntax keyword pfmainConf bounce_queue_lifetime syntax keyword pfmainConf bounce_service_name syntax keyword pfmainConf bounce_size_limit syntax keyword pfmainConf bounce_template_file syntax keyword pfmainConf broken_sasl_auth_clients syntax keyword pfmainConf canonical_classes syntax keyword pfmainConf canonical_maps syntax keyword pfmainConf cleanup_service_name syntax keyword pfmainConf command_directory syntax keyword pfmainConf command_execution_directory syntax keyword pfmainConf command_expansion_filter syntax keyword pfmainConf command_time_limit syntax keyword pfmainConf compatibility_level syntax keyword pfmainConf config_directory syntax keyword pfmainConf confirm_delay_cleared syntax keyword pfmainConf connection_cache_protocol_timeout syntax keyword pfmainConf connection_cache_service_name syntax keyword pfmainConf connection_cache_status_update_time syntax keyword pfmainConf connection_cache_ttl_limit syntax keyword pfmainConf content_filter syntax keyword pfmainConf cyrus_sasl_config_path syntax keyword pfmainConf daemon_directory syntax keyword pfmainConf daemon_table_open_error_is_fatal syntax keyword pfmainConf daemon_timeout syntax keyword pfmainConf data_directory syntax keyword pfmainConf debug_peer_level syntax keyword pfmainConf debug_peer_list syntax keyword pfmainConf debugger_command syntax keyword pfmainConf default_database_type syntax keyword pfmainConf default_delivery_slot_cost syntax keyword pfmainConf default_delivery_slot_discount syntax keyword pfmainConf default_delivery_slot_loan syntax keyword pfmainConf default_delivery_status_filter syntax keyword pfmainConf default_destination_concurrency_failed_cohort_limit syntax keyword pfmainConf default_destination_concurrency_limit syntax keyword pfmainConf default_destination_concurrency_negative_feedback syntax keyword pfmainConf default_destination_concurrency_positive_feedback syntax keyword pfmainConf default_destination_rate_delay syntax keyword pfmainConf default_destination_recipient_limit syntax keyword pfmainConf default_extra_recipient_limit syntax keyword pfmainConf default_filter_nexthop syntax keyword pfmainConf default_minimum_delivery_slots syntax keyword pfmainConf default_privs syntax keyword pfmainConf default_process_limit syntax keyword pfmainConf default_rbl_reply syntax keyword pfmainConf default_recipient_limit syntax keyword pfmainConf default_recipient_refill_delay syntax keyword pfmainConf default_recipient_refill_limit syntax keyword pfmainConf default_transport syntax keyword pfmainConf default_verp_delimiters syntax keyword pfmainConf defer_code syntax keyword pfmainConf defer_service_name syntax keyword pfmainConf defer_transports syntax keyword pfmainConf delay_logging_resolution_limit syntax keyword pfmainConf delay_notice_recipient syntax keyword pfmainConf delay_warning_time syntax keyword pfmainConf deliver_lock_attempts syntax keyword pfmainConf deliver_lock_delay syntax keyword pfmainConf destination_concurrency_feedback_debug syntax keyword pfmainConf detect_8bit_encoding_header syntax keyword pfmainConf disable_dns_lookups syntax keyword pfmainConf disable_mime_input_processing syntax keyword pfmainConf disable_mime_output_conversion syntax keyword pfmainConf disable_verp_bounces syntax keyword pfmainConf disable_vrfy_command syntax keyword pfmainConf dnsblog_reply_delay syntax keyword pfmainConf dnsblog_service_name syntax keyword pfmainConf dont_remove syntax keyword pfmainConf double_bounce_sender syntax keyword pfmainConf duplicate_filter_limit syntax keyword pfmainConf empty_address_default_transport_maps_lookup_key syntax keyword pfmainConf empty_address_recipient syntax keyword pfmainConf empty_address_relayhost_maps_lookup_key syntax keyword pfmainConf enable_errors_to syntax keyword pfmainConf enable_long_queue_ids syntax keyword pfmainConf enable_original_recipient syntax keyword pfmainConf error_notice_recipient syntax keyword pfmainConf error_service_name syntax keyword pfmainConf execution_directory_expansion_filter syntax keyword pfmainConf expand_owner_alias syntax keyword pfmainConf export_environment syntax keyword pfmainConf extract_recipient_limit syntax keyword pfmainConf fallback_relay syntax keyword pfmainConf fallback_transport syntax keyword pfmainConf fallback_transport_maps syntax keyword pfmainConf fast_flush_domains syntax keyword pfmainConf fast_flush_purge_time syntax keyword pfmainConf fast_flush_refresh_time syntax keyword pfmainConf fault_injection_code syntax keyword pfmainConf flush_service_name syntax keyword pfmainConf fork_attempts syntax keyword pfmainConf fork_delay syntax keyword pfmainConf forward_expansion_filter syntax keyword pfmainConf forward_path syntax keyword pfmainConf frozen_delivered_to syntax keyword pfmainConf hash_queue_depth syntax keyword pfmainConf hash_queue_names syntax keyword pfmainConf header_address_token_limit syntax keyword pfmainConf header_checks syntax keyword pfmainConf header_size_limit syntax keyword pfmainConf helpful_warnings syntax keyword pfmainConf home_mailbox syntax keyword pfmainConf hopcount_limit syntax keyword pfmainConf html_directory syntax keyword pfmainConf ignore_mx_lookup_error syntax keyword pfmainConf import_environment syntax keyword pfmainConf in_flow_delay syntax keyword pfmainConf inet_interfaces syntax keyword pfmainConf inet_protocols syntax keyword pfmainConf initial_destination_concurrency syntax keyword pfmainConf internal_mail_filter_classes syntax keyword pfmainConf invalid_hostname_reject_code syntax keyword pfmainConf ipc_idle syntax keyword pfmainConf ipc_timeout syntax keyword pfmainConf ipc_ttl syntax keyword pfmainConf line_length_limit syntax keyword pfmainConf lmdb_map_size syntax keyword pfmainConf lmtp_address_preference syntax keyword pfmainConf lmtp_address_verify_target syntax keyword pfmainConf lmtp_assume_final syntax keyword pfmainConf lmtp_bind_address syntax keyword pfmainConf lmtp_bind_address6 syntax keyword pfmainConf lmtp_body_checks syntax keyword pfmainConf lmtp_cache_connection syntax keyword pfmainConf lmtp_cname_overrides_servername syntax keyword pfmainConf lmtp_connect_timeout syntax keyword pfmainConf lmtp_connection_cache_destinations syntax keyword pfmainConf lmtp_connection_cache_on_demand syntax keyword pfmainConf lmtp_connection_cache_time_limit syntax keyword pfmainConf lmtp_connection_reuse_count_limit syntax keyword pfmainConf lmtp_connection_reuse_time_limit syntax keyword pfmainConf lmtp_data_done_timeout syntax keyword pfmainConf lmtp_data_init_timeout syntax keyword pfmainConf lmtp_data_xfer_timeout syntax keyword pfmainConf lmtp_defer_if_no_mx_address_found syntax keyword pfmainConf lmtp_delivery_status_filter syntax keyword pfmainConf lmtp_destination_concurrency_limit syntax keyword pfmainConf lmtp_destination_recipient_limit syntax keyword pfmainConf lmtp_discard_lhlo_keyword_address_maps syntax keyword pfmainConf lmtp_discard_lhlo_keywords syntax keyword pfmainConf lmtp_dns_reply_filter syntax keyword pfmainConf lmtp_dns_resolver_options syntax keyword pfmainConf lmtp_dns_support_level syntax keyword pfmainConf lmtp_enforce_tls syntax keyword pfmainConf lmtp_generic_maps syntax keyword pfmainConf lmtp_header_checks syntax keyword pfmainConf lmtp_host_lookup syntax keyword pfmainConf lmtp_lhlo_name syntax keyword pfmainConf lmtp_lhlo_timeout syntax keyword pfmainConf lmtp_line_length_limit syntax keyword pfmainConf lmtp_mail_timeout syntax keyword pfmainConf lmtp_mime_header_checks syntax keyword pfmainConf lmtp_mx_address_limit syntax keyword pfmainConf lmtp_mx_session_limit syntax keyword pfmainConf lmtp_nested_header_checks syntax keyword pfmainConf lmtp_per_record_deadline syntax keyword pfmainConf lmtp_pix_workaround_delay_time syntax keyword pfmainConf lmtp_pix_workaround_maps syntax keyword pfmainConf lmtp_pix_workaround_threshold_time syntax keyword pfmainConf lmtp_pix_workarounds syntax keyword pfmainConf lmtp_quit_timeout syntax keyword pfmainConf lmtp_quote_rfc821_envelope syntax keyword pfmainConf lmtp_randomize_addresses syntax keyword pfmainConf lmtp_rcpt_timeout syntax keyword pfmainConf lmtp_reply_filter syntax keyword pfmainConf lmtp_rset_timeout syntax keyword pfmainConf lmtp_sasl_auth_cache_name syntax keyword pfmainConf lmtp_sasl_auth_cache_time syntax keyword pfmainConf lmtp_sasl_auth_enable syntax keyword pfmainConf lmtp_sasl_auth_soft_bounce syntax keyword pfmainConf lmtp_sasl_mechanism_filter syntax keyword pfmainConf lmtp_sasl_password_maps syntax keyword pfmainConf lmtp_sasl_path syntax keyword pfmainConf lmtp_sasl_security_options syntax keyword pfmainConf lmtp_sasl_tls_security_options syntax keyword pfmainConf lmtp_sasl_tls_verified_security_options syntax keyword pfmainConf lmtp_sasl_type syntax keyword pfmainConf lmtp_send_dummy_mail_auth syntax keyword pfmainConf lmtp_send_xforward_command syntax keyword pfmainConf lmtp_sender_dependent_authentication syntax keyword pfmainConf lmtp_skip_5xx_greeting syntax keyword pfmainConf lmtp_skip_quit_response syntax keyword pfmainConf lmtp_starttls_timeout syntax keyword pfmainConf lmtp_tcp_port syntax keyword pfmainConf lmtp_tls_CAfile syntax keyword pfmainConf lmtp_tls_CApath syntax keyword pfmainConf lmtp_tls_block_early_mail_reply syntax keyword pfmainConf lmtp_tls_cert_file syntax keyword pfmainConf lmtp_tls_ciphers syntax keyword pfmainConf lmtp_tls_dcert_file syntax keyword pfmainConf lmtp_tls_dkey_file syntax keyword pfmainConf lmtp_tls_eccert_file syntax keyword pfmainConf lmtp_tls_eckey_file syntax keyword pfmainConf lmtp_tls_enforce_peername syntax keyword pfmainConf lmtp_tls_exclude_ciphers syntax keyword pfmainConf lmtp_tls_fingerprint_cert_match syntax keyword pfmainConf lmtp_tls_fingerprint_digest syntax keyword pfmainConf lmtp_tls_force_insecure_host_tlsa_lookup syntax keyword pfmainConf lmtp_tls_key_file syntax keyword pfmainConf lmtp_tls_loglevel syntax keyword pfmainConf lmtp_tls_mandatory_ciphers syntax keyword pfmainConf lmtp_tls_mandatory_exclude_ciphers syntax keyword pfmainConf lmtp_tls_mandatory_protocols syntax keyword pfmainConf lmtp_tls_note_starttls_offer syntax keyword pfmainConf lmtp_tls_per_site syntax keyword pfmainConf lmtp_tls_policy_maps syntax keyword pfmainConf lmtp_tls_protocols syntax keyword pfmainConf lmtp_tls_scert_verifydepth syntax keyword pfmainConf lmtp_tls_secure_cert_match syntax keyword pfmainConf lmtp_tls_security_level syntax keyword pfmainConf lmtp_tls_session_cache_database syntax keyword pfmainConf lmtp_tls_session_cache_timeout syntax keyword pfmainConf lmtp_tls_trust_anchor_file syntax keyword pfmainConf lmtp_tls_verify_cert_match syntax keyword pfmainConf lmtp_use_tls syntax keyword pfmainConf lmtp_xforward_timeout syntax keyword pfmainConf local_command_shell syntax keyword pfmainConf local_delivery_status_filter syntax keyword pfmainConf local_destination_concurrency_limit syntax keyword pfmainConf local_destination_recipient_limit syntax keyword pfmainConf local_header_rewrite_clients syntax keyword pfmainConf local_recipient_maps syntax keyword pfmainConf local_transport syntax keyword pfmainConf luser_relay syntax keyword pfmainConf mail_name syntax keyword pfmainConf mail_owner syntax keyword pfmainConf mail_release_date syntax keyword pfmainConf mail_spool_directory syntax keyword pfmainConf mail_version syntax keyword pfmainConf mailbox_command syntax keyword pfmainConf mailbox_command_maps syntax keyword pfmainConf mailbox_delivery_lock syntax keyword pfmainConf mailbox_size_limit syntax keyword pfmainConf mailbox_transport syntax keyword pfmainConf mailbox_transport_maps syntax keyword pfmainConf mailq_path syntax keyword pfmainConf manpage_directory syntax keyword pfmainConf maps_rbl_domains syntax keyword pfmainConf maps_rbl_reject_code syntax keyword pfmainConf masquerade_classes syntax keyword pfmainConf masquerade_domains syntax keyword pfmainConf masquerade_exceptions syntax keyword pfmainConf master_service_disable syntax keyword pfmainConf max_idle syntax keyword pfmainConf max_use syntax keyword pfmainConf maximal_backoff_time syntax keyword pfmainConf maximal_queue_lifetime syntax keyword pfmainConf message_drop_headers syntax keyword pfmainConf message_reject_characters syntax keyword pfmainConf message_size_limit syntax keyword pfmainConf message_strip_characters syntax keyword pfmainConf meta_directory syntax keyword pfmainConf milter_command_timeout syntax keyword pfmainConf milter_connect_macros syntax keyword pfmainConf milter_connect_timeout syntax keyword pfmainConf milter_content_timeout syntax keyword pfmainConf milter_data_macros syntax keyword pfmainConf milter_default_action syntax keyword pfmainConf milter_end_of_data_macros syntax keyword pfmainConf milter_end_of_header_macros syntax keyword pfmainConf milter_header_checks syntax keyword pfmainConf milter_helo_macros syntax keyword pfmainConf milter_macro_daemon_name syntax keyword pfmainConf milter_macro_v syntax keyword pfmainConf milter_mail_macros syntax keyword pfmainConf milter_protocol syntax keyword pfmainConf milter_rcpt_macros syntax keyword pfmainConf milter_unknown_command_macros syntax keyword pfmainConf mime_boundary_length_limit syntax keyword pfmainConf mime_header_checks syntax keyword pfmainConf mime_nesting_limit syntax keyword pfmainConf minimal_backoff_time syntax keyword pfmainConf multi_instance_directories syntax keyword pfmainConf multi_instance_enable syntax keyword pfmainConf multi_instance_group syntax keyword pfmainConf multi_instance_name syntax keyword pfmainConf multi_instance_wrapper syntax keyword pfmainConf multi_recipient_bounce_reject_code syntax keyword pfmainConf mydestination syntax keyword pfmainConf mydomain syntax keyword pfmainConf myhostname syntax keyword pfmainConf mynetworks syntax keyword pfmainConf mynetworks_style syntax keyword pfmainConf myorigin syntax keyword pfmainConf nested_header_checks syntax keyword pfmainConf newaliases_path syntax keyword pfmainConf non_fqdn_reject_code syntax keyword pfmainConf non_smtpd_milters syntax keyword pfmainConf notify_classes syntax keyword pfmainConf nullmx_reject_code syntax keyword pfmainConf owner_request_special syntax keyword pfmainConf parent_domain_matches_subdomains syntax keyword pfmainConf permit_mx_backup_networks syntax keyword pfmainConf pickup_service_name syntax keyword pfmainConf pipe_delivery_status_filter syntax keyword pfmainConf plaintext_reject_code syntax keyword pfmainConf postmulti_control_commands syntax keyword pfmainConf postmulti_start_commands syntax keyword pfmainConf postmulti_stop_commands syntax keyword pfmainConf postscreen_access_list syntax keyword pfmainConf postscreen_bare_newline_action syntax keyword pfmainConf postscreen_bare_newline_enable syntax keyword pfmainConf postscreen_bare_newline_ttl syntax keyword pfmainConf postscreen_blacklist_action syntax keyword pfmainConf postscreen_cache_cleanup_interval syntax keyword pfmainConf postscreen_cache_map syntax keyword pfmainConf postscreen_cache_retention_time syntax keyword pfmainConf postscreen_client_connection_count_limit syntax keyword pfmainConf postscreen_command_count_limit syntax keyword pfmainConf postscreen_command_filter syntax keyword pfmainConf postscreen_command_time_limit syntax keyword pfmainConf postscreen_disable_vrfy_command syntax keyword pfmainConf postscreen_discard_ehlo_keyword_address_maps syntax keyword pfmainConf postscreen_discard_ehlo_keywords syntax keyword pfmainConf postscreen_dnsbl_action syntax keyword pfmainConf postscreen_dnsbl_reply_map syntax keyword pfmainConf postscreen_dnsbl_sites syntax keyword pfmainConf postscreen_dnsbl_threshold syntax keyword pfmainConf postscreen_dnsbl_timeout syntax keyword pfmainConf postscreen_dnsbl_ttl syntax keyword pfmainConf postscreen_dnsbl_whitelist_threshold syntax keyword pfmainConf postscreen_enforce_tls syntax keyword pfmainConf postscreen_expansion_filter syntax keyword pfmainConf postscreen_forbidden_commands syntax keyword pfmainConf postscreen_greet_action syntax keyword pfmainConf postscreen_greet_banner syntax keyword pfmainConf postscreen_greet_ttl syntax keyword pfmainConf postscreen_greet_wait syntax keyword pfmainConf postscreen_helo_required syntax keyword pfmainConf postscreen_non_smtp_command_action syntax keyword pfmainConf postscreen_non_smtp_command_enable syntax keyword pfmainConf postscreen_non_smtp_command_ttl syntax keyword pfmainConf postscreen_pipelining_action syntax keyword pfmainConf postscreen_pipelining_enable syntax keyword pfmainConf postscreen_pipelining_ttl syntax keyword pfmainConf postscreen_post_queue_limit syntax keyword pfmainConf postscreen_pre_queue_limit syntax keyword pfmainConf postscreen_reject_footer syntax keyword pfmainConf postscreen_tls_security_level syntax keyword pfmainConf postscreen_upstream_proxy_protocol syntax keyword pfmainConf postscreen_upstream_proxy_timeout syntax keyword pfmainConf postscreen_use_tls syntax keyword pfmainConf postscreen_watchdog_timeout syntax keyword pfmainConf postscreen_whitelist_interfaces syntax keyword pfmainConf prepend_delivered_header syntax keyword pfmainConf process_id syntax keyword pfmainConf process_id_directory syntax keyword pfmainConf process_name syntax keyword pfmainConf propagate_unmatched_extensions syntax keyword pfmainConf proxy_interfaces syntax keyword pfmainConf proxy_read_maps syntax keyword pfmainConf proxy_write_maps syntax keyword pfmainConf proxymap_service_name syntax keyword pfmainConf proxywrite_service_name syntax keyword pfmainConf qmgr_clog_warn_time syntax keyword pfmainConf qmgr_daemon_timeout syntax keyword pfmainConf qmgr_fudge_factor syntax keyword pfmainConf qmgr_ipc_timeout syntax keyword pfmainConf qmgr_message_active_limit syntax keyword pfmainConf qmgr_message_recipient_limit syntax keyword pfmainConf qmgr_message_recipient_minimum syntax keyword pfmainConf qmqpd_authorized_clients syntax keyword pfmainConf qmqpd_client_port_logging syntax keyword pfmainConf qmqpd_error_delay syntax keyword pfmainConf qmqpd_timeout syntax keyword pfmainConf queue_directory syntax keyword pfmainConf queue_file_attribute_count_limit syntax keyword pfmainConf queue_minfree syntax keyword pfmainConf queue_run_delay syntax keyword pfmainConf queue_service_name syntax keyword pfmainConf rbl_reply_maps syntax keyword pfmainConf readme_directory syntax keyword pfmainConf receive_override_options syntax keyword pfmainConf recipient_bcc_maps syntax keyword pfmainConf recipient_canonical_classes syntax keyword pfmainConf recipient_canonical_maps syntax keyword pfmainConf recipient_delimiter syntax keyword pfmainConf reject_code syntax keyword pfmainConf reject_tempfail_action syntax keyword pfmainConf relay_clientcerts syntax keyword pfmainConf relay_destination_concurrency_limit syntax keyword pfmainConf relay_destination_recipient_limit syntax keyword pfmainConf relay_domains syntax keyword pfmainConf relay_domains_reject_code syntax keyword pfmainConf relay_recipient_maps syntax keyword pfmainConf relay_transport syntax keyword pfmainConf relayhost syntax keyword pfmainConf relocated_maps syntax keyword pfmainConf remote_header_rewrite_domain syntax keyword pfmainConf require_home_directory syntax keyword pfmainConf reset_owner_alias syntax keyword pfmainConf resolve_dequoted_address syntax keyword pfmainConf resolve_null_domain syntax keyword pfmainConf resolve_numeric_domain syntax keyword pfmainConf rewrite_service_name syntax keyword pfmainConf sample_directory syntax keyword pfmainConf send_cyrus_sasl_authzid syntax keyword pfmainConf sender_based_routing syntax keyword pfmainConf sender_bcc_maps syntax keyword pfmainConf sender_canonical_classes syntax keyword pfmainConf sender_canonical_maps syntax keyword pfmainConf sender_dependent_default_transport_maps syntax keyword pfmainConf sender_dependent_relayhost_maps syntax keyword pfmainConf sendmail_fix_line_endings syntax keyword pfmainConf sendmail_path syntax keyword pfmainConf service_throttle_time syntax keyword pfmainConf setgid_group syntax keyword pfmainConf shlib_directory syntax keyword pfmainConf show_user_unknown_table_name syntax keyword pfmainConf showq_service_name syntax keyword pfmainConf smtp_address_preference syntax keyword pfmainConf smtp_address_verify_target syntax keyword pfmainConf smtp_always_send_ehlo syntax keyword pfmainConf smtp_bind_address syntax keyword pfmainConf smtp_bind_address6 syntax keyword pfmainConf smtp_body_checks syntax keyword pfmainConf smtp_cname_overrides_servername syntax keyword pfmainConf smtp_connect_timeout syntax keyword pfmainConf smtp_connection_cache_destinations syntax keyword pfmainConf smtp_connection_cache_on_demand syntax keyword pfmainConf smtp_connection_cache_time_limit syntax keyword pfmainConf smtp_connection_reuse_count_limit syntax keyword pfmainConf smtp_connection_reuse_time_limit syntax keyword pfmainConf smtp_data_done_timeout syntax keyword pfmainConf smtp_data_init_timeout syntax keyword pfmainConf smtp_data_xfer_timeout syntax keyword pfmainConf smtp_defer_if_no_mx_address_found syntax keyword pfmainConf smtp_delivery_status_filter syntax keyword pfmainConf smtp_destination_concurrency_limit syntax keyword pfmainConf smtp_destination_recipient_limit syntax keyword pfmainConf smtp_discard_ehlo_keyword_address_maps syntax keyword pfmainConf smtp_discard_ehlo_keywords syntax keyword pfmainConf smtp_dns_reply_filter syntax keyword pfmainConf smtp_dns_resolver_options syntax keyword pfmainConf smtp_dns_support_level syntax keyword pfmainConf smtp_enforce_tls syntax keyword pfmainConf smtp_fallback_relay syntax keyword pfmainConf smtp_generic_maps syntax keyword pfmainConf smtp_header_checks syntax keyword pfmainConf smtp_helo_name syntax keyword pfmainConf smtp_helo_timeout syntax keyword pfmainConf smtp_host_lookup syntax keyword pfmainConf smtp_line_length_limit syntax keyword pfmainConf smtp_mail_timeout syntax keyword pfmainConf smtp_mime_header_checks syntax keyword pfmainConf smtp_mx_address_limit syntax keyword pfmainConf smtp_mx_session_limit syntax keyword pfmainConf smtp_nested_header_checks syntax keyword pfmainConf smtp_never_send_ehlo syntax keyword pfmainConf smtp_per_record_deadline syntax keyword pfmainConf smtp_pix_workaround_delay_time syntax keyword pfmainConf smtp_pix_workaround_maps syntax keyword pfmainConf smtp_pix_workaround_threshold_time syntax keyword pfmainConf smtp_pix_workarounds syntax keyword pfmainConf smtp_quit_timeout syntax keyword pfmainConf smtp_quote_rfc821_envelope syntax keyword pfmainConf smtp_randomize_addresses syntax keyword pfmainConf smtp_rcpt_timeout syntax keyword pfmainConf smtp_reply_filter syntax keyword pfmainConf smtp_rset_timeout syntax keyword pfmainConf smtp_sasl_auth_cache_name syntax keyword pfmainConf smtp_sasl_auth_cache_time syntax keyword pfmainConf smtp_sasl_auth_enable syntax keyword pfmainConf smtp_sasl_auth_soft_bounce syntax keyword pfmainConf smtp_sasl_mechanism_filter syntax keyword pfmainConf smtp_sasl_password_maps syntax keyword pfmainConf smtp_sasl_path syntax keyword pfmainConf smtp_sasl_security_options syntax keyword pfmainConf smtp_sasl_tls_security_options syntax keyword pfmainConf smtp_sasl_tls_verified_security_options syntax keyword pfmainConf smtp_sasl_type syntax keyword pfmainConf smtp_send_dummy_mail_auth syntax keyword pfmainConf smtp_send_xforward_command syntax keyword pfmainConf smtp_sender_dependent_authentication syntax keyword pfmainConf smtp_skip_4xx_greeting syntax keyword pfmainConf smtp_skip_5xx_greeting syntax keyword pfmainConf smtp_skip_quit_response syntax keyword pfmainConf smtp_starttls_timeout syntax keyword pfmainConf smtp_tls_CAfile syntax keyword pfmainConf smtp_tls_CApath syntax keyword pfmainConf smtp_tls_block_early_mail_reply syntax keyword pfmainConf smtp_tls_cert_file syntax keyword pfmainConf smtp_tls_cipherlist syntax keyword pfmainConf smtp_tls_ciphers syntax keyword pfmainConf smtp_tls_dcert_file syntax keyword pfmainConf smtp_tls_dkey_file syntax keyword pfmainConf smtp_tls_eccert_file syntax keyword pfmainConf smtp_tls_eckey_file syntax keyword pfmainConf smtp_tls_enforce_peername syntax keyword pfmainConf smtp_tls_exclude_ciphers syntax keyword pfmainConf smtp_tls_fingerprint_cert_match syntax keyword pfmainConf smtp_tls_fingerprint_digest syntax keyword pfmainConf smtp_tls_force_insecure_host_tlsa_lookup syntax keyword pfmainConf smtp_tls_key_file syntax keyword pfmainConf smtp_tls_loglevel syntax keyword pfmainConf smtp_tls_mandatory_ciphers syntax keyword pfmainConf smtp_tls_mandatory_exclude_ciphers syntax keyword pfmainConf smtp_tls_mandatory_protocols syntax keyword pfmainConf smtp_tls_note_starttls_offer syntax keyword pfmainConf smtp_tls_per_site syntax keyword pfmainConf smtp_tls_policy_maps syntax keyword pfmainConf smtp_tls_protocols syntax keyword pfmainConf smtp_tls_scert_verifydepth syntax keyword pfmainConf smtp_tls_secure_cert_match syntax keyword pfmainConf smtp_tls_security_level syntax keyword pfmainConf smtp_tls_session_cache_database syntax keyword pfmainConf smtp_tls_session_cache_timeout syntax keyword pfmainConf smtp_tls_trust_anchor_file syntax keyword pfmainConf smtp_tls_verify_cert_match syntax keyword pfmainConf smtp_tls_wrappermode syntax keyword pfmainConf smtp_use_tls syntax keyword pfmainConf smtp_xforward_timeout syntax keyword pfmainConf smtpd_authorized_verp_clients syntax keyword pfmainConf smtpd_authorized_xclient_hosts syntax keyword pfmainConf smtpd_authorized_xforward_hosts syntax keyword pfmainConf smtpd_banner syntax keyword pfmainConf smtpd_client_connection_count_limit syntax keyword pfmainConf smtpd_client_connection_rate_limit syntax keyword pfmainConf smtpd_client_event_limit_exceptions syntax keyword pfmainConf smtpd_client_message_rate_limit syntax keyword pfmainConf smtpd_client_new_tls_session_rate_limit syntax keyword pfmainConf smtpd_client_port_logging syntax keyword pfmainConf smtpd_client_recipient_rate_limit syntax keyword pfmainConf smtpd_client_restrictions syntax keyword pfmainConf smtpd_command_filter syntax keyword pfmainConf smtpd_data_restrictions syntax keyword pfmainConf smtpd_delay_open_until_valid_rcpt syntax keyword pfmainConf smtpd_delay_reject syntax keyword pfmainConf smtpd_discard_ehlo_keyword_address_maps syntax keyword pfmainConf smtpd_discard_ehlo_keywords syntax keyword pfmainConf smtpd_dns_reply_filter syntax keyword pfmainConf smtpd_end_of_data_restrictions syntax keyword pfmainConf smtpd_enforce_tls syntax keyword pfmainConf smtpd_error_sleep_time syntax keyword pfmainConf smtpd_etrn_restrictions syntax keyword pfmainConf smtpd_expansion_filter syntax keyword pfmainConf smtpd_forbidden_commands syntax keyword pfmainConf smtpd_hard_error_limit syntax keyword pfmainConf smtpd_helo_required syntax keyword pfmainConf smtpd_helo_restrictions syntax keyword pfmainConf smtpd_history_flush_threshold syntax keyword pfmainConf smtpd_junk_command_limit syntax keyword pfmainConf smtpd_log_access_permit_actions syntax keyword pfmainConf smtpd_milters syntax keyword pfmainConf smtpd_noop_commands syntax keyword pfmainConf smtpd_null_access_lookup_key syntax keyword pfmainConf smtpd_peername_lookup syntax keyword pfmainConf smtpd_per_record_deadline syntax keyword pfmainConf smtpd_policy_service_default_action syntax keyword pfmainConf smtpd_policy_service_max_idle syntax keyword pfmainConf smtpd_policy_service_max_ttl syntax keyword pfmainConf smtpd_policy_service_request_limit syntax keyword pfmainConf smtpd_policy_service_retry_delay syntax keyword pfmainConf smtpd_policy_service_timeout syntax keyword pfmainConf smtpd_policy_service_try_limit syntax keyword pfmainConf smtpd_proxy_ehlo syntax keyword pfmainConf smtpd_proxy_filter syntax keyword pfmainConf smtpd_proxy_options syntax keyword pfmainConf smtpd_proxy_timeout syntax keyword pfmainConf smtpd_recipient_limit syntax keyword pfmainConf smtpd_recipient_overshoot_limit syntax keyword pfmainConf smtpd_recipient_restrictions syntax keyword pfmainConf smtpd_reject_footer syntax keyword pfmainConf smtpd_reject_unlisted_recipient syntax keyword pfmainConf smtpd_reject_unlisted_sender syntax keyword pfmainConf smtpd_relay_restrictions syntax keyword pfmainConf smtpd_restriction_classes syntax keyword pfmainConf smtpd_sasl_application_name syntax keyword pfmainConf smtpd_sasl_auth_enable syntax keyword pfmainConf smtpd_sasl_authenticated_header syntax keyword pfmainConf smtpd_sasl_exceptions_networks syntax keyword pfmainConf smtpd_sasl_local_domain syntax keyword pfmainConf smtpd_sasl_path syntax keyword pfmainConf smtpd_sasl_security_options syntax keyword pfmainConf smtpd_sasl_service syntax keyword pfmainConf smtpd_sasl_tls_security_options syntax keyword pfmainConf smtpd_sasl_type syntax keyword pfmainConf smtpd_sender_login_maps syntax keyword pfmainConf smtpd_sender_restrictions syntax keyword pfmainConf smtpd_service_name syntax keyword pfmainConf smtpd_soft_error_limit syntax keyword pfmainConf smtpd_starttls_timeout syntax keyword pfmainConf smtpd_timeout syntax keyword pfmainConf smtpd_tls_CAfile syntax keyword pfmainConf smtpd_tls_CApath syntax keyword pfmainConf smtpd_tls_always_issue_session_ids syntax keyword pfmainConf smtpd_tls_ask_ccert syntax keyword pfmainConf smtpd_tls_auth_only syntax keyword pfmainConf smtpd_tls_ccert_verifydepth syntax keyword pfmainConf smtpd_tls_cert_file syntax keyword pfmainConf smtpd_tls_cipherlist syntax keyword pfmainConf smtpd_tls_ciphers syntax keyword pfmainConf smtpd_tls_dcert_file syntax keyword pfmainConf smtpd_tls_dh1024_param_file syntax keyword pfmainConf smtpd_tls_dh512_param_file syntax keyword pfmainConf smtpd_tls_dkey_file syntax keyword pfmainConf smtpd_tls_eccert_file syntax keyword pfmainConf smtpd_tls_eckey_file syntax keyword pfmainConf smtpd_tls_eecdh_grade syntax keyword pfmainConf smtpd_tls_exclude_ciphers syntax keyword pfmainConf smtpd_tls_fingerprint_digest syntax keyword pfmainConf smtpd_tls_key_file syntax keyword pfmainConf smtpd_tls_loglevel syntax keyword pfmainConf smtpd_tls_mandatory_ciphers syntax keyword pfmainConf smtpd_tls_mandatory_exclude_ciphers syntax keyword pfmainConf smtpd_tls_mandatory_protocols syntax keyword pfmainConf smtpd_tls_protocols syntax keyword pfmainConf smtpd_tls_received_header syntax keyword pfmainConf smtpd_tls_req_ccert syntax keyword pfmainConf smtpd_tls_security_level syntax keyword pfmainConf smtpd_tls_session_cache_database syntax keyword pfmainConf smtpd_tls_session_cache_timeout syntax keyword pfmainConf smtpd_tls_wrappermode syntax keyword pfmainConf smtpd_upstream_proxy_protocol syntax keyword pfmainConf smtpd_upstream_proxy_timeout syntax keyword pfmainConf smtpd_use_tls syntax keyword pfmainConf smtputf8_autodetect_classes syntax keyword pfmainConf smtputf8_enable syntax keyword pfmainConf soft_bounce syntax keyword pfmainConf stale_lock_time syntax keyword pfmainConf stress syntax keyword pfmainConf strict_7bit_headers syntax keyword pfmainConf strict_8bitmime syntax keyword pfmainConf strict_8bitmime_body syntax keyword pfmainConf strict_mailbox_ownership syntax keyword pfmainConf strict_mime_encoding_domain syntax keyword pfmainConf strict_rfc821_envelopes syntax keyword pfmainConf strict_smtputf8 syntax keyword pfmainConf sun_mailtool_compatibility syntax keyword pfmainConf swap_bangpath syntax keyword pfmainConf syslog_facility syntax keyword pfmainConf syslog_name syntax keyword pfmainConf tcp_windowsize syntax keyword pfmainConf tls_append_default_CA syntax keyword pfmainConf tls_daemon_random_bytes syntax keyword pfmainConf tls_dane_digest_agility syntax keyword pfmainConf tls_dane_digests syntax keyword pfmainConf tls_dane_trust_anchor_digest_enable syntax keyword pfmainConf tls_disable_workarounds syntax keyword pfmainConf tls_eecdh_strong_curve syntax keyword pfmainConf tls_eecdh_ultra_curve syntax keyword pfmainConf tls_export_cipherlist syntax keyword pfmainConf tls_high_cipherlist syntax keyword pfmainConf tls_legacy_public_key_fingerprints syntax keyword pfmainConf tls_low_cipherlist syntax keyword pfmainConf tls_medium_cipherlist syntax keyword pfmainConf tls_null_cipherlist syntax keyword pfmainConf tls_preempt_cipherlist syntax keyword pfmainConf tls_random_bytes syntax keyword pfmainConf tls_random_exchange_name syntax keyword pfmainConf tls_random_prng_update_period syntax keyword pfmainConf tls_random_reseed_period syntax keyword pfmainConf tls_random_source syntax keyword pfmainConf tls_session_ticket_cipher syntax keyword pfmainConf tls_ssl_options syntax keyword pfmainConf tls_wildcard_matches_multiple_labels syntax keyword pfmainConf tlsmgr_service_name syntax keyword pfmainConf tlsproxy_enforce_tls syntax keyword pfmainConf tlsproxy_service_name syntax keyword pfmainConf tlsproxy_tls_CAfile syntax keyword pfmainConf tlsproxy_tls_CApath syntax keyword pfmainConf tlsproxy_tls_always_issue_session_ids syntax keyword pfmainConf tlsproxy_tls_ask_ccert syntax keyword pfmainConf tlsproxy_tls_ccert_verifydepth syntax keyword pfmainConf tlsproxy_tls_cert_file syntax keyword pfmainConf tlsproxy_tls_ciphers syntax keyword pfmainConf tlsproxy_tls_dcert_file syntax keyword pfmainConf tlsproxy_tls_dh1024_param_file syntax keyword pfmainConf tlsproxy_tls_dh512_param_file syntax keyword pfmainConf tlsproxy_tls_dkey_file syntax keyword pfmainConf tlsproxy_tls_eccert_file syntax keyword pfmainConf tlsproxy_tls_eckey_file syntax keyword pfmainConf tlsproxy_tls_eecdh_grade syntax keyword pfmainConf tlsproxy_tls_exclude_ciphers syntax keyword pfmainConf tlsproxy_tls_fingerprint_digest syntax keyword pfmainConf tlsproxy_tls_key_file syntax keyword pfmainConf tlsproxy_tls_loglevel syntax keyword pfmainConf tlsproxy_tls_mandatory_ciphers syntax keyword pfmainConf tlsproxy_tls_mandatory_exclude_ciphers syntax keyword pfmainConf tlsproxy_tls_mandatory_protocols syntax keyword pfmainConf tlsproxy_tls_protocols syntax keyword pfmainConf tlsproxy_tls_req_ccert syntax keyword pfmainConf tlsproxy_tls_security_level syntax keyword pfmainConf tlsproxy_tls_session_cache_timeout syntax keyword pfmainConf tlsproxy_use_tls syntax keyword pfmainConf tlsproxy_watchdog_timeout syntax keyword pfmainConf trace_service_name syntax keyword pfmainConf transport_delivery_slot_cost syntax keyword pfmainConf transport_delivery_slot_discount syntax keyword pfmainConf transport_delivery_slot_loan syntax keyword pfmainConf transport_destination_concurrency_failed_cohort_limit syntax keyword pfmainConf transport_destination_concurrency_limit syntax keyword pfmainConf transport_destination_concurrency_negative_feedback syntax keyword pfmainConf transport_destination_concurrency_positive_feedback syntax keyword pfmainConf transport_destination_rate_delay syntax keyword pfmainConf transport_destination_recipient_limit syntax keyword pfmainConf transport_extra_recipient_limit syntax keyword pfmainConf transport_initial_destination_concurrency syntax keyword pfmainConf transport_maps syntax keyword pfmainConf transport_minimum_delivery_slots syntax keyword pfmainConf transport_recipient_limit syntax keyword pfmainConf transport_recipient_refill_delay syntax keyword pfmainConf transport_recipient_refill_limit syntax keyword pfmainConf transport_retry_time syntax keyword pfmainConf transport_time_limit syntax keyword pfmainConf trigger_timeout syntax keyword pfmainConf undisclosed_recipients_header syntax keyword pfmainConf unknown_address_reject_code syntax keyword pfmainConf unknown_address_tempfail_action syntax keyword pfmainConf unknown_client_reject_code syntax keyword pfmainConf unknown_helo_hostname_tempfail_action syntax keyword pfmainConf unknown_hostname_reject_code syntax keyword pfmainConf unknown_local_recipient_reject_code syntax keyword pfmainConf unknown_relay_recipient_reject_code syntax keyword pfmainConf unknown_virtual_alias_reject_code syntax keyword pfmainConf unknown_virtual_mailbox_reject_code syntax keyword pfmainConf unverified_recipient_defer_code syntax keyword pfmainConf unverified_recipient_reject_code syntax keyword pfmainConf unverified_recipient_reject_reason syntax keyword pfmainConf unverified_recipient_tempfail_action syntax keyword pfmainConf unverified_sender_defer_code syntax keyword pfmainConf unverified_sender_reject_code syntax keyword pfmainConf unverified_sender_reject_reason syntax keyword pfmainConf unverified_sender_tempfail_action syntax keyword pfmainConf verp_delimiter_filter syntax keyword pfmainConf virtual_alias_address_length_limit syntax keyword pfmainConf virtual_alias_domains syntax keyword pfmainConf virtual_alias_expansion_limit syntax keyword pfmainConf virtual_alias_maps syntax keyword pfmainConf virtual_alias_recursion_limit syntax keyword pfmainConf virtual_delivery_status_filter syntax keyword pfmainConf virtual_destination_concurrency_limit syntax keyword pfmainConf virtual_destination_recipient_limit syntax keyword pfmainConf virtual_gid_maps syntax keyword pfmainConf virtual_mailbox_base syntax keyword pfmainConf virtual_mailbox_domains syntax keyword pfmainConf virtual_mailbox_limit syntax keyword pfmainConf virtual_mailbox_lock syntax keyword pfmainConf virtual_mailbox_maps syntax keyword pfmainConf virtual_maps syntax keyword pfmainConf virtual_minimum_uid syntax keyword pfmainConf virtual_transport syntax keyword pfmainConf virtual_uid_maps syntax match pfmainRef "$\<2bounce_notice_recipient\>" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax match pfmainRef "$\" syntax keyword pfmainWord accept syntax keyword pfmainWord all syntax keyword pfmainWord always syntax keyword pfmainWord check_address_map syntax keyword pfmainWord check_ccert_access syntax keyword pfmainWord check_client_a_access syntax keyword pfmainWord check_client_access syntax keyword pfmainWord check_client_mx_access syntax keyword pfmainWord check_client_ns_access syntax keyword pfmainWord check_etrn_access syntax keyword pfmainWord check_helo_a_access syntax keyword pfmainWord check_helo_access syntax keyword pfmainWord check_helo_mx_access syntax keyword pfmainWord check_helo_ns_access syntax keyword pfmainWord check_policy_service syntax keyword pfmainWord check_recipient_a_access syntax keyword pfmainWord check_recipient_access syntax keyword pfmainWord check_recipient_maps syntax keyword pfmainWord check_recipient_mx_access syntax keyword pfmainWord check_recipient_ns_access syntax keyword pfmainWord check_relay_domains syntax keyword pfmainWord check_reverse_client_hostname_a_access syntax keyword pfmainWord check_reverse_client_hostname_access syntax keyword pfmainWord check_reverse_client_hostname_mx_access syntax keyword pfmainWord check_reverse_client_hostname_ns_access syntax keyword pfmainWord check_sasl_access syntax keyword pfmainWord check_sender_a_access syntax keyword pfmainWord check_sender_access syntax keyword pfmainWord check_sender_mx_access syntax keyword pfmainWord check_sender_ns_access syntax keyword pfmainWord class syntax keyword pfmainWord client_address syntax keyword pfmainWord client_port syntax keyword pfmainWord dane syntax keyword pfmainWord dane-only syntax keyword pfmainWord defer syntax keyword pfmainWord defer_if_permit syntax keyword pfmainWord defer_if_reject syntax keyword pfmainWord defer_unauth_destination syntax keyword pfmainWord disabled syntax keyword pfmainWord dns syntax keyword pfmainWord dnssec syntax keyword pfmainWord drop syntax keyword pfmainWord dunno syntax keyword pfmainWord enabled syntax keyword pfmainWord encrypt syntax keyword pfmainWord enforce syntax keyword pfmainWord envelope_recipient syntax keyword pfmainWord envelope_sender syntax keyword pfmainWord export syntax keyword pfmainWord fingerprint syntax keyword pfmainWord header_recipient syntax keyword pfmainWord header_sender syntax keyword pfmainWord high syntax keyword pfmainWord host syntax keyword pfmainWord ignore syntax keyword pfmainWord ipv4 syntax keyword pfmainWord ipv6 syntax keyword pfmainWord localtime syntax keyword pfmainWord low syntax keyword pfmainWord may syntax keyword pfmainWord maybe syntax keyword pfmainWord medium syntax keyword pfmainWord native syntax keyword pfmainWord never syntax keyword pfmainWord no_address_mappings syntax keyword pfmainWord no_header_body_checks syntax keyword pfmainWord no_header_reply syntax keyword pfmainWord no_milters syntax keyword pfmainWord no_unknown_recipient_checks syntax keyword pfmainWord none syntax keyword pfmainWord null syntax keyword pfmainWord off syntax keyword pfmainWord on syntax keyword pfmainWord permit syntax keyword pfmainWord permit_auth_destination syntax keyword pfmainWord permit_dnswl_client syntax keyword pfmainWord permit_inet_interfaces syntax keyword pfmainWord permit_mx_backup syntax keyword pfmainWord permit_mynetworks syntax keyword pfmainWord permit_naked_ip_address syntax keyword pfmainWord permit_rhswl_client syntax keyword pfmainWord permit_sasl_authenticated syntax keyword pfmainWord permit_tls_all_clientcerts syntax keyword pfmainWord permit_tls_clientcerts syntax keyword pfmainWord quarantine syntax keyword pfmainWord reject syntax keyword pfmainWord reject_authenticated_sender_login_mismatch syntax keyword pfmainWord reject_invalid_helo_hostname syntax keyword pfmainWord reject_invalid_hostname syntax keyword pfmainWord reject_known_sender_login_mismatch syntax keyword pfmainWord reject_maps_rbl syntax keyword pfmainWord reject_multi_recipient_bounce syntax keyword pfmainWord reject_non_fqdn_helo_hostname syntax keyword pfmainWord reject_non_fqdn_hostname syntax keyword pfmainWord reject_non_fqdn_recipient syntax keyword pfmainWord reject_non_fqdn_sender syntax keyword pfmainWord reject_plaintext_session syntax keyword pfmainWord reject_rbl syntax keyword pfmainWord reject_rbl_client syntax keyword pfmainWord reject_rhsbl_client syntax keyword pfmainWord reject_rhsbl_helo syntax keyword pfmainWord reject_rhsbl_recipient syntax keyword pfmainWord reject_rhsbl_reverse_client syntax keyword pfmainWord reject_rhsbl_sender syntax keyword pfmainWord reject_sender_login_mismatch syntax keyword pfmainWord reject_unauth_destination syntax keyword pfmainWord reject_unauth_pipelining syntax keyword pfmainWord reject_unauthenticated_sender_login_mismatch syntax keyword pfmainWord reject_unknown_address syntax keyword pfmainWord reject_unknown_client syntax keyword pfmainWord reject_unknown_client_hostname syntax keyword pfmainWord reject_unknown_forward_client_hostname syntax keyword pfmainWord reject_unknown_helo_hostname syntax keyword pfmainWord reject_unknown_hostname syntax keyword pfmainWord reject_unknown_recipient_domain syntax keyword pfmainWord reject_unknown_reverse_client_hostname syntax keyword pfmainWord reject_unknown_sender_domain syntax keyword pfmainWord reject_unlisted_recipient syntax keyword pfmainWord reject_unlisted_sender syntax keyword pfmainWord reject_unverified_recipient syntax keyword pfmainWord reject_unverified_sender syntax keyword pfmainWord secure syntax keyword pfmainWord server_name syntax keyword pfmainWord sleep syntax keyword pfmainWord smtpd_access_maps syntax keyword pfmainWord speed_adjust syntax keyword pfmainWord strong syntax keyword pfmainWord subnet syntax keyword pfmainWord tempfail syntax keyword pfmainWord ultra syntax keyword pfmainWord warn_if_reject syntax keyword pfmainWord CRYPTOPRO_TLSEXT_BUG syntax keyword pfmainWord DONT_INSERT_EMPTY_FRAGMENTS syntax keyword pfmainWord LEGACY_SERVER_CONNECT syntax keyword pfmainWord MICROSOFT_BIG_SSLV3_BUFFER syntax keyword pfmainWord MICROSOFT_SESS_ID_BUG syntax keyword pfmainWord MSIE_SSLV2_RSA_PADDING syntax keyword pfmainWord NETSCAPE_CHALLENGE_BUG syntax keyword pfmainWord NETSCAPE_REUSE_CIPHER_CHANGE_BUG syntax keyword pfmainWord SSLEAY_080_CLIENT_DH_BUG syntax keyword pfmainWord SSLREF2_REUSE_CERT_TYPE_BUG syntax keyword pfmainWord TLS_BLOCK_PADDING_BUG syntax keyword pfmainWord TLS_D5_BUG syntax keyword pfmainWord TLS_ROLLBACK_BUG syntax keyword pfmainDict btree cidr environ hash nis pcre proxy regexp sdbm static tcp unix syntax keyword pfmainQueueDir incoming active deferred corrupt hold syntax keyword pfmainTransport smtp lmtp unix local relay uucp virtual syntax keyword pfmainLock fcntl flock dotlock syntax keyword pfmainAnswer yes no syntax match pfmainComment "#.*$" syntax match pfmainNumber "\<\d\+\>" syntax match pfmainTime "\<\d\+[hmsd]\>" syntax match pfmainIP "\<\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\>" syntax match pfmainVariable "\$\w\+" contains=pfmainRef syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\<2bounce\>" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" syntax match pfmainSpecial "\" hi def link pfmainConf Statement hi def link pfmainRef PreProc hi def link pfmainWord identifier hi def link pfmainDict Type hi def link pfmainQueueDir Constant hi def link pfmainTransport Constant hi def link pfmainLock Constant hi def link pfmainAnswer Constant hi def link pfmainComment Comment hi def link pfmainNumber Number hi def link pfmainTime Number hi def link pfmainIP Number hi def link pfmainVariable Error hi def link pfmainSpecial Special let b:current_syntax = "pfmain" " vim: ts=8 sw=2 PK&]c5WWvim80/syntax/groovy.vimnu[" Vim syntax file " Language: Groovy " Original Author: Alessio Pace " Maintainer: Tobias Rapp " Version: 0.1.16 " URL: http://www.vim.org/scripts/script.php?script_id=945 " Last Change: 2016 May 23 " THE ORIGINAL AUTHOR'S NOTES: " " This is my very first vim script, I hope to have " done it the right way. " " I must directly or indirectly thank the author of java.vim and ruby.vim: " I copied from them most of the stuff :-) " " Relies on html.vim " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded " " HOWTO USE IT (INSTALL) when not part of the distribution: " " 1) copy the file in the (global or user's $HOME/.vim/syntax/) syntax folder " " 2) add this line to recognize groovy files by filename extension: " " au BufNewFile,BufRead *.groovy setf groovy " in the global vim filetype.vim file or inside $HOME/.vim/filetype.vim " " 3) add this part to recognize by content groovy script (no extension needed :-) " " if did_filetype() " finish " endif " if getline(1) =~ '^#!.*[/\\]groovy\>' " setf groovy " endif " " in the global scripts.vim file or in $HOME/.vim/scripts.vim " " 4) open/write a .groovy file or a groovy script :-) " " Let me know if you like it or send me patches, so that I can improve it " when I have time " quit when a syntax file was already loaded if !exists("main_syntax") if exists("b:current_syntax") finish endif " we define it here so that included files can test for it let main_syntax='groovy' endif let s:cpo_save = &cpo set cpo&vim " ########################## " Java stuff taken from java.vim " some characters that cannot be in a groovy program (outside a string) " syn match groovyError "[\\@`]" "syn match groovyError "<<<\|\.\.\|=>\|<>\|||=\|&&=\|[^-]->\|\*\/" "syn match groovyOK "\.\.\." " keyword definitions syn keyword groovyExternal native package syn match groovyExternal "\\(\s\+static\>\)\?" syn keyword groovyError goto const syn keyword groovyConditional if else switch syn keyword groovyRepeat while for do syn keyword groovyBoolean true false syn keyword groovyConstant null syn keyword groovyTypedef this super syn keyword groovyOperator new instanceof syn keyword groovyType boolean char byte short int long float double syn keyword groovyType void syn keyword groovyType Integer Double Date Boolean Float String Array Vector List syn keyword groovyStatement return syn keyword groovyStorageClass static synchronized transient volatile final strictfp serializable syn keyword groovyExceptions throw try catch finally syn keyword groovyAssert assert syn keyword groovyMethodDecl synchronized throws syn keyword groovyClassDecl extends implements interface " to differentiate the keyword class from MyClass.class we use a match here syn match groovyTypedef "\.\s*\"ms=s+1 syn keyword groovyClassDecl enum syn match groovyClassDecl "^class\>" syn match groovyClassDecl "[^.]\s*\"ms=s+1 syn keyword groovyBranch break continue nextgroup=groovyUserLabelRef skipwhite syn match groovyUserLabelRef "\k\+" contained syn keyword groovyScopeDecl public protected private abstract if exists("groovy_highlight_groovy_lang_ids") || exists("groovy_highlight_groovy_lang") || exists("groovy_highlight_all") " groovy.lang.* syn keyword groovyLangClass Closure MetaMethod GroovyObject syn match groovyJavaLangClass "\" syn keyword groovyJavaLangClass Cloneable Comparable Runnable Serializable Boolean Byte Class Object syn keyword groovyJavaLangClass Character CharSequence ClassLoader Compiler " syn keyword groovyJavaLangClass Integer Double Float Long syn keyword groovyJavaLangClass InheritableThreadLocal Math Number Object Package Process syn keyword groovyJavaLangClass Runtime RuntimePermission InheritableThreadLocal syn keyword groovyJavaLangClass SecurityManager Short StrictMath StackTraceElement syn keyword groovyJavaLangClass StringBuffer Thread ThreadGroup syn keyword groovyJavaLangClass ThreadLocal Throwable Void ArithmeticException syn keyword groovyJavaLangClass ArrayIndexOutOfBoundsException AssertionError syn keyword groovyJavaLangClass ArrayStoreException ClassCastException syn keyword groovyJavaLangClass ClassNotFoundException syn keyword groovyJavaLangClass CloneNotSupportedException Exception syn keyword groovyJavaLangClass IllegalAccessException syn keyword groovyJavaLangClass IllegalArgumentException syn keyword groovyJavaLangClass IllegalMonitorStateException syn keyword groovyJavaLangClass IllegalStateException syn keyword groovyJavaLangClass IllegalThreadStateException syn keyword groovyJavaLangClass IndexOutOfBoundsException syn keyword groovyJavaLangClass InstantiationException InterruptedException syn keyword groovyJavaLangClass NegativeArraySizeException NoSuchFieldException syn keyword groovyJavaLangClass NoSuchMethodException NullPointerException syn keyword groovyJavaLangClass NumberFormatException RuntimeException syn keyword groovyJavaLangClass SecurityException StringIndexOutOfBoundsException syn keyword groovyJavaLangClass UnsupportedOperationException syn keyword groovyJavaLangClass AbstractMethodError ClassCircularityError syn keyword groovyJavaLangClass ClassFormatError Error ExceptionInInitializerError syn keyword groovyJavaLangClass IllegalAccessError InstantiationError syn keyword groovyJavaLangClass IncompatibleClassChangeError InternalError syn keyword groovyJavaLangClass LinkageError NoClassDefFoundError syn keyword groovyJavaLangClass NoSuchFieldError NoSuchMethodError syn keyword groovyJavaLangClass OutOfMemoryError StackOverflowError syn keyword groovyJavaLangClass ThreadDeath UnknownError UnsatisfiedLinkError syn keyword groovyJavaLangClass UnsupportedClassVersionError VerifyError syn keyword groovyJavaLangClass VirtualMachineError syn keyword groovyJavaLangObject clone equals finalize getClass hashCode syn keyword groovyJavaLangObject notify notifyAll toString wait hi def link groovyLangClass groovyConstant hi def link groovyJavaLangClass groovyExternal hi def link groovyJavaLangObject groovyConstant syn cluster groovyTop add=groovyJavaLangObject,groovyJavaLangClass,groovyLangClass syn cluster groovyClasses add=groovyJavaLangClass,groovyLangClass endif " Groovy stuff syn match groovyOperator "\.\." syn match groovyOperator "<\{2,3}" syn match groovyOperator ">\{2,3}" syn match groovyOperator "->" syn match groovyLineComment '^\%1l#!.*' " Shebang line syn match groovyExceptions "\\|\<[A-Z]\{1,}[a-zA-Z0-9]*Exception\>" " Groovy JDK stuff syn keyword groovyJDKBuiltin as def in syn keyword groovyJDKOperOverl div minus plus abs round power multiply syn keyword groovyJDKMethods each call inject sort print println syn keyword groovyJDKMethods getAt putAt size push pop toList getText writeLine eachLine readLines syn keyword groovyJDKMethods withReader withStream withWriter withPrintWriter write read leftShift syn keyword groovyJDKMethods withWriterAppend readBytes splitEachLine syn keyword groovyJDKMethods newInputStream newOutputStream newPrintWriter newReader newWriter syn keyword groovyJDKMethods compareTo next previous isCase syn keyword groovyJDKMethods times step toInteger upto any collect dump every find findAll grep syn keyword groovyJDKMethods inspect invokeMethods join syn keyword groovyJDKMethods getErr getIn getOut waitForOrKill syn keyword groovyJDKMethods count tokenize asList flatten immutable intersect reverse reverseEach syn keyword groovyJDKMethods subMap append asWritable eachByte eachLine eachFile syn cluster groovyTop add=groovyJDKBuiltin,groovyJDKOperOverl,groovyJDKMethods " no useful I think, so I comment it.. "if filereadable(expand(":p:h")."/groovyid.vim") " source :p:h/groovyid.vim "endif if exists("groovy_space_errors") if !exists("groovy_no_trail_space_error") syn match groovySpaceError "\s\+$" endif if !exists("groovy_no_tab_space_error") syn match groovySpaceError " \+\t"me=e-1 endif endif " it is a better case construct than java.vim to match groovy syntax syn region groovyLabelRegion transparent matchgroup=groovyLabel start="\" matchgroup=NONE end=":\|$" contains=groovyNumber,groovyString,groovyLangClass,groovyJavaLangClass syn match groovyUserLabel "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=groovyLabel syn keyword groovyLabel default if !exists("groovy_allow_cpp_keywords") syn keyword groovyError auto delete extern friend inline redeclared syn keyword groovyError register signed sizeof struct template typedef union syn keyword groovyError unsigned operator endif " The following cluster contains all groovy groups except the contained ones syn cluster groovyTop add=groovyExternal,groovyError,groovyError,groovyBranch,groovyLabelRegion,groovyLabel,groovyConditional,groovyRepeat,groovyBoolean,groovyConstant,groovyTypedef,groovyOperator,groovyType,groovyType,groovyStatement,groovyStorageClass,groovyAssert,groovyExceptions,groovyMethodDecl,groovyClassDecl,groovyClassDecl,groovyClassDecl,groovyScopeDecl,groovyError,groovyError2,groovyUserLabel,groovyLangObject " Comments syn keyword groovyTodo contained TODO FIXME XXX if exists("groovy_comment_strings") syn region groovyCommentString contained start=+"+ end=+"+ end=+$+ end=+\*/+me=s-1,he=s-1 contains=groovySpecial,groovyCommentStar,groovySpecialChar,@Spell syn region groovyComment2String contained start=+"+ end=+$\|"+ contains=groovySpecial,groovySpecialChar,@Spell syn match groovyCommentCharacter contained "'\\[^']\{1,6\}'" contains=groovySpecialChar syn match groovyCommentCharacter contained "'\\''" contains=groovySpecialChar syn match groovyCommentCharacter contained "'[^\\]'" syn cluster groovyCommentSpecial add=groovyCommentString,groovyCommentCharacter,groovyNumber syn cluster groovyCommentSpecial2 add=groovyComment2String,groovyCommentCharacter,groovyNumber endif syn region groovyComment start="/\*" end="\*/" contains=@groovyCommentSpecial,groovyTodo,@Spell syn match groovyCommentStar contained "^\s*\*[^/]"me=e-1 syn match groovyCommentStar contained "^\s*\*$" syn match groovyLineComment "//.*" contains=@groovyCommentSpecial2,groovyTodo,@Spell hi def link groovyCommentString groovyString hi def link groovyComment2String groovyString hi def link groovyCommentCharacter groovyCharacter syn cluster groovyTop add=groovyComment,groovyLineComment if !exists("groovy_ignore_groovydoc") && main_syntax != 'jsp' syntax case ignore " syntax coloring for groovydoc comments (HTML) " syntax include @groovyHtml :p:h/html.vim syntax include @groovyHtml runtime! syntax/html.vim unlet b:current_syntax syntax spell default " added by Bram syn region groovyDocComment start="/\*\*" end="\*/" keepend contains=groovyCommentTitle,@groovyHtml,groovyDocTags,groovyTodo,@Spell syn region groovyCommentTitle contained matchgroup=groovyDocComment start="/\*\*" matchgroup=groovyCommentTitle keepend end="\.$" end="\.[ \t\r<&]"me=e-1 end="[^{]@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=@groovyHtml,groovyCommentStar,groovyTodo,@Spell,groovyDocTags syn region groovyDocTags contained start="{@\(link\|linkplain\|inherit[Dd]oc\|doc[rR]oot\|value\)" end="}" syn match groovyDocTags contained "@\(see\|param\|exception\|throws\|since\)\s\+\S\+" contains=groovyDocParam syn match groovyDocParam contained "\s\S\+" syn match groovyDocTags contained "@\(version\|author\|return\|deprecated\|serial\|serialField\|serialData\)\>" syntax case match endif " match the special comment /**/ syn match groovyComment "/\*\*/" " Strings and constants syn match groovySpecialError contained "\\." syn match groovySpecialCharError contained "[^']" syn match groovySpecialChar contained "\\\([4-9]\d\|[0-3]\d\d\|[\"\\'ntbrf]\|u\x\{4\}\|\$\)" syn match groovyRegexChar contained "\\." syn region groovyString start=+"+ end=+"+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr syn region groovyString start=+'+ end=+'+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell syn region groovyString start=+"""+ end=+"""+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr syn region groovyString start=+'''+ end=+'''+ contains=groovySpecialChar,groovySpecialError,@Spell if exists("groovy_regex_strings") " regex strings interfere with the division operator and thus are disabled " by default syn region groovyString start='/[^/*]' end='/' contains=groovySpecialChar,groovyRegexChar,groovyELExpr endif " syn region groovyELExpr start=+${+ end=+}+ keepend contained syn match groovyELExpr /\${.\{-}}/ contained syn match groovyELExpr /\$[a-zA-Z_][a-zA-Z0-9_.]*/ contained hi def link groovyELExpr Identifier " TODO: better matching. I am waiting to understand how it really works in groovy " syn region groovyClosureParamsBraces start=+|+ end=+|+ contains=groovyClosureParams " syn match groovyClosureParams "[ a-zA-Z0-9_*]\+" contained " hi def link groovyClosureParams Identifier " next line disabled, it can cause a crash for a long line "syn match groovyStringError +"\([^"\\]\|\\.\)*$+ " disabled: in groovy strings or characters are written the same " syn match groovyCharacter "'[^']*'" contains=groovySpecialChar,groovySpecialCharError " syn match groovyCharacter "'\\''" contains=groovySpecialChar " syn match groovyCharacter "'[^\\]'" syn match groovyNumber "\<\(0[0-7]*\|0[xX]\x\+\|\d\+\)[lL]\=\>" syn match groovyNumber "\(\<\d\+\.\d*\|\.\d\+\)\([eE][-+]\=\d\+\)\=[fFdD]\=" syn match groovyNumber "\<\d\+[eE][-+]\=\d\+[fFdD]\=\>" syn match groovyNumber "\<\d\+\([eE][-+]\=\d\+\)\=[fFdD]\>" " unicode characters syn match groovySpecial "\\u\d\{4\}" syn cluster groovyTop add=groovyString,groovyCharacter,groovyNumber,groovySpecial,groovyStringError if exists("groovy_highlight_functions") if groovy_highlight_functions == "indent" syn match groovyFuncDef "^\(\t\| \{8\}\)[_$a-zA-Z][_$a-zA-Z0-9_. \[\]]*([^-+*/()]*)" contains=groovyScopeDecl,groovyType,groovyStorageClass,@groovyClasses syn region groovyFuncDef start=+^\(\t\| \{8\}\)[$_a-zA-Z][$_a-zA-Z0-9_. \[\]]*([^-+*/()]*,\s*+ end=+)+ contains=groovyScopeDecl,groovyType,groovyStorageClass,@groovyClasses syn match groovyFuncDef "^ [$_a-zA-Z][$_a-zA-Z0-9_. \[\]]*([^-+*/()]*)" contains=groovyScopeDecl,groovyType,groovyStorageClass,@groovyClasses syn region groovyFuncDef start=+^ [$_a-zA-Z][$_a-zA-Z0-9_. \[\]]*([^-+*/()]*,\s*+ end=+)+ contains=groovyScopeDecl,groovyType,groovyStorageClass,@groovyClasses else " This line catches method declarations at any indentation>0, but it assumes " two things: " 1. class names are always capitalized (ie: Button) " 2. method names are never capitalized (except constructors, of course) syn region groovyFuncDef start=+^\s\+\(\(public\|protected\|private\|static\|abstract\|final\|native\|synchronized\)\s\+\)*\(\(void\|boolean\|char\|byte\|short\|int\|long\|float\|double\|\([A-Za-z_][A-Za-z0-9_$]*\.\)*[A-Z][A-Za-z0-9_$]*\)\(<[^>]*>\)\=\(\[\]\)*\s\+[a-z][A-Za-z0-9_$]*\|[A-Z][A-Za-z0-9_$]*\)\s*([^0-9]+ end=+)+ contains=groovyScopeDecl,groovyType,groovyStorageClass,groovyComment,groovyLineComment,@groovyClasses endif syn match groovyBraces "[{}]" syn cluster groovyTop add=groovyFuncDef,groovyBraces endif if exists("groovy_highlight_debug") " Strings and constants syn match groovyDebugSpecial contained "\\\d\d\d\|\\." syn region groovyDebugString contained start=+"+ end=+"+ contains=groovyDebugSpecial syn match groovyDebugStringError +"\([^"\\]\|\\.\)*$+ syn match groovyDebugCharacter contained "'[^\\]'" syn match groovyDebugSpecialCharacter contained "'\\.'" syn match groovyDebugSpecialCharacter contained "'\\''" syn match groovyDebugNumber contained "\<\(0[0-7]*\|0[xX]\x\+\|\d\+\)[lL]\=\>" syn match groovyDebugNumber contained "\(\<\d\+\.\d*\|\.\d\+\)\([eE][-+]\=\d\+\)\=[fFdD]\=" syn match groovyDebugNumber contained "\<\d\+[eE][-+]\=\d\+[fFdD]\=\>" syn match groovyDebugNumber contained "\<\d\+\([eE][-+]\=\d\+\)\=[fFdD]\>" syn keyword groovyDebugBoolean contained true false syn keyword groovyDebugType contained null this super syn region groovyDebugParen start=+(+ end=+)+ contained contains=groovyDebug.*,groovyDebugParen " to make this work you must define the highlighting for these groups syn match groovyDebug "\\|\<[A-Z]\{1,}[a-zA-Z0-9]*Exception\>" if !exists("groovy_minlines") let groovy_minlines = 10 endif exec "syn sync ccomment groovyComment minlines=" . groovy_minlines " ################### " Groovy stuff " syn match groovyOperator "|[ ,a-zA-Z0-9_*]\+|" " All groovy valid tokens " syn match groovyTokens ";\|,\|<=>\|<>\|:\|:=\|>\|>=\|=\|==\|<\|<=\|!=\|/\|/=\|\.\.|\.\.\.\|\~=\|\~==" " syn match groovyTokens "\*=\|&\|&=\|\*\|->\|\~\|+\|-\|/\|?\|<<<\|>>>\|<<\|>>" " Must put explicit these ones because groovy.vim mark them as errors otherwise " syn match groovyTokens "<=>\|<>\|==\~" "syn cluster groovyTop add=groovyTokens " Mark these as operators " Hightlight brackets " syn match groovyBraces "[{}]" " syn match groovyBraces "[\[\]]" " syn match groovyBraces "[\|]" if exists("groovy_mark_braces_in_parens_as_errors") syn match groovyInParen contained "[{}]" hi def link groovyInParen groovyError syn cluster groovyTop add=groovyInParen endif " catch errors caused by wrong parenthesis syn region groovyParenT transparent matchgroup=groovyParen start="(" end=")" contains=@groovyTop,groovyParenT1 syn region groovyParenT1 transparent matchgroup=groovyParen1 start="(" end=")" contains=@groovyTop,groovyParenT2 contained syn region groovyParenT2 transparent matchgroup=groovyParen2 start="(" end=")" contains=@groovyTop,groovyParenT contained syn match groovyParenError ")" hi def link groovyParenError groovyError " catch errors caused by wrong square parenthesis syn region groovyParenT transparent matchgroup=groovyParen start="\[" end="\]" contains=@groovyTop,groovyParenT1 syn region groovyParenT1 transparent matchgroup=groovyParen1 start="\[" end="\]" contains=@groovyTop,groovyParenT2 contained syn region groovyParenT2 transparent matchgroup=groovyParen2 start="\[" end="\]" contains=@groovyTop,groovyParenT contained syn match groovyParenError "\]" " ############################### " java.vim default highlighting hi def link groovyFuncDef Function hi def link groovyBraces Function hi def link groovyBranch Conditional hi def link groovyUserLabelRef groovyUserLabel hi def link groovyLabel Label hi def link groovyUserLabel Label hi def link groovyConditional Conditional hi def link groovyRepeat Repeat hi def link groovyExceptions Exception hi def link groovyAssert Statement hi def link groovyStorageClass StorageClass hi def link groovyMethodDecl groovyStorageClass hi def link groovyClassDecl groovyStorageClass hi def link groovyScopeDecl groovyStorageClass hi def link groovyBoolean Boolean hi def link groovySpecial Special hi def link groovySpecialError Error hi def link groovySpecialCharError Error hi def link groovyString String hi def link groovyRegexChar String hi def link groovyCharacter Character hi def link groovySpecialChar SpecialChar hi def link groovyNumber Number hi def link groovyError Error hi def link groovyStringError Error hi def link groovyStatement Statement hi def link groovyOperator Operator hi def link groovyComment Comment hi def link groovyDocComment Comment hi def link groovyLineComment Comment hi def link groovyConstant Constant hi def link groovyTypedef Typedef hi def link groovyTodo Todo hi def link groovyCommentTitle SpecialComment hi def link groovyDocTags Special hi def link groovyDocParam Function hi def link groovyCommentStar groovyComment hi def link groovyType Type hi def link groovyExternal Include hi def link htmlComment Special hi def link htmlCommentPart Special hi def link groovySpaceError Error hi def link groovyJDKBuiltin Special hi def link groovyJDKOperOverl Operator hi def link groovyJDKMethods Function let b:current_syntax = "groovy" if main_syntax == 'groovy' unlet main_syntax endif let b:spell_options="contained" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]5!!vim80/syntax/perl6.vimnu[" Vim syntax file " Language: Perl 6 " Maintainer: vim-perl " Homepage: http://github.com/vim-perl/vim-perl/tree/master " Bugs/requests: http://github.com/vim-perl/vim-perl/issues " Last Change: 2013-07-21 " Contributors: Luke Palmer " Moritz Lenz " Hinrik Örn Sigurðsson " " This is a big undertaking. Perl 6 is the sort of language that only Perl " can parse. But I'll do my best to get vim to. " " You can associate the extension ".pl" with the filetype "perl6" by setting " autocmd BufNewFile,BufRead *.pl setf perl6 " in your ~/.vimrc. But that will infringe on Perl 5, so you might want to " put a modeline near the beginning or end of your Perl 6 files instead: " # vim: filetype=perl6 " TODO: " * Deal with s:Perl5// " * m:s// is a match, not a substitution " * Make these highlight as strings, not operators: " <==> <=:=> <===> <=~> <« »> «>» «<» " * Allow more keywords to match as function calls(leave() is export(), etc) " * Optimization: use nextgroup instead of lookaround (:help syn-nextgroup) " * Fix s''' substitutions being matched as package names " * Match s/// and m/// better, so things like "$s/" won't match " * Add more support for folding (:help syn-fold) " * Add more syntax syncing hooks (:help syn-sync) " * Q//: " :to, :heredoc " interpolate \q:s{$scalar} (though the spec isn't very clear on it) " " Impossible TODO?: " * Unspace " * Unicode bracketing characters for quoting (there are so many) " * Various tricks depending on context. I.e. we can't know when Perl " expects «*» to be a string or a hyperoperator. The latter is presumably " more common, so that's what we assume. " * Selective highlighting of Pod formatting codes with the :allow option " * Arbitrary number, order, and negation of adverbs to Q//, q//, qq//. " Currently only the first adverb is considered significant. Anything " more would require an exponential amount of regexes, making this " already slow syntax file even slower. " " If you want to have Pir code inside Q:PIR// strings highlighted, do: " let perl6_embedded_pir=1 " " The above requires pir.vim, which you can find in Parrot's repository: " https://svn.parrot.org/parrot/trunk/editor/ " " Some less than crucial things have been made optional to speed things up. " Look at the comments near the if/else branches in this file to see exactly " which features are affected. "perl6_extended_all" enables everything. " " The defaults are: " " unlet perl6_extended_comments " unlet perl6_extended_q " unlet perl6_extended_all " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:keepcpo= &cpo set cpo&vim " identifiers syn match p6Normal display "\K\%(\k\|[-']\K\@=\)*" " This is used in the for loops below " Don't use the "syn keyword" construct because that always has higher " priority than matches/regions, so the words can't be autoquoted with " the "=>" and "p5=>" operators. All the lookaround stuff is to make sure " we don't match them as part of some other identifier. let s:before_keyword = " display \"\\%(\\k\\|\\K\\@<=[-']\\)\\@.;\\]" syn match p6Operator display "\%(:\@\)" " "i" requires a digit to the left, and no keyword char to the right syn match p6Operator display "\d\@<=i\k\@!" " index overloading syn match p6Operator display "\%(&\.(\@=\|@\.\[\@=\|%\.{\@=\)" " all infix operators except nonassocative ones let s:infix_a = [ \ "div % mod +& +< +> \\~& ?& \\~< \\~> +| +\\^ \\~| \\~\\^ ?| ?\\^ xx x", \ "\\~ && & also <== ==> <<== ==>> == != < <= > >= \\~\\~ eq ne lt le gt", \ "ge =:= === eqv before after \\^\\^ min max \\^ff ff\\^ \\^ff\\^", \ "\\^fff fff\\^ \\^fff\\^ fff ff ::= := \\.= => , : p5=> Z minmax", \ "\\.\\.\\. and andthen or orelse xor \\^ += -= /= \\*= \\~= //= ||=", \ "+ - \\*\\* \\* // / \\~ || |", \ ] " nonassociative infix operators let s:infix_n = "but does <=> leg cmp \\.\\. \\.\\.\\^\\^ \\^\\.\\. \\^\\.\\.\\^" let s:infix_a_long = join(s:infix_a, " ") let s:infix_a_words = split(s:infix_a_long) let s:infix_a_pattern = join(s:infix_a_words, "\\|") let s:infix_n_words = split(s:infix_n) let s:infix_n_pattern = join(s:infix_n_words, "\\|") let s:both = [s:infix_a_pattern, s:infix_n_pattern] let s:infix = join(s:both, "\\|") let s:infix_assoc = "!\\?\\%(" . s:infix_a_pattern . "\\)" let s:infix = "!\\?\\%(" . s:infix . "\\)" unlet s:infix_a s:infix_a_long s:infix_a_words s:infix_a_pattern unlet s:infix_n s:infix_n_pattern s:both " [+] reduce exec "syn match p6ReduceOp display \"\\k\\@" " does is a type constraint sometimes syn match p6TypeConstraint display "does\%(\s*\%(\k\|[-']\K\@=\)\)\@=" " int is a type sometimes syn match p6Type display "\\%(\s*(\|\s\+\d\)\@!" " these Routine names are also Properties, if preceded by "is" syn match p6Property display "\%(is\s\+\)\@<=\%(signature\|context\|also\|shape\)" " The sigil in ::*Package syn match p6PackageTwigil display "\%(::\)\@<=\*" " $ syn region p6MatchVarSigil \ matchgroup=p6Variable \ start="\$\%(<<\@!\)\@=" \ end=">\@<=" \ contains=p6MatchVar syn region p6MatchVar \ matchgroup=p6Twigil \ start="<" \ end=">" \ contained " Contextualizers syn match p6Context display "\<\%(item\|list\|slice\|hash\)\>" syn match p6Context display "\%(\$\|@\|%\|&\|@@\)(\@=" " the "$" placeholder in "$var1, $, var2 = @list" syn match p6Placeholder display "\%(,\s*\)\@<=\$\%(\K\|\%([.^*?=!~]\|:\@]*>\|«[^»]*»\|{[^}]*}\)\)*\)\.\?\%(([^)]*)\|\[[^\]]*]\|<[^>]*>\|«[^»]*»\|{[^}]*}\)\)\)" \ start="\ze\z(\$\%(\%(\%(\%([.^*?=!~]\|:\@]*>\|«[^»]*»\|{[^}]*}\)\)*\)\.\?\%(([^)]*)\|\[[^\]]*]\|<[^>]*>\|«[^»]*»\|{[^}]*}\)\)\)" \ end="\z1\zs" \ contained \ contains=TOP \ keepend syn region p6InterpArray \ matchgroup=p6Context \ start="@\ze()\@!" \ start="@@\ze()\@!" \ skip="([^)]*)" \ end=")\zs" \ contained \ contains=TOP syn region p6InterpHash \ start="\ze\z(%\$*\%(\%(\%(!\|/\|¢\)\|\%(\%(\%([.^*?=!~]\|:\@]*>\|«[^»]*»\|{[^}]*}\)\)*\)\.\?\%(([^)]*)\|\[[^\]]*]\|<[^>]*>\|«[^»]*»\|{[^}]*}\)\)\)" \ end="\z1\zs" \ contained \ contains=TOP \ keepend syn region p6InterpHash \ matchgroup=p6Context \ start="%\ze()\@!" \ skip="([^)]*)" \ end=")\zs" \ contained \ contains=TOP syn region p6InterpFunction \ start="\ze\z(&\%(\%(!\|/\|¢\)\|\%(\%(\%([.^*?=!~]\|:\@]*>\|«[^»]*»\|{[^}]*}\)\)*\)\.\?\%(([^)]*)\|\[[^\]]*]\|<[^>]*>\|«[^»]*»\|{[^}]*}\)\)\)" \ end="\z1\zs" \ contained \ contains=TOP \ keepend syn region p6InterpFunction \ matchgroup=p6Context \ start="&\ze()\@!" \ skip="([^)]*)" \ end=")\zs" \ contained \ contains=TOP syn region p6InterpClosure \ start="\\\@" contained syn match p6EscCloseFrench display "\\»" contained syn match p6EscBackTick display "\\`" contained syn match p6EscForwardSlash display "\\/" contained syn match p6EscVerticalBar display "\\|" contained syn match p6EscExclamation display "\\!" contained syn match p6EscComma display "\\," contained syn match p6EscDollar display "\\\$" contained syn match p6EscCloseCurly display "\\}" contained syn match p6EscCloseBracket display "\\\]" contained " misc escapes syn match p6EscOctOld display "\\\d\{1,3}" contained syn match p6EscNull display "\\0\d\@!" contained syn match p6EscCodePoint display "\%(\\c\)\@<=\%(\d\|\S\|\[\)\@=" contained nextgroup=p6CodePoint syn match p6EscHex display "\%(\\x\)\@<=\%(\x\|\[\)\@=" contained nextgroup=p6HexSequence syn match p6EscOct display "\%(\\o\)\@<=\%(\o\|\[\)\@=" contained nextgroup=p6OctSequence syn match p6EscQQ display "\\qq" contained nextgroup=p6QQSequence syn match p6EscOpenCurly display "\\{" contained syn match p6EscHash display "\\#" contained syn match p6EscBackSlash display "\\\\" contained syn region p6QQSequence \ matchgroup=p6Escape \ start="\[" \ skip="\[[^\]]*]" \ end="]" \ contained \ transparent \ contains=@p6Interp_qq syn match p6CodePoint display "\%(\d\+\|\S\)" contained syn region p6CodePoint \ matchgroup=p6Escape \ start="\[" \ end="]" \ contained syn match p6HexSequence display "\x\+" contained syn region p6HexSequence \ matchgroup=p6Escape \ start="\[" \ end="]" \ contained syn match p6OctSequence display "\o\+" contained syn region p6OctSequence \ matchgroup=p6Escape \ start="\[" \ end="]" \ contained " matches :key, :!key, :$var, :key, etc " Since we don't know in advance how the adverb ends, we use a trick. " Consume nothing with the start pattern (\ze at the beginning), " while capturing the whole adverb into \z1 and then putting it before " the match start (\zs) of the end pattern. syn region p6Adverb \ start="\ze\z(:!\?\K\%(\k\|[-']\K\@=\)*\%(([^)]*)\|\[[^\]]*]\|<[^>]*>\|«[^»]*»\|{[^}]*}\)\?\)" \ start="\ze\z(:!\?[@$%]\$*\%(::\|\%(\$\@<=\d\+\|!\|/\|¢\)\|\%(\%([.^*?=!~]\|:\@ " FIXME: not sure how to distinguish this from the "less than" operator " in all cases. For now, it matches if any of the following is true: " " * There is whitespace missing on either side of the "<", since " people tend to put spaces around "less than" " * It comes after "enum", "for", "any", "all", or "none" " * It's the first or last thing on a line (ignoring whitespace) " * It's preceded by "= " " " It never matches when: " " * Preceded by [<+~=] (e.g. <>, =<$foo>) " * Followed by [-=] (e.g. <--, <=, <==) syn region p6StringAngle \ matchgroup=p6Quote \ start="\%(\<\%(enum\|for\|any\|all\|none\)\>\s*(\?\s*\)\@<=<\%(<\|=>\|[-=]\{1,2}>\@!\)\@!" \ start="\%(\s\|[<+~=]\)\@\|[-=]\{1,2}>\@!\)\@!" \ start="[<+~=]\@\|[-=]\{1,2}>\@!\)\@!" \ start="\%(^\s*\)\@<=<\%(<\|=>\|[-=]\{1,2}>\@!\)\@!" \ start="[<+~=]\@\|[-=]\{1,2}>\@!\)\@!" \ skip="\\\@" \ end=">" \ contains=p6InnerAnglesOne,p6EscBackSlash,p6EscCloseAngle syn region p6InnerAnglesOne \ matchgroup=p6StringAngle \ start="<" \ skip="\\\@" \ end=">" \ transparent \ contained \ contains=p6InnerAnglesOne " <> syn region p6StringAngles \ matchgroup=p6Quote \ start="<<=\@!" \ skip="\\\@" \ end=">>" \ contains=p6InnerAnglesTwo,@p6Interp_qq,p6Comment,p6EscHash,p6EscCloseAngle,p6Adverb,p6StringSQ,p6StringDQ syn region p6InnerAnglesTwo \ matchgroup=p6StringAngles \ start="<<" \ skip="\\\@" \ end=">>" \ transparent \ contained \ contains=p6InnerAnglesTwo " «words» syn region p6StringFrench \ matchgroup=p6Quote \ start="«" \ skip="\\\@" nextgroup=p6QPairs skipwhite skipempty syn match p6QPairs contained transparent skipwhite skipempty nextgroup=p6StringQ,p6StringQ_PIR "\%(\_s*:!\?\K\%(\k\|[-']\K\@=\)*\%(([^)]*)\|\[[^\]]*]\|<[^>]*>\|«[^»]*»\|{[^}]*}\)\?\)*" if exists("perl6_embedded_pir") syn include @p6PIR syntax/pir.vim endif " hardcoded set of delimiters let s:delims = [ \ ["\\\"", "\\\"", "p6EscDoubleQuote", "\\\\\\@", "p6EscCloseAngle", "\\%(\\\\\\@\\|<[^>]*>\\)"], \ ["«", "»", "p6EscCloseFrench", "\\%(\\\\\\@>", "p6EscCloseAngle", "\\%(\\\\\\@>\\|<<\\%([^>]\\|>>\\@!\\)*>>\\)"]) call add(s:delims, ["\\s\\@<=<<<", ">>>", "p6EscCloseAngle", "\\%(\\\\\\@>>\\|<<<\\%([^>]\\|>\\%(>>\\)\\@!\\)*>>>\\)"]) endif if !exists("perl6_extended_q") && !exists("perl6_extended_all") " simple version, no special highlighting within the string for [start_delim, end_delim, end_group, skip] in s:delims exec "syn region p6StringQ matchgroup=p6Quote start=\"".start_delim."\" skip=\"".skip."\" end=\"".end_delim."\" contains=".end_group." contained" endfor if exists("perl6_embedded_pir") " highlight embedded PIR code for [start_delim, end_delim, end_group, skip] in s:delims exec "syn region p6StringQ_PIR matchgroup=p6Quote start=\"\\%(Q\\s*:PIR\\s*\\)\\@<=".start_delim."\" skip=\"".skip."\" end=\"".end_delim."\" contains=@p6PIR,".end_group." contained" endfor endif else let s:before = "syn region p6StringQ matchgroup=p6Quote start=\"\\%(" let s:after = "\\%(\\_s*:!\\?\\K\\%(\\k\\|[-']\\K\\@=\\)*\\%(([^)]*)\\|\\[[^\\]]*]\\|<[^>]*>\\|«[^»]*»\\|{[^}]*}\\)\\?\\)*\\_s*\\)\\@<=" let s:adverbs = [ \ ["s", "scalar"], \ ["a", "array"], \ ["h", "hash"], \ ["f", "function"], \ ["c", "closure"], \ ["b", "backslash"], \ ["w", "words"], \ ["ww", "quotewords"], \ ["x", "exec"], \ ] " these can't be conjoined with q and qq (e.g. as qqq and qqqq) let s:q_adverbs = [ \ ["q", "single"], \ ["qq", "double"], \ ] for [start_delim, end_delim, end_group, skip] in s:delims " Q, q, and qq with any number of (ignored) adverbs exec s:before ."Q". s:after .start_delim."\" end=\"". end_delim ."\""." contained" exec s:before ."q". s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_q"." contained" exec s:before ."qq". s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_qq"." contained" for [short, long] in s:adverbs " Qs, qs, qqs, Qa, qa, qqa, etc, with ignored adverbs exec s:before ."Q".short. s:after .start_delim ."\" end=\"". end_delim ."\" contains=@p6Interp_".long." contained" exec s:before ."q".short. s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_q,@p6Interp_".long." contained" exec s:before ."qq".short. s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_qq,@p6Interp_".long." contained" " Q, q, and qq, with one significant adverb exec s:before ."Q\\s*:\\%(".short."\\|".long."\\)". s:after .start_delim ."\" end=\"". end_delim ."\" contains=@p6Interp_".long." contained" for [q_short, q_long] in s:q_adverbs exec s:before ."Q\\s*:\\%(".q_short."\\|".q_long."\\)". s:after .start_delim ."\" end=\"". end_delim ."\" contains=@p6Interp_".q_long." contained" endfor exec s:before ."q\\s*:\\%(".short."\\|".long."\\)". s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_q,@p6Interp_".long." contained" exec s:before ."qq\\s*:\\%(".short."\\|".long."\\)". s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_qq,@p6Interp_".long." contained" for [short2, long2] in s:adverbs " Qs, qs, qqs, Qa, qa, qqa, etc, with one significant adverb exec s:before ."Q".short."\\s*:\\%(".short2."\\|".long2."\\)". s:after .start_delim ."\" end=\"". end_delim ."\" contains=@p6Interp_".long.",@p6Interp_".long2." contained" for [q_short2, q_long2] in s:q_adverbs exec s:before ."Q".short."\\s*:\\%(".q_short2."\\|".q_long2."\\)". s:after .start_delim ."\" end=\"". end_delim ."\" contains=@p6Interp_".long.",@p6Interp_".q_long2." contained" endfor exec s:before ."q".short."\\s*:\\%(".short2."\\|".long2."\\)". s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_q,@p6Interp_".long.",@p6Interp_".long2." contained" exec s:before ."qq".short."\\s*:\\%(".short2."\\|".long2."\\)". s:after .start_delim ."\" skip=\"". skip ."\" end=\"". end_delim ."\" contains=". end_group .",@p6Interp_qq,@p6Interp_".long.",@p6Interp_".long2." contained" endfor endfor endfor unlet s:before s:after s:adverbs s:q_adverbs endif unlet s:delims " Match these so something else above can't. E.g. the "q" in "role q { }" " should not be considered a string syn match p6Normal display "\%(\<\%(role\|grammar\|slang\)\s\+\)\@<=\K\%(\k\|[-']\K\@=\)*" " :key syn match p6Operator display ":\@ and p5=> autoquoting syn match p6StringP5Auto display "\K\%(\k\|[-']\K\@=\)*\ze\s\+p5=>" syn match p6StringAuto display "\K\%(\k\|[-']\K\@=\)*\ze\%(p5\)\@" syn match p6StringAuto display "\K\%(\k\|[-']\K\@=\)*\ze\s\+=>" syn match p6StringAuto display "\K\%(\k\|[-']\K\@=\)*p5\ze=>" " Hyperoperators. Needs to come after the quoting operators (<>, «», etc) exec "syn match p6HyperOp display \"»" .s:infix."»\\?\"" exec "syn match p6HyperOp display \"«\\?".s:infix."«\"" exec "syn match p6HyperOp display \"»" .s:infix."«\"" exec "syn match p6HyperOp display \"«" .s:infix. "»\"" exec "syn match p6HyperOp display \">>" .s:infix."\\%(>>\\)\\?\"" exec "syn match p6HyperOp display \"\\%(<<\\)\\?".s:infix."<<\"" exec "syn match p6HyperOp display \">>" .s:infix."<<\"" exec "syn match p6HyperOp display \"<<" .s:infix.">>\"" unlet s:infix " Regexes and grammars syn match p6RegexName display "\%(\<\%(regex\|rule\|token\)\s\+\)\@<=\K\%(\k\|[-']\K\@=\)*" nextgroup=p6RegexBlockCrap skipwhite skipempty syn match p6RegexBlockCrap "[^{]*" nextgroup=p6RegexBlock skipwhite skipempty transparent contained syn region p6RegexBlock \ matchgroup=p6Normal \ start="{" \ end="}" \ contained \ contains=@p6Regexen,@p6Variables " Perl 6 regex bits syn cluster p6Regexen \ add=p6RxMeta \ add=p6RxEscape \ add=p6EscHex \ add=p6EscOct \ add=p6EscNull \ add=p6RxAnchor \ add=p6RxCapture \ add=p6RxGroup \ add=p6RxAlternation \ add=p6RxAdverb \ add=p6RxAdverbArg \ add=p6RxStorage \ add=p6RxAssertion \ add=p6RxQuoteWords \ add=p6RxClosure \ add=p6RxStringSQ \ add=p6RxStringDQ \ add=p6Comment syn match p6RxMeta display contained ".\%(\k\|\s\)\@" \ contained \ contains=@p6Regexen,@p6Variables,p6RxCharClass,p6RxAssertCall syn region p6RxAssertCall \ matchgroup=p6Normal \ start="\%(::\|\%(\K\%(\k\|[-']\K\@=\)*\)\)\@<=(\@=" \ end=")\@<=" \ contained \ contains=TOP syn region p6RxCharClass \ matchgroup=p6StringSpecial2 \ start="\%(<[-!+?]\?\)\@<=\[" \ skip="\\]" \ end="]" \ contained \ contains=p6RxRange,p6RxEscape,p6EscHex,p6EscOct,p6EscNull syn region p6RxQuoteWords \ matchgroup=p6StringSpecial2 \ start="< " \ end=">" \ contained syn region p6RxAdverb \ start="\ze\z(:!\?\K\%(\k\|[-']\K\@=\)*\)" \ end="\z1\zs" \ contained \ contains=TOP \ keepend syn region p6RxAdverbArg \ start="\%(:!\?\K\%(\k\|[-']\K\@=\)*\)\@<=(" \ skip="([^)]*)" \ end=")" \ contained \ contains=TOP syn region p6RxStorage \ matchgroup=p6Operator \ start="\%(^\s*\)\@<=:\%(my\>\|temp\>\)\@=" \ end="$" \ contains=TOP \ contained " Perl 5 regex bits syn cluster p6RegexP5Base \ add=p6RxP5Escape \ add=p6RxP5Oct \ add=p6RxP5Hex \ add=p6RxP5EscMeta \ add=p6RxP5CodePoint \ add=p6RxP5Prop " normal regex stuff syn cluster p6RegexP5 \ add=@p6RegexP5Base \ add=p6RxP5Quantifier \ add=p6RxP5Meta \ add=p6RxP5QuoteMeta \ add=p6RxP5ParenMod \ add=p6RxP5Verb \ add=p6RxP5Count \ add=p6RxP5Named \ add=p6RxP5ReadRef \ add=p6RxP5WriteRef \ add=p6RxP5CharClass \ add=p6RxP5Anchor " inside character classes syn cluster p6RegexP5Class \ add=@p6RegexP5Base \ add=p6RxP5Posix \ add=p6RxP5Range syn match p6RxP5Escape display contained "\\\S" syn match p6RxP5CodePoint display contained "\\c\S\@=" nextgroup=p6RxP5CPId syn match p6RxP5CPId display contained "\S" syn match p6RxP5Oct display contained "\\\%(\o\{1,3}\)\@=" nextgroup=p6RxP5OctSeq syn match p6RxP5OctSeq display contained "\o\{1,3}" syn match p6RxP5Anchor display contained "[\^$]" syn match p6RxP5Hex display contained "\\x\%({\x\+}\|\x\{1,2}\)\@=" nextgroup=p6RxP5HexSeq syn match p6RxP5HexSeq display contained "\x\{1,2}" syn region p6RxP5HexSeq \ matchgroup=p6RxP5Escape \ start="{" \ end="}" \ contained syn region p6RxP5Named \ matchgroup=p6RxP5Escape \ start="\%(\\N\)\@<={" \ end="}" \ contained syn match p6RxP5Quantifier display contained "\%([+*]\|(\@" \ contained syn match p6RxP5WriteRef display contained "\\g\%(\d\|{\)\@=" nextgroup=p6RxP5WriteRefId syn match p6RxP5WriteRefId display contained "\d\+" syn region p6RxP5WriteRefId \ matchgroup=p6RxP5Escape \ start="{" \ end="}" \ contained syn match p6RxP5Prop display contained "\\[pP]\%(\a\|{\)\@=" nextgroup=p6RxP5PropId syn match p6RxP5PropId display contained "\a" syn region p6RxP5PropId \ matchgroup=p6RxP5Escape \ start="{" \ end="}" \ contained syn match p6RxP5Meta display contained "[(|).]" syn match p6RxP5ParenMod display contained "(\@<=?\@=" nextgroup=p6RxP5Mod,p6RxP5ModName,p6RxP5Code syn match p6RxP5Mod display contained "?\%(<\?=\|<\?!\|[#:|]\)" syn match p6RxP5Mod display contained "?-\?[impsx]\+" syn match p6RxP5Mod display contained "?\%([-+]\?\d\+\|R\)" syn match p6RxP5Mod display contained "?(DEFINE)" syn match p6RxP5Mod display contained "?\%(&\|P[>=]\)" nextgroup=p6RxP5ModDef syn match p6RxP5ModDef display contained "\h\w*" syn region p6RxP5ModName \ matchgroup=p6StringSpecial \ start="?'" \ end="'" \ contained syn region p6RxP5ModName \ matchgroup=p6StringSpecial \ start="?P\?<" \ end=">" \ contained syn region p6RxP5Code \ matchgroup=p6StringSpecial \ start="??\?{" \ end="})\@=" \ contained \ contains=TOP syn match p6RxP5EscMeta display contained "\\[?*.{}()[\]|\^$]" syn match p6RxP5Count display contained "\%({\d\+\%(,\%(\d\+\)\?\)\?}\)\@=" nextgroup=p6RxP5CountId syn region p6RxP5CountId \ matchgroup=p6RxP5Escape \ start="{" \ end="}" \ contained syn match p6RxP5Verb display contained "(\@<=\*\%(\%(PRUNE\|SKIP\|THEN\)\%(:[^)]*\)\?\|\%(MARK\|\):[^)]*\|COMMIT\|F\%(AIL\)\?\|ACCEPT\)" syn region p6RxP5QuoteMeta \ matchgroup=p6RxP5Escape \ start="\\Q" \ end="\\E" \ contained \ contains=@p6Variables,p6EscBackSlash syn region p6RxP5CharClass \ matchgroup=p6StringSpecial \ start="\[\^\?" \ skip="\\]" \ end="]" \ contained \ contains=@p6RegexP5Class syn region p6RxP5Posix \ matchgroup=p6RxP5Escape \ start="\[:" \ end=":]" \ contained syn match p6RxP5Range display contained "-" " 'string' inside a regex syn region p6RxStringSQ \ matchgroup=p6Quote \ start="'" \ skip="\\\@, mm, rx syn region p6Match \ matchgroup=p6Quote \ start="\%(\%(::\|[$@%&][.!^:*?]\?\|\.\)\@\@!>\@!" \ skip="\\>" \ end=">" \ contains=@p6Regexen,@p6Variables " m«foo», mm«foo», rx«foo» syn region p6Match \ matchgroup=p6Quote \ start="\%(\%(::\|[$@%&][.!^:*?]\?\|\.\)\@ syn region p6Match \ matchgroup=p6Quote \ start="\%(\%(::\|[$@%&][.!^:*?]\?\|\.\)\@\@!" \ skip="\\>" \ end=">" \ contains=@p6Regexen,@p6Variables " s«foo» syn region p6Match \ matchgroup=p6Quote \ start="\%(\%(::\|[$@%&][.!^:*?]\?\|\.\)\@ syn region p6Match \ matchgroup=p6Quote \ start="\%(\%(::\|[$@%&][.!^:*?]\?\|\.\)\@\@!" \ skip="\\>" \ end=">" \ contains=@p6RegexP5,p6Variables " m:P5«» syn region p6Match \ matchgroup=p6Quote \ start="\%(\%(::\|[$@%&][.!^:*?]\?\|\.\)\@]*>" \ end=">" \ matchgroup=p6Error \ start="^#<" \ contains=p6Attention,p6Comment syn region p6Comment \ matchgroup=p6Comment \ start="^\@]\|>>\@!\)*>>" \ end=">>" \ matchgroup=p6Error \ start="^#<<" \ contains=p6Attention,p6Comment syn region p6Comment \ matchgroup=p6Comment \ start="^\@]\|>\%(>>\)\@!\)*>>>" \ end=">>>" \ matchgroup=p6Error \ start="^#<<<" \ contains=p6Attention,p6Comment syn region p6Comment \ matchgroup=p6Comment \ start="^\@" \ end="^\ze\%(\s*$\|=\K\)" \ contains=p6PodAbbrCodeType \ keepend syn region p6PodAbbrCodeType \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=p6PodName,p6PodAbbrCode syn region p6PodAbbrCode \ start="^" \ end="^\ze\%(\s*$\|=\K\)" \ contained " Abbreviated blocks (everything is a comment) syn region p6PodAbbrRegion \ matchgroup=p6PodPrefix \ start="^=\zecomment\>" \ end="^\ze\%(\s*$\|=\K\)" \ contains=p6PodAbbrCommentType \ keepend syn region p6PodAbbrCommentType \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=p6PodComment,p6PodAbbrNoCode " Abbreviated blocks (implicit code allowed) syn region p6PodAbbrRegion \ matchgroup=p6PodPrefix \ start="^=\ze\%(pod\|item\|nested\|\u\+\)\>" \ end="^\ze\%(\s*$\|=\K\)" \ contains=p6PodAbbrType \ keepend syn region p6PodAbbrType \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=p6PodName,p6PodAbbr syn region p6PodAbbr \ start="^" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=@p6PodFormat,p6PodImplicitCode " Abbreviated block to end-of-file syn region p6PodAbbrRegion \ matchgroup=p6PodPrefix \ start="^=\zeEND\>" \ end="\%$" \ contains=p6PodAbbrEOFType \ keepend syn region p6PodAbbrEOFType \ matchgroup=p6PodType \ start="\K\k*" \ end="\%$" \ contained \ contains=p6PodName,p6PodAbbrEOF syn region p6PodAbbrEOF \ start="^" \ end="\%$" \ contained \ contains=@p6PodNestedBlocks,@p6PodFormat,p6PodImplicitCode " Directives syn region p6PodDirectRegion \ matchgroup=p6PodPrefix \ start="^=\%(config\|use\)\>" \ end="^\ze\%([^=]\|=\K\|\s*$\)" \ contains=p6PodDirectArgRegion \ keepend syn region p6PodDirectArgRegion \ matchgroup=p6PodType \ start="\S\+" \ end="^\ze\%([^=]\|=\K\|\s*$\)" \ contained \ contains=p6PodDirectConfigRegion syn region p6PodDirectConfigRegion \ start="" \ end="^\ze\%([^=]\|=\K\|\s*$\)" \ contained \ contains=@p6PodConfig " =encoding is a special directive syn region p6PodDirectRegion \ matchgroup=p6PodPrefix \ start="^=encoding\>" \ end="^\ze\%([^=]\|=\K\|\s*$\)" \ contains=p6PodEncodingArgRegion \ keepend syn region p6PodEncodingArgRegion \ matchgroup=p6PodName \ start="\S\+" \ end="^\ze\%([^=]\|=\K\|\s*$\)" \ contained " Paragraph blocks (implicit code forbidden) syn region p6PodParaRegion \ matchgroup=p6PodPrefix \ start="^=for\>" \ end="^\ze\%(\s*$\|=\K\)" \ contains=p6PodParaNoCodeTypeRegion \ keepend \ extend syn region p6PodParaNoCodeTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=p6PodParaNoCode,p6PodParaConfigRegion syn region p6PodParaConfigRegion \ start="" \ end="^\ze\%([^=]\|=\k\@\ze\s*code\>" \ end="^\ze\%(\s*$\|=\K\)" \ contains=p6PodParaCodeTypeRegion \ keepend \ extend syn region p6PodParaCodeTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=p6PodParaCode,p6PodParaConfigRegion syn region p6PodParaCode \ start="^[^=]" \ end="^\ze\%(\s*$\|=\K\)" \ contained " Paragraph blocks (implicit code allowed) syn region p6PodParaRegion \ matchgroup=p6PodPrefix \ start="^=for\>\ze\s*\%(pod\|item\|nested\|\u\+\)\>" \ end="^\ze\%(\s*$\|=\K\)" \ contains=p6PodParaTypeRegion \ keepend \ extend syn region p6PodParaTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=p6PodPara,p6PodParaConfigRegion syn region p6PodPara \ start="^[^=]" \ end="^\ze\%(\s*$\|=\K\)" \ contained \ contains=@p6PodFormat,p6PodImplicitCode " Paragraph block to end-of-file syn region p6PodParaRegion \ matchgroup=p6PodPrefix \ start="^=for\>\ze\s\+END\>" \ end="\%$" \ contains=p6PodParaEOFTypeRegion \ keepend \ extend syn region p6PodParaEOFTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="\%$" \ contained \ contains=p6PodParaEOF,p6PodParaConfigRegion syn region p6PodParaEOF \ start="^[^=]" \ end="\%$" \ contained \ contains=@p6PodNestedBlocks,@p6PodFormat,p6PodImplicitCode " Delimited blocks (implicit code forbidden) syn region p6PodDelimRegion \ matchgroup=p6PodPrefix \ start="^=begin\>" \ end="^=end\>" \ contains=p6PodDelimNoCodeTypeRegion \ keepend \ extend syn region p6PodDelimNoCodeTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze=end\>" \ contained \ contains=p6PodDelimNoCode,p6PodDelimConfigRegion syn region p6PodDelimConfigRegion \ start="" \ end="^\ze\%([^=]\|=\K\|\s*$\)" \ contained \ contains=@p6PodConfig syn region p6PodDelimNoCode \ start="^" \ end="^\ze=end\>" \ contained \ contains=@p6PodNestedBlocks,@p6PodFormat " Delimited blocks (everything is code) syn region p6PodDelimRegion \ matchgroup=p6PodPrefix \ start="^=begin\>\ze\s*code\>" \ end="^=end\>" \ contains=p6PodDelimCodeTypeRegion \ keepend \ extend syn region p6PodDelimCodeTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze=end\>" \ contained \ contains=p6PodDelimCode,p6PodDelimConfigRegion syn region p6PodDelimCode \ start="^" \ end="^\ze=end\>" \ contained \ contains=@p6PodNestedBlocks " Delimited blocks (implicit code allowed) syn region p6PodDelimRegion \ matchgroup=p6PodPrefix \ start="^=begin\>\ze\s*\%(pod\|item\|nested\|\u\+\)\>" \ end="^=end\>" \ contains=p6PodDelimTypeRegion \ keepend \ extend syn region p6PodDelimTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="^\ze=end\>" \ contained \ contains=p6PodDelim,p6PodDelimConfigRegion syn region p6PodDelim \ start="^" \ end="^\ze=end\>" \ contained \ contains=@p6PodNestedBlocks,@p6PodFormat,p6PodImplicitCode " Delimited block to end-of-file syn region p6PodDelimRegion \ matchgroup=p6PodPrefix \ start="^=begin\>\ze\s\+END\>" \ end="\%$" \ contains=p6PodDelimEOFTypeRegion \ extend syn region p6PodDelimEOFTypeRegion \ matchgroup=p6PodType \ start="\K\k*" \ end="\%$" \ contained \ contains=p6PodDelimEOF,p6PodDelimConfigRegion syn region p6PodDelimEOF \ start="^" \ end="\%$" \ contained \ contains=@p6PodNestedBlocks,@p6PodFormat,p6PodImplicitCode syn cluster p6PodConfig \ add=p6PodConfigOperator \ add=p6PodExtraConfig \ add=p6StringAuto \ add=p6PodAutoQuote \ add=p6StringSQ syn region p6PodParens \ start="(" \ end=")" \ contained \ contains=p6Number,p6StringSQ syn match p6PodAutoQuote display contained "=>" syn match p6PodConfigOperator display contained ":!\?" nextgroup=p6PodConfigOption syn match p6PodConfigOption display contained "[^[:space:](<]\+" nextgroup=p6PodParens,p6StringAngle syn match p6PodExtraConfig display contained "^=" syn match p6PodVerticalBar display contained "|" syn match p6PodColon display contained ":" syn match p6PodSemicolon display contained ";" syn match p6PodComma display contained "," syn match p6PodImplicitCode display contained "^\s.*" syn region p6PodDelimEndRegion \ matchgroup=p6PodType \ start="\%(^=end\>\)\@<=" \ end="\K\k*" " These may appear inside delimited blocks syn cluster p6PodNestedBlocks \ add=p6PodAbbrRegion \ add=p6PodDirectRegion \ add=p6PodParaRegion \ add=p6PodDelimRegion \ add=p6PodDelimEndRegion " Pod formatting codes syn cluster p6PodFormat \ add=p6PodFormatOne \ add=p6PodFormatTwo \ add=p6PodFormatThree \ add=p6PodFormatFrench " Balanced angles found inside formatting codes. Ensures proper nesting. syn region p6PodFormatAnglesOne \ matchgroup=p6PodFormat \ start="<" \ skip="<[^>]*>" \ end=">" \ transparent \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatAnglesOne syn region p6PodFormatAnglesTwo \ matchgroup=p6PodFormat \ start="<<" \ skip="<<[^>]*>>" \ end=">>" \ transparent \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatAnglesOne,p6PodFormatAnglesTwo syn region p6PodFormatAnglesThree \ matchgroup=p6PodFormat \ start="<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ transparent \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatAnglesOne,p6PodFormatAnglesTwo,p6PodFormatAnglesThree syn region p6PodFormatAnglesFrench \ matchgroup=p6PodFormat \ start="«" \ skip="«[^»]*»" \ end="»" \ transparent \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatAnglesOne,p6PodFormatAnglesTwo,p6PodFormatAnglesThree " All formatting codes syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="\u<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne,p6PodFormatFrench,p6PodFormatOne syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="\u<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAnglesTwo,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="\u<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="\u«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree " C<> and V<> don't allow nested formatting formatting codes syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="[CV]<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="[CV]<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAnglesTwo syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="[CV]<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="[CV]«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench " L<> can have a "|" separator syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="L<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne,p6PodFormatFrench,p6PodFormatOne,p6PodVerticalBar syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="L<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAnglesTwo,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodVerticalBar syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="L<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodVerticalBar syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="L«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodVerticalBar " E<> can have a ";" separator syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="E<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne,p6PodFormatFrench,p6PodFormatOne,p6PodSemiColon syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="E<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAnglesTwo,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodSemiColon syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="E<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodSemiColon syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="E«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodSemiColon " M<> can have a ":" separator syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="M<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne,p6PodFormatFrench,p6PodFormatOne,p6PodColon syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="M<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAnglesTwo,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodColon syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="M<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodColon syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="M«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodColon " D<> can have "|" and ";" separators syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="D<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne,p6PodFormatFrench,p6PodFormatOne,p6PodVerticalBar,p6PodSemiColon syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="D<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAngleTwo,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodVerticalBar,p6PodSemiColon syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="D<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodVerticalBar,p6PodSemiColon syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="D«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodVerticalBar,p6PodSemiColon " X<> can have "|", "," and ";" separators syn region p6PodFormatOne \ matchgroup=p6PodFormatCode \ start="X<" \ skip="<[^>]*>" \ end=">" \ contained \ contains=p6PodFormatAnglesOne,p6PodFormatFrench,p6PodFormatOne,p6PodVerticalBar,p6PodSemiColon,p6PodComma syn region p6PodFormatTwo \ matchgroup=p6PodFormatCode \ start="X<<" \ skip="<<[^>]*>>" \ end=">>" \ contained \ contains=p6PodFormatAnglesTwo,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodVerticalBar,p6PodSemiColon,p6PodComma syn region p6PodFormatThree \ matchgroup=p6PodFormatCode \ start="X<<<" \ skip="<<<[^>]*>>>" \ end=">>>" \ contained \ contains=p6PodFormatAnglesThree,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodVerticalBar,p6PodSemiColon,p6PodComma syn region p6PodFormatFrench \ matchgroup=p6PodFormatCode \ start="X«" \ skip="«[^»]*»" \ end="»" \ contained \ contains=p6PodFormatAnglesFrench,p6PodFormatFrench,p6PodFormatOne,p6PodFormatTwo,p6PodFormatThree,p6PodVerticalBar,p6PodSemiColon,p6PodComma " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link p6EscOctOld p6Error hi def link p6PackageTwigil p6Twigil hi def link p6StringAngle p6String hi def link p6StringFrench p6String hi def link p6StringAngles p6String hi def link p6StringSQ p6String hi def link p6StringDQ p6String hi def link p6StringQ p6String hi def link p6RxStringSQ p6String hi def link p6RxStringDQ p6String hi def link p6Substitution p6String hi def link p6Transliteration p6String hi def link p6StringAuto p6String hi def link p6StringP5Auto p6String hi def link p6Key p6String hi def link p6Match p6String hi def link p6RegexBlock p6String hi def link p6RxP5CharClass p6String hi def link p6RxP5QuoteMeta p6String hi def link p6RxCharClass p6String hi def link p6RxQuoteWords p6String hi def link p6ReduceOp p6Operator hi def link p6ReverseCrossOp p6Operator hi def link p6HyperOp p6Operator hi def link p6QuoteQ p6Operator hi def link p6RxRange p6StringSpecial hi def link p6RxAnchor p6StringSpecial hi def link p6RxP5Anchor p6StringSpecial hi def link p6CodePoint p6StringSpecial hi def link p6RxMeta p6StringSpecial hi def link p6RxP5Range p6StringSpecial hi def link p6RxP5CPId p6StringSpecial hi def link p6RxP5Posix p6StringSpecial hi def link p6RxP5Mod p6StringSpecial hi def link p6RxP5HexSeq p6StringSpecial hi def link p6RxP5OctSeq p6StringSpecial hi def link p6RxP5WriteRefId p6StringSpecial hi def link p6HexSequence p6StringSpecial hi def link p6OctSequence p6StringSpecial hi def link p6RxP5Named p6StringSpecial hi def link p6RxP5PropId p6StringSpecial hi def link p6RxP5Quantifier p6StringSpecial hi def link p6RxP5CountId p6StringSpecial hi def link p6RxP5Verb p6StringSpecial hi def link p6Escape p6StringSpecial2 hi def link p6EscNull p6StringSpecial2 hi def link p6EscHash p6StringSpecial2 hi def link p6EscQQ p6StringSpecial2 hi def link p6EscQuote p6StringSpecial2 hi def link p6EscDoubleQuote p6StringSpecial2 hi def link p6EscBackTick p6StringSpecial2 hi def link p6EscForwardSlash p6StringSpecial2 hi def link p6EscVerticalBar p6StringSpecial2 hi def link p6EscExclamation p6StringSpecial2 hi def link p6EscDollar p6StringSpecial2 hi def link p6EscOpenCurly p6StringSpecial2 hi def link p6EscCloseCurly p6StringSpecial2 hi def link p6EscCloseBracket p6StringSpecial2 hi def link p6EscCloseAngle p6StringSpecial2 hi def link p6EscCloseFrench p6StringSpecial2 hi def link p6EscBackSlash p6StringSpecial2 hi def link p6RxEscape p6StringSpecial2 hi def link p6RxCapture p6StringSpecial2 hi def link p6RxAlternation p6StringSpecial2 hi def link p6RxP5 p6StringSpecial2 hi def link p6RxP5ReadRef p6StringSpecial2 hi def link p6RxP5Oct p6StringSpecial2 hi def link p6RxP5Hex p6StringSpecial2 hi def link p6RxP5EscMeta p6StringSpecial2 hi def link p6RxP5Meta p6StringSpecial2 hi def link p6RxP5Escape p6StringSpecial2 hi def link p6RxP5CodePoint p6StringSpecial2 hi def link p6RxP5WriteRef p6StringSpecial2 hi def link p6RxP5Prop p6StringSpecial2 hi def link p6Property Tag hi def link p6Attention Todo hi def link p6Type Type hi def link p6Error Error hi def link p6BlockLabel Label hi def link p6Float Float hi def link p6Normal Normal hi def link p6Package Normal hi def link p6PackageScope Normal hi def link p6Number Number hi def link p6VersionNum Number hi def link p6String String hi def link p6Repeat Repeat hi def link p6Keyword Keyword hi def link p6Pragma Keyword hi def link p6Module Keyword hi def link p6DeclareRoutine Keyword hi def link p6VarStorage Special hi def link p6FlowControl Special hi def link p6NumberBase Special hi def link p6Twigil Special hi def link p6StringSpecial2 Special hi def link p6VersionDot Special hi def link p6Comment Comment hi def link p6Include Include hi def link p6Shebang PreProc hi def link p6ClosureTrait PreProc hi def link p6Routine Function hi def link p6Operator Operator hi def link p6Version Operator hi def link p6Context Operator hi def link p6Quote Delimiter hi def link p6TypeConstraint PreCondit hi def link p6Exception Exception hi def link p6Placeholder Identifier hi def link p6Variable Identifier hi def link p6VarSlash Identifier hi def link p6VarNum Identifier hi def link p6VarExclam Identifier hi def link p6VarMatch Identifier hi def link p6VarName Identifier hi def link p6MatchVar Identifier hi def link p6RxP5ReadRefId Identifier hi def link p6RxP5ModDef Identifier hi def link p6RxP5ModName Identifier hi def link p6Conditional Conditional hi def link p6StringSpecial SpecialChar hi def link p6PodAbbr p6Pod hi def link p6PodAbbrEOF p6Pod hi def link p6PodAbbrNoCode p6Pod hi def link p6PodAbbrCode p6PodCode hi def link p6PodPara p6Pod hi def link p6PodParaEOF p6Pod hi def link p6PodParaNoCode p6Pod hi def link p6PodParaCode p6PodCode hi def link p6PodDelim p6Pod hi def link p6PodDelimEOF p6Pod hi def link p6PodDelimNoCode p6Pod hi def link p6PodDelimCode p6PodCode hi def link p6PodImplicitCode p6PodCode hi def link p6PodExtraConfig p6PodPrefix hi def link p6PodVerticalBar p6PodFormatCode hi def link p6PodColon p6PodFormatCode hi def link p6PodSemicolon p6PodFormatCode hi def link p6PodComma p6PodFormatCode hi def link p6PodFormatOne p6PodFormat hi def link p6PodFormatTwo p6PodFormat hi def link p6PodFormatThree p6PodFormat hi def link p6PodFormatFrench p6PodFormat hi def link p6PodType Type hi def link p6PodConfigOption String hi def link p6PodCode PreProc hi def link p6Pod Comment hi def link p6PodComment Comment hi def link p6PodAutoQuote Operator hi def link p6PodConfigOperator Operator hi def link p6PodPrefix Statement hi def link p6PodName Identifier hi def link p6PodFormatCode SpecialChar hi def link p6PodFormat SpecialComment " Syncing to speed up processing "syn sync match p6SyncPod groupthere p6PodAbbrRegion "^=\K\k*\>" "syn sync match p6SyncPod groupthere p6PodDirectRegion "^=\%(config\|use\|encoding\)\>" "syn sync match p6SyncPod groupthere p6PodParaRegion "^=for\>" "syn sync match p6SyncPod groupthere p6PodDelimRegion "^=begin\>" "syn sync match p6SyncPod groupthere p6PodDelimEndRegion "^=end\>" " Let's just sync whole file, the other methods aren't reliable (or I don't " know how to use them reliably) syn sync fromstart setlocal foldmethod=syntax let b:current_syntax = "perl6" let &cpo = s:keepcpo unlet s:keepcpo " vim:ts=8:sts=4:sw=4:expandtab:ft=vim PK&]jL L vim80/syntax/cweb.vimnu[" Vim syntax file " Language: CWEB " Maintainer: Andreas Scherer " Last Change: 2011 Dec 25 by Thilo Six " Details of the CWEB language can be found in the article by Donald E. Knuth " and Silvio Levy, "The CWEB System of Structured Documentation", included as " file "cwebman.tex" in the standard CWEB distribution, available for " anonymous ftp at ftp://labrea.stanford.edu/pub/cweb/. " TODO: Section names and C/C++ comments should be treated as TeX material. " TODO: The current version switches syntax highlighting off for section " TODO: names, and leaves C/C++ comments as such. (On the other hand, " TODO: switching to TeX mode in C/C++ comments might be colour overkill.) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " For starters, read the TeX syntax; TeX syntax items are allowed at the top " level in the CWEB syntax, e.g., in the preamble. In general, a CWEB source " code can be seen as a normal TeX document with some C/C++ material " interspersed in certain defined regions. runtime! syntax/tex.vim unlet b:current_syntax " Read the C/C++ syntax too; C/C++ syntax items are treated as such in the " C/C++ section of a CWEB chunk or in inner C/C++ context in "|...|" groups. syntax include @webIncludedC :p:h/cpp.vim let s:cpo_save = &cpo set cpo&vim " Inner C/C++ context (ICC) should be quite simple as it's comprised of " material in "|...|"; however the naive definition for this region would " hickup at the innocious "\|" TeX macro. Note: For the time being we expect " that an ICC begins either at the start of a line or after some white space. syntax region webInnerCcontext start="\(^\|[ \t\~`(]\)|" end="|" contains=@webIncludedC,webSectionName,webRestrictedTeX,webIgnoredStuff " Genuine C/C++ material. This syntactic region covers both the definition " part and the C/C++ part of a CWEB section; it is ended by the TeX part of " the next section. syntax region webCpart start="@[dfscp<(]" end="@[ \*]" contains=@webIncludedC,webSectionName,webRestrictedTeX,webIgnoredStuff " Section names contain C/C++ material only in inner context. syntax region webSectionName start="@[<(]" end="@>" contains=webInnerCcontext contained " The contents of "control texts" is not treated as TeX material, because in " non-trivial cases this completely clobbers the syntax recognition. Instead, " we highlight these elements as "strings". syntax region webRestrictedTeX start="@[\^\.:t=q]" end="@>" oneline " Double-@ means single-@, anywhere in the CWEB source. (This allows e-mail " address without going into C/C++ mode.) syntax match webIgnoredStuff "@@" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link webRestrictedTeX String let b:current_syntax = "cweb" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]S62v~ ~ vim80/syntax/mix.vimnu[" Vim syntax file " Language: MIX (Donald Knuth's assembly language used in TAOCP) " Maintainer: Wu Yongwei " Filenames: *.mixal *.mix " Last Change: 2017-11-26 15:21:36 +0800 " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore " Special processing of ALF directive: implementations vary whether quotation " marks are needed syn match mixAlfParam #\s\{1,2\}"\?[^"]\{,5\}"\?# contains=mixString nextgroup=mixEndComment contained " Region for parameters syn match mixParam #[-+*/:=0-9a-z,()"]\+# contains=mixIdentifier,mixSpecial,mixNumber,mixString,mixLabel nextgroup=mixEndComment contained " Comment at the line end syn match mixEndComment ".*" contains=mixRegister contained " Identifier; must go before literals syn match mixIdentifier "[a-z0-9_]\+" contained " Literals syn match mixSpecial "[-+*/:=]" contained syn match mixNumber "[0-9]\+\>" contained syn region mixString start=+"+ skip=+\\"+ end=+"+ contained " Labels syn match mixLabel "^[a-z0-9_]\{,10\}\s\+" nextgroup=mixAlfSpecial,mixOpcode,mixDirective syn match mixLabel "[0-9][BF]" contained " Comments syn match mixComment "^\*.*" contains=mixRegister " Directives syn keyword mixDirective ORIG EQU CON END nextgroup=mixParam contained skipwhite syn keyword mixDirective ALF nextgroup=mixAlfParam contained " Opcodes syn keyword mixOpcode NOP HLT NUM CHAR FLOT FIX nextgroup=mixEndComment contained syn keyword mixOpcode FADD FSUB FMUL FDIV FCMP MOVE ADD SUB MUL DIV IOC IN OUT JRED JBUS JMP JSJ JOV JNOV JL JE JG JLE JNE JGE SLA SRA SLAX SRAX SLC SRC nextgroup=mixParam contained skipwhite syn keyword mixOpcode SLB SRB JAE JAO JXE JXO nextgroup=mixParam contained skipwhite syn match mixOpcode "LD[AX1-6]N\?\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "ST[AX1-6JZ]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "EN[TN][AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "INC[AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "DEC[AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "CMP[AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "J[AX1-6]N\?[NZP]\>" nextgroup=mixParam contained skipwhite " Switch back to being case sensitive syn case match " Registers (only to be used in comments now) syn keyword mixRegister rA rX rI1 rI2 rI3 rI4 rI5 rI6 rJ contained " The default highlighting hi def link mixRegister Special hi def link mixLabel Define hi def link mixComment Comment hi def link mixEndComment Comment hi def link mixDirective Keyword hi def link mixOpcode Keyword hi def link mixSpecial Special hi def link mixNumber Number hi def link mixString String hi def link mixAlfParam String hi def link mixIdentifier Identifier let b:current_syntax = "mix" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 PK&]mmvim80/syntax/setserial.vimnu[" Vim syntax file " Language: setserial(8) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn match setserialBegin display '^' \ nextgroup=setserialDevice,setserialComment \ skipwhite syn match setserialDevice contained display '\%(/[^ \t/]*\)\+' \ nextgroup=setserialParameter skipwhite syn keyword setserialParameter contained port irq baud_base divisor \ close_delay closing_wait rx_trigger \ tx_trigger flow_off flow_on rx_timeout \ nextgroup=setserialNumber skipwhite syn keyword setserialParameter contained uart \ nextgroup=setserialUARTType skipwhite syn keyword setserialParameter contained autoconfig auto_irq skip_test \ spd_hi spd_vhi spd_shi spd_warp spd_cust \ spd_normal sak fourport session_lockout \ pgrp_lockout hup_notify split_termios \ callout_nohup low_latency \ nextgroup=setserialParameter skipwhite syn match setserialParameter contained display \ '\^\%(auto_irq\|skip_test\|sak\|fourport\)' \ contains=setserialNegation \ nextgroup=setserialParameter skipwhite syn match setserialParameter contained display \ '\^\%(session_lockout\|pgrp_lockout\)' \ contains=setserialNegation \ nextgroup=setserialParameter skipwhite syn match setserialParameter contained display \ '\^\%(hup_notify\|split_termios\)' \ contains=setserialNegation \ nextgroup=setserialParameter skipwhite syn match setserialParameter contained display \ '\^\%(callout_nohup\|low_latency\)' \ contains=setserialNegation \ nextgroup=setserialParameter skipwhite syn keyword setserialParameter contained set_multiport \ nextgroup=setserialMultiport skipwhite syn match setserialNumber contained display '\<\d\+\>' \ nextgroup=setserialParameter skipwhite syn match setserialNumber contained display '0x\x\+' \ nextgroup=setserialParameter skipwhite syn keyword setserialUARTType contained none syn match setserialUARTType contained display \ '8250\|16[4789]50\|16550A\=\|16650\%(V2\)\=' \ nextgroup=setserialParameter skipwhite syn match setserialUARTType contained display '166[59]4' \ nextgroup=setserialParameter skipwhite syn match setserialNegation contained display '\^' syn match setserialMultiport contained '\' \ nextgroup=setserialPort skipwhite syn match setserialPort contained display '\<\d\+\>' \ nextgroup=setserialMask skipwhite syn match setserialPort contained display '0x\x\+' \ nextgroup=setserialMask skipwhite syn match setserialMask contained '\' \ nextgroup=setserialBitMask skipwhite syn match setserialBitMask contained display '\<\d\+\>' \ nextgroup=setserialMatch skipwhite syn match setserialBitMask contained display '0x\x\+' \ nextgroup=setserialMatch skipwhite syn match setserialMatch contained '\' \ nextgroup=setserialMatchBits skipwhite syn match setserialMatchBits contained display '\<\d\+\>' \ nextgroup=setserialMultiport skipwhite syn match setserialMatchBits contained display '0x\x\+' \ nextgroup=setserialMultiport skipwhite syn keyword setserialTodo contained TODO FIXME XXX NOTE syn region setserialComment display oneline start='^\s*#' end='$' \ contains=setserialTodo,@Spell hi def link setserialTodo Todo hi def link setserialComment Comment hi def link setserialDevice Normal hi def link setserialParameter Identifier hi def link setserialNumber Number hi def link setserialUARTType Type hi def link setserialNegation Operator hi def link setserialMultiport Type hi def link setserialPort setserialNumber hi def link setserialMask Type hi def link setserialBitMask setserialNumber hi def link setserialMatch Type hi def link setserialMatchBits setserialNumber let b:current_syntax = "setserial" let &cpo = s:cpo_save unlet s:cpo_save PK&]d,!,!vim80/syntax/debcontrol.vimnu[" Vim syntax file " Language: Debian control files " Maintainer: Debian Vim Maintainers " Former Maintainers: Gerfried Fuchs " Wichert Akkerman " Last Change: 2018 Jan 06 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim " Standard syntax initialization if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " Should match case except for the keys of each field syn case match syn iskeyword @,48-57,-,/ " Everything that is not explicitly matched by the rules below syn match debcontrolElse "^.*$" " Common seperators syn match debControlComma ",[ \t]*" syn match debControlSpace "[ \t]" let s:kernels = ['linux', 'hurd', 'kfreebsd', 'knetbsd', 'kopensolaris', 'netbsd'] let s:archs = [ \ 'alpha', 'amd64', 'armeb', 'armel', 'armhf', 'arm64', 'avr32', 'hppa' \, 'i386', 'ia64', 'lpia', 'm32r', 'm68k', 'mipsel', 'mips64el', 'mips' \, 'powerpcspe', 'powerpc', 'ppc64el', 'ppc64', 's390x', 's390', 'sh3eb' \, 'sh3', 'sh4eb', 'sh4', 'sh', 'sparc64', 'sparc', 'x32' \ ] let s:pairs = [ \ 'hurd-i386', 'kfreebsd-i386', 'kfreebsd-amd64', 'knetbsd-i386' \, 'kopensolaris-i386', 'netbsd-alpha', 'netbsd-i386' \ ] " Define some common expressions we can use later on syn keyword debcontrolArchitecture contained all any exe 'syn keyword debcontrolArchitecture contained '. join(map(s:kernels, {k,v -> v .'-any'})) exe 'syn keyword debcontrolArchitecture contained '. join(map(s:archs, {k,v -> 'any-'.v})) exe 'syn keyword debcontrolArchitecture contained '. join(s:archs) exe 'syn keyword debcontrolArchitecture contained '. join(s:pairs) unlet s:kernels s:archs s:pairs let s:sections = [ \ 'admin', 'cli-mono', 'comm', 'database', 'debian-installer', 'debug' \, 'devel', 'doc', 'editors', 'education', 'electronics', 'embedded' \, 'fonts', 'games', 'gnome', 'gnustep', 'gnu-r', 'golang', 'graphics' \, 'hamradio', 'haskell', 'httpd', 'interpreters', 'introspection' \, 'java\%(script\)\=', 'kde', 'kernel', 'libs', 'libdevel', 'lisp' \, 'localization', 'mail', 'math', 'metapackages', 'misc', 'net' \, 'news', 'ocaml', 'oldlibs', 'otherosfs', 'perl', 'php', 'python' \, 'ruby', 'rust', 'science', 'shells', 'sound', 'text', 'tex' \, 'utils', 'vcs', 'video', 'web', 'x11', 'xfce', 'zope' \ ] syn keyword debcontrolMultiArch contained no foreign allowed same syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+" syn keyword debcontrolPriority contained extra important optional required standard exe 'syn match debcontrolSection contained "\%(\%(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\|restricted\|universe\|multiverse\)/\)\=\%('.join(s:sections, '\|').'\)"' syn keyword debcontrolPackageType contained udeb deb syn match debcontrolVariable contained "\${.\{-}}" syn keyword debcontrolDmUpload contained yes syn keyword debcontrolYesNo contained yes no syn match debcontrolR3 contained "\<\%(no\|binary-targets\|[[:graph:]]\+/[[:graph:]]\+\%( \+[[:graph:]]\+/[[:graph:]]\+\)*\)\>" unlet s:sections " A URL (using the domain name definitions from RFC 1034 and 1738), right now " only enforce protocol and some sanity on the server/path part; syn match debcontrolHTTPUrl contained "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$" syn match debcontrolVcsSvn contained "\vsvn%(\+ssh)?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$" syn match debcontrolVcsCvs contained "\v%(\-d *)?:pserver:[^@]+\@[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?:/[^[:space:]]*%( [^[:space:]]+)?$" syn match debcontrolVcsGit contained "\v%(git|https?)://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?%(\s+-b\s+[^ ~^:?*[\\]+)?$" " An email address syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+" syn match debcontrolEmail "<.\{-}>" " #-Comments syn match debcontrolComment "^#.*$" contains=@Spell syn case ignore " Handle all fields from deb-src-control(5) " Fields for which we do strict syntax checking syn region debcontrolStrictField matchgroup=debcontrolKey start="^Architecture: *" end="$" contains=debcontrolArchitecture,debcontrolSpace oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^Multi-Arch: *" end="$" contains=debcontrolMultiArch oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Package\|Source\): *" end="$" contains=debcontrolName oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^Priority: *" end="$" contains=debcontrolPriority oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^Section: *" end="$" contains=debcontrolSection oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XC-\)\=Package-Type: *" end="$" contains=debcontrolPackageType oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^Homepage: *" end="$" contains=debcontrolHTTPUrl oneline keepend syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\): *" end="$" contains=debcontrolHTTPUrl oneline keepend syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Svn: *" end="$" contains=debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Cvs: *" end="$" contains=debcontrolVcsCvs oneline keepend syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Git: *" end="$" contains=debcontrolVcsGit oneline keepend syn region debcontrolStrictField matchgroup=debcontrolKey start="^Rules-Requires-Root: *" end="$" contains=debcontrolR3 oneline syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Build-\)\=Essential: *" end="$" contains=debcontrolYesNo oneline syn region debcontrolStrictField matchgroup=debcontrolDeprecatedKey start="^\%(XS-\)\=DM-Upload-Allowed: *" end="$" contains=debcontrolDmUpload oneline " Catch-all for the other legal fields syn region debcontrolField matchgroup=debcontrolKey start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\|\%(XS-\)\=Testsuite\%(-Triggers\)\=\|Build-Profiles\|Tag\|Subarchitecture\|Kernel-Version\|Installer-Menu-Item\): " end="$" contains=debcontrolVariable,debcontrolEmail oneline syn region debcontrolMultiField matchgroup=debcontrolKey start="^\%(Build-\%(Conflicts\|Depends\)\%(-Arch\|-Indep\)\=\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Breaks\|Enhances\|Replaces\|Conflicts\|Provides\|Built-Using\|Uploaders\|X[SBC]\{0,3\}\%(Private-\)\=-[-a-zA-Z0-9]\+\): *" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolEmail,debcontrolVariable,debcontrolComment syn region debcontrolMultiFieldSpell matchgroup=debcontrolKey start="^Description: *" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolEmail,debcontrolVariable,debcontrolComment,@Spell " Associate our matches and regions with pretty colours hi def link debcontrolKey Keyword hi def link debcontrolField Normal hi def link debcontrolStrictField Error hi def link debcontrolDeprecatedKey Error hi def link debcontrolMultiField Normal hi def link debcontrolArchitecture Normal hi def link debcontrolMultiArch Normal hi def link debcontrolName Normal hi def link debcontrolPriority Normal hi def link debcontrolSection Normal hi def link debcontrolPackageType Normal hi def link debcontrolVariable Identifier hi def link debcontrolEmail Identifier hi def link debcontrolVcsSvn Identifier hi def link debcontrolVcsCvs Identifier hi def link debcontrolVcsGit Identifier hi def link debcontrolHTTPUrl Identifier hi def link debcontrolDmUpload Identifier hi def link debcontrolYesNo Identifier hi def link debcontrolR3 Identifier hi def link debcontrolComment Comment hi def link debcontrolElse Special let b:current_syntax = "debcontrol" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 sw=2 PK&].MMvim80/syntax/chaskell.vimnu[" Vim syntax file " Language: Haskell supporting c2hs binding hooks " Maintainer: Armin Sander " Last Change: 2001 November 1 " " 2001 November 1: Changed commands for sourcing haskell.vim " Enable binding hooks let b:hs_chs=1 " Include standard Haskell highlighting runtime! syntax/haskell.vim " vim: ts=8 PK&]1vim80/syntax/objc.vimnu[" Vim syntax file " Language: Objective-C " Maintainer: Kazunobu Kuriyama " Last Change: 2015 Dec 14 """ Preparation for loading ObjC stuff if exists("b:current_syntax") finish endif if &filetype != 'objcpp' syn clear runtime! syntax/c.vim endif let s:cpo_save = &cpo set cpo&vim """ ObjC proper stuff follows... syn keyword objcPreProcMacro __OBJC__ __OBJC2__ __clang__ " Defined Types syn keyword objcPrincipalType id Class SEL IMP BOOL instancetype syn keyword objcUsefulTerm nil Nil NO YES " Preprocessor Directives syn region objcImported display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ syn match objcImported display contained "\(<\h[-a-zA-Z0-9_/]*\.h>\|<[a-z0-9]\+>\)" syn match objcImport display "^\s*\(%:\|#\)\s*import\>\s*["<]" contains=objcImported " ObjC Compiler Directives syn match objcObjDef display /@interface\>\|@implementation\>\|@end\>\|@class\>/ syn match objcProtocol display /@protocol\>\|@optional\>\|@required\>/ syn match objcProperty display /@property\>\|@synthesize\>\|@dynamic\>/ syn match objcIvarScope display /@private\>\|@protected\>\|@public\>\|@package\>/ syn match objcInternalRep display /@selector\>\|@encode\>/ syn match objcException display /@try\>\|@throw\>\|@catch\|@finally\>/ syn match objcThread display /@synchronized\>/ syn match objcPool display /@autoreleasepool\>/ syn match objcModuleImport display /@import\>/ " ObjC Constant Strings syn match objcSpecial display contained "%@" syn region objcString start=+\(@"\|"\)+ skip=+\\\\\|\\"+ end=+"+ contains=cFormat,cSpecial,objcSpecial " ObjC Hidden Arguments syn keyword objcHiddenArgument self _cmd super " ObjC Type Qualifiers for Blocks syn keyword objcBlocksQualifier __block " ObjC Type Qualifiers for Object Lifetime syn keyword objcObjectLifetimeQualifier __strong __weak __unsafe_unretained __autoreleasing " ObjC Type Qualifiers for Toll-Free Bridge syn keyword objcTollFreeBridgeQualifier __bridge __bridge_retained __bridge_transfer " ObjC Type Qualifiers for Remote Messaging syn match objcRemoteMessagingQualifier display contained /\((\s*oneway\s\+\|(\s*in\s\+\|(\s*out\s\+\|(\s*inout\s\+\|(\s*bycopy\s\+\(in\(out\)\?\|out\)\?\|(\s*byref\s\+\(in\(out\)\?\|out\)\?\)/hs=s+1 " ObjC Storage Classes syn keyword objcStorageClass _Nullable _Nonnull _Null_unspecified syn keyword objcStorageClass __nullable __nonnull __null_unspecified syn keyword objcStorageClass nullable nonnull null_unspecified " ObjC type specifier syn keyword objcTypeSpecifier __kindof __covariant " ObjC Type Infomation Parameters syn keyword objcTypeInfoParams ObjectType KeyType " shorthand syn cluster objcTypeQualifier contains=objcBlocksQualifier,objcObjectLifetimeQualifier,objcTollFreeBridgeQualifier,objcRemoteMessagingQualifier " ObjC Fast Enumeration syn match objcFastEnumKeyword display /\sin\(\s\|$\)/ " ObjC Literal Syntax syn match objcLiteralSyntaxNumber display /@\(YES\>\|NO\>\|\d\|-\|+\)/ contains=cNumber,cFloat,cOctal syn match objcLiteralSyntaxSpecialChar display /@'/ contains=cSpecialCharacter syn match objcLiteralSyntaxChar display /@'[^\\]'/ syn match objcLiteralSyntaxOp display /@\((\|\[\|{\)/me=e-1,he=e-1 " ObjC Declared Property Attributes syn match objDeclPropAccessorNameAssign display /\s*=\s*/ contained syn region objcDeclPropAccessorName display start=/\(getter\|setter\)/ end=/\h\w*/ contains=objDeclPropAccessorNameAssign syn keyword objcDeclPropAccessorType readonly readwrite contained syn keyword objcDeclPropAssignSemantics assign retain copy contained syn keyword objcDeclPropAtomicity nonatomic contained syn keyword objcDeclPropARC strong weak contained syn match objcDeclPropNullable /\((\|\s\)nullable\(,\|)\)/ms=s+1,hs=s+1,me=e-1,he=e-1 contained syn match objcDeclPropNonnull /\((\|\s\)nonnull\(,\|)\)/ms=s+1,hs=s+1,me=e-1,he=e-1 contained syn match objcDeclPropNullUnspecified /\((\|\s\)null_unspecified\(,\|)\)/ms=s+1,hs=s+1,me=e-1,he=e-1 contained syn keyword objcDeclProcNullResettable null_resettable contained syn region objcDeclProp display transparent keepend start=/@property\s*(/ end=/)/ contains=objcProperty,objcDeclPropAccessorName,objcDeclPropAccessorType,objcDeclPropAssignSemantics,objcDeclPropAtomicity,objcDeclPropARC,objcDeclPropNullable,objcDeclPropNonnull,objcDeclPropNullUnspecified,objcDeclProcNullResettable " To distinguish colons in methods and dictionaries from those in C's labels. syn match objcColon display /^\s*\h\w*\s*\:\(\s\|.\)/me=e-1,he=e-1 " To distinguish a protocol list from system header files syn match objcProtocolList display /<\h\w*\(\s*,\s*\h\w*\)*>/ contains=objcPrincipalType,cType,Type,objcType,objcTypeInfoParams " Type info for collection classes syn match objcTypeInfo display /<\h\w*\s*<\(\h\w*\s*\**\|\h\w*\)>>/ contains=objcPrincipalType,cType,Type,objcType,objcTypeInfoParams " shorthand syn cluster objcCEntities contains=cType,cStructure,cStorageClass,cString,cCharacter,cSpecialCharacter,cNumbers,cConstant,cOperator,cComment,cCommentL,cStatement,cLabel,cConditional,cRepeat syn cluster objcObjCEntities contains=objcHiddenArgument,objcPrincipalType,objcString,objcUsefulTerm,objcProtocol,objcInternalRep,objcException,objcThread,objcPool,objcModuleImport,@objcTypeQualifier,objcLiteralSyntaxNumber,objcLiteralSyntaxOp,objcLiteralSyntaxChar,objcLiteralSyntaxSpecialChar,objcProtocolList,objcColon,objcFastEnumKeyword,objcType,objcClass,objcMacro,objcEnum,objcEnumValue,objcExceptionValue,objcNotificationValue,objcConstVar,objcPreProcMacro,objcTypeInfo " Objective-C Message Expressions syn region objcMethodCall start=/\[/ end=/\]/ contains=objcMethodCall,objcBlocks,@objcObjCEntities,@objcCEntities " To distinguish class method and instance method syn match objcInstanceMethod display /^s*-\s*/ syn match objcClassMethod display /^s*+\s*/ " ObjC Blocks syn region objcBlocks start=/\(\^\s*([^)]\+)\s*{\|\^\s*{\)/ end=/}/ contains=objcBlocks,objcMethodCall,@objcObjCEntities,@objcCEntities syn cluster cParenGroup add=objcMethodCall syn cluster cPreProcGroup add=objcMethodCall """ Foundation Framework syn match objcClass /Protocol\s*\*/me=s+8,he=s+8 """"""""""""""""" " NSObjCRuntime.h syn keyword objcType NSInteger NSUInteger NSComparator syn keyword objcEnum NSComparisonResult syn keyword objcEnumValue NSOrderedAscending NSOrderedSame NSOrderedDescending syn keyword objcEnum NSEnumerationOptions syn keyword objcEnumValue NSEnumerationConcurrent NSEnumerationReverse syn keyword objcEnum NSSortOptions syn keyword objcEnumValue NSSortConcurrent NSSortStable syn keyword objcEnumValue NSNotFound syn keyword objcMacro NSIntegerMax NSIntegerMin NSUIntegerMax syn keyword objcMacro NS_INLINE NS_BLOCKS_AVAILABLE NS_NONATOMIC_IOSONLY NS_FORMAT_FUNCTION NS_FORMAT_ARGUMENT NS_RETURNS_RETAINED NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_AUTOMATED_REFCOUNT_UNAVAILABLE NS_AUTOMATED_REFCOUNT_WEAK_UNAVAILABLE NS_REQUIRES_PROPERTY_DEFINITIONS NS_REPLACES_RECEIVER NS_RELEASES_ARGUMENT NS_VALID_UNTIL_END_OF_SCOPE NS_ROOT_CLASS NS_REQUIRES_SUPER NS_PROTOCOL_REQUIRES_EXPLICIT_IMPLEMENTATION NS_DESIGNATED_INITIALIZER NS_REQUIRES_NIL_TERMINATION syn keyword objcEnum NSQualityOfService syn keyword objcEnumValue NSQualityOfServiceUserInteractive NSQualityOfServiceUserInitiated NSQualityOfServiceUtility NSQualityOfServiceBackground NSQualityOfServiceDefault " NSRange.h syn keyword objcType NSRange NSRangePointer " NSGeometry.h syn keyword objcType NSPoint NSPointPointer NSPointArray NSSize NSSizePointer NSSizeArray NSRect NSRectPointer NSRectArray NSEdgeInsets syn keyword objcEnum NSRectEdge syn keyword objcEnumValue NSMinXEdge NSMinYEdge NSMaxXEdge NSMaxYEdge syn keyword objcEnumValue NSRectEdgeMinX NSRectEdgeMinY NSRectEdgeMaxX NSRectEdgeMaxY syn keyword objcConstVar NSZeroPoint NSZeroSize NSZeroRect NSEdgeInsetsZero syn keyword cType CGFloat CGPoint CGSize CGRect syn keyword objcEnum NSAlignmentOptions syn keyword objcEnumValue NSAlignMinXInward NSAlignMinYInward NSAlignMaxXInward NSAlignMaxYInward NSAlignWidthInward NSAlignHeightInward NSAlignMinXOutward NSAlignMinYOutward NSAlignMaxXOutward NSAlignMaxYOutward NSAlignWidthOutward NSAlignHeightOutward NSAlignMinXNearest NSAlignMinYNearest NSAlignMaxXNearest NSAlignMaxYNearest NSAlignWidthNearest NSAlignHeightNearest NSAlignRectFlipped NSAlignAllEdgesInward NSAlignAllEdgesOutward NSAlignAllEdgesNearest " NSDecimal.h syn keyword objcType NSDecimal syn keyword objcEnum NSRoundingMode syn keyword objcEnumValue NSRoundPlain NSRoundDown NSRoundUp NSRoundBankers syn keyword objcEnum NSCalculationError syn keyword objcEnumValue NSCalculationNoError NSCalculationLossOfPrecision NSCalculationUnderflow NSCalculationOverflow NSCalculationDivideByZero syn keyword objcConstVar NSDecimalMaxSize NSDecimalNoScale " NSDate.h syn match objcClass /NSDate\s*\*/me=s+6,he=s+6 syn keyword objcType NSTimeInterval syn keyword objcNotificationValue NSSystemClockDidChangeNotification syn keyword objcMacro NSTimeIntervalSince1970 " NSZone.h syn match objcType /NSZone\s*\*/me=s+6,he=s+6 syn keyword objcEnumValue NSScannedOption NSCollectorDisabledOption " NSError.h syn match objcClass /NSError\s*\*/me=s+7,he=s+7 syn keyword objcConstVar NSCocoaErrorDomain NSPOSIXErrorDomain NSOSStatusErrorDomain NSMachErrorDomain NSUnderlyingErrorKey NSLocalizedDescriptionKey NSLocalizedFailureReasonErrorKey NSLocalizedRecoverySuggestionErrorKey NSLocalizedRecoveryOptionsErrorKey NSRecoveryAttempterErrorKey NSHelpAnchorErrorKey NSStringEncodingErrorKey NSURLErrorKey NSFilePathErrorKey " NSException.h syn match objcClass /NSException\s*\*/me=s+11,he=s+11 syn match objcClass /NSAssertionHandler\s*\*/me=s+18,he=s+18 syn keyword objcType NSUncaughtExceptionHandler syn keyword objcConstVar NSGenericException NSRangeException NSInvalidArgumentException NSInternalInconsistencyException NSMallocException NSObjectInaccessibleException NSObjectNotAvailableException NSDestinationInvalidException NSPortTimeoutException NSInvalidSendPortException NSInvalidReceivePortException NSPortSendException NSPortReceiveException NSOldStyleException " NSNotification.h syn match objcClass /NSNotification\s*\*/me=s+14,he=s+14 syn match objcClass /NSNotificationCenter\s*\*/me=s+20,he=s+20 " NSDistributedNotificationCenter.h syn match objcClass /NSDistributedNotificationCenter\s*\*/me=s+31,he=s+31 syn keyword objcConstVar NSLocalNotificationCenterType syn keyword objcEnum NSNotificationSuspensionBehavior syn keyword objcEnumValue NSNotificationSuspensionBehaviorDrop NSNotificationSuspensionBehaviorCoalesce NSNotificationSuspensionBehaviorHold NSNotificationSuspensionBehaviorHold NSNotificationSuspensionBehaviorDeliverImmediately syn keyword objcEnumValue NSNotificationDeliverImmediately NSNotificationPostToAllSessions syn keyword objcEnum NSDistributedNotificationOptions syn keyword objcEnumValue NSDistributedNotificationDeliverImmediately NSDistributedNotificationPostToAllSessions " NSNotificationQueue.h syn match objcClass /NSNotificationQueue\s*\*/me=s+19,he=s+19 syn keyword objcEnum NSPostingStyle syn keyword objcEnumValue NSPostWhenIdle NSPostASAP NSPostNow syn keyword objcEnum NSNotificationCoalescing syn keyword objcEnumValue NSNotificationNoCoalescing NSNotificationCoalescingOnName NSNotificationCoalescingOnSender " NSEnumerator.h syn match objcClass /NSEnumerator\s*\*/me=s+12,he=s+12 syn match objcClass /NSEnumerator<.*>\s*\*/me=s+12,he=s+12 contains=objcTypeInfoParams syn keyword objcType NSFastEnumerationState " NSIndexSet.h syn match objcClass /NSIndexSet\s*\*/me=s+10,he=s+10 syn match objcClass /NSMutableIndexSet\s*\*/me=s+17,he=s+17 " NSCharecterSet.h syn match objcClass /NSCharacterSet\s*\*/me=s+14,he=s+14 syn match objcClass /NSMutableCharacterSet\s*\*/me=s+21,he=s+21 syn keyword objcConstVar NSOpenStepUnicodeReservedBase " NSURL.h syn match objcClass /NSURL\s*\*/me=s+5,he=s+5 syn keyword objcEnum NSURLBookmarkCreationOptions syn keyword objcEnumValue NSURLBookmarkCreationPreferFileIDResolution NSURLBookmarkCreationMinimalBookmark NSURLBookmarkCreationSuitableForBookmarkFile NSURLBookmarkCreationWithSecurityScope NSURLBookmarkCreationSecurityScopeAllowOnlyReadAccess syn keyword objcEnum NSURLBookmarkResolutionOptions syn keyword objcEnumValue NSURLBookmarkResolutionWithoutUI NSURLBookmarkResolutionWithoutMounting NSURLBookmarkResolutionWithSecurityScope syn keyword objcType NSURLBookmarkFileCreationOptions syn keyword objcConstVar NSURLFileScheme NSURLKeysOfUnsetValuesKey syn keyword objcConstVar NSURLNameKey NSURLLocalizedNameKey NSURLIsRegularFileKey NSURLIsDirectoryKey NSURLIsSymbolicLinkKey NSURLIsVolumeKey NSURLIsPackageKey NSURLIsApplicationKey NSURLApplicationIsScriptableKey NSURLIsSystemImmutableKey NSURLIsUserImmutableKey NSURLIsHiddenKey NSURLHasHiddenExtensionKey NSURLCreationDateKey NSURLContentAccessDateKey NSURLContentModificationDateKey NSURLAttributeModificationDateKey NSURLLinkCountKey NSURLParentDirectoryURLKey NSURLVolumeURLKey NSURLTypeIdentifierKey NSURLLocalizedTypeDescriptionKey NSURLLabelNumberKey NSURLLabelColorKey NSURLLocalizedLabelKey NSURLEffectiveIconKey NSURLCustomIconKey NSURLFileResourceIdentifierKey NSURLVolumeIdentifierKey NSURLPreferredIOBlockSizeKey NSURLIsReadableKey NSURLIsWritableKey NSURLIsExecutableKey NSURLFileSecurityKey NSURLIsExcludedFromBackupKey NSURLTagNamesKey NSURLPathKey NSURLIsMountTriggerKey NSURLGenerationIdentifierKey NSURLDocumentIdentifierKey NSURLAddedToDirectoryDateKey NSURLQuarantinePropertiesKey NSURLFileResourceTypeKey syn keyword objcConstVar NSURLFileResourceTypeNamedPipe NSURLFileResourceTypeCharacterSpecial NSURLFileResourceTypeDirectory NSURLFileResourceTypeBlockSpecial NSURLFileResourceTypeRegular NSURLFileResourceTypeSymbolicLink NSURLFileResourceTypeSocket NSURLFileResourceTypeUnknown NSURLThumbnailDictionaryKey NSURLThumbnailKey NSThumbnail1024x1024SizeKey syn keyword objcConstVar NSURLFileSizeKey NSURLFileAllocatedSizeKey NSURLTotalFileSizeKey NSURLTotalFileAllocatedSizeKey NSURLIsAliasFileKey NSURLFileProtectionKey NSURLFileProtectionNone NSURLFileProtectionComplete NSURLFileProtectionCompleteUnlessOpen NSURLFileProtectionCompleteUntilFirstUserAuthentication syn keyword objcConstVar NSURLVolumeLocalizedFormatDescriptionKey NSURLVolumeTotalCapacityKey NSURLVolumeAvailableCapacityKey NSURLVolumeResourceCountKey NSURLVolumeSupportsPersistentIDsKey NSURLVolumeSupportsSymbolicLinksKey NSURLVolumeSupportsHardLinksKey NSURLVolumeSupportsJournalingKey NSURLVolumeIsJournalingKey NSURLVolumeSupportsSparseFilesKey NSURLVolumeSupportsZeroRunsKey NSURLVolumeSupportsCaseSensitiveNamesKey NSURLVolumeSupportsCasePreservedNamesKey NSURLVolumeSupportsRootDirectoryDatesKey NSURLVolumeSupportsVolumeSizesKey NSURLVolumeSupportsRenamingKey NSURLVolumeSupportsAdvisoryFileLockingKey NSURLVolumeSupportsExtendedSecurityKey NSURLVolumeIsBrowsableKey NSURLVolumeMaximumFileSizeKey NSURLVolumeIsEjectableKey NSURLVolumeIsRemovableKey NSURLVolumeIsInternalKey NSURLVolumeIsAutomountedKey NSURLVolumeIsLocalKey NSURLVolumeIsReadOnlyKey NSURLVolumeCreationDateKey NSURLVolumeURLForRemountingKey NSURLVolumeUUIDStringKey NSURLVolumeNameKey NSURLVolumeLocalizedNameKey syn keyword objcConstVar NSURLIsUbiquitousItemKey NSURLUbiquitousItemHasUnresolvedConflictsKey NSURLUbiquitousItemIsDownloadedKey NSURLUbiquitousItemIsDownloadingKey NSURLUbiquitousItemIsUploadedKey NSURLUbiquitousItemIsUploadingKey NSURLUbiquitousItemPercentDownloadedKey NSURLUbiquitousItemPercentUploadedKey NSURLUbiquitousItemDownloadingStatusKey NSURLUbiquitousItemDownloadingErrorKey NSURLUbiquitousItemUploadingErrorKey NSURLUbiquitousItemDownloadRequestedKey NSURLUbiquitousItemContainerDisplayNameKey NSURLUbiquitousItemDownloadingStatusNotDownloaded NSURLUbiquitousItemDownloadingStatusDownloaded NSURLUbiquitousItemDownloadingStatusCurrent """""""""""" " NSString.h syn match objcClass /NSString\s*\*/me=s+8,he=s+8 syn match objcClass /NSMutableString\s*\*/me=s+15,he=s+15 syn keyword objcType unichar syn keyword objcExceptionValue NSParseErrorException NSCharacterConversionException syn keyword objcMacro NSMaximumStringLength syn keyword objcEnum NSStringCompareOptions syn keyword objcEnumValue NSCaseInsensitiveSearch NSLiteralSearch NSBackwardsSearch NSAnchoredSearch NSNumericSearch NSDiacriticInsensitiveSearch NSWidthInsensitiveSearch NSForcedOrderingSearch NSRegularExpressionSearch syn keyword objcEnum NSStringEncoding syn keyword objcEnumValue NSProprietaryStringEncoding syn keyword objcEnumValue NSASCIIStringEncoding NSNEXTSTEPStringEncoding NSJapaneseEUCStringEncoding NSUTF8StringEncoding NSISOLatin1StringEncoding NSSymbolStringEncoding NSNonLossyASCIIStringEncoding NSShiftJISStringEncoding NSISOLatin2StringEncoding NSUnicodeStringEncoding NSWindowsCP1251StringEncoding NSWindowsCP1252StringEncoding NSWindowsCP1253StringEncoding NSWindowsCP1254StringEncoding NSWindowsCP1250StringEncoding NSISO2022JPStringEncoding NSMacOSRomanStringEncoding NSUTF16StringEncoding NSUTF16BigEndianStringEncoding NSUTF16LittleEndianStringEncoding NSUTF32StringEncoding NSUTF32BigEndianStringEncoding NSUTF32LittleEndianStringEncoding syn keyword objcEnum NSStringEncodingConversionOptions syn keyword objcEnumValue NSStringEncodingConversionAllowLossy NSStringEncodingConversionExternalRepresentation syn keyword objcEnum NSStringEnumerationOptions syn keyword objcEnumValue NSStringEnumerationByLines NSStringEnumerationByParagraphs NSStringEnumerationByComposedCharacterSequences NSStringEnumerationByWords NSStringEnumerationBySentences NSStringEnumerationReverse NSStringEnumerationSubstringNotRequired NSStringEnumerationLocalized syn keyword objcConstVar NSStringTransformLatinToKatakana NSStringTransformLatinToHiragana NSStringTransformLatinToHangul NSStringTransformLatinToArabic NSStringTransformLatinToHebrew NSStringTransformLatinToThai NSStringTransformLatinToCyrillic NSStringTransformLatinToGreek NSStringTransformToLatin NSStringTransformMandarinToLatin NSStringTransformHiraganaToKatakana NSStringTransformFullwidthToHalfwidth NSStringTransformToXMLHex NSStringTransformToUnicodeName NSStringTransformStripCombiningMarks NSStringTransformStripDiacritics syn keyword objcConstVar NSStringEncodingDetectionSuggestedEncodingsKey NSStringEncodingDetectionDisallowedEncodingsKey NSStringEncodingDetectionUseOnlySuggestedEncodingsKey NSStringEncodingDetectionAllowLossyKey NSStringEncodingDetectionFromWindowsKey NSStringEncodingDetectionLossySubstitutionKey NSStringEncodingDetectionLikelyLanguageKey " NSAttributedString.h syn match objcClass /NSAttributedString\s*\*/me=s+18,he=s+18 syn match objcClass /NSMutableAttributedString\s*\*/me=s+25,he=s+25 syn keyword objcEnum NSAttributedStringEnumerationOptions syn keyword objcEnumValue NSAttributedStringEnumerationReverse NSAttributedStringEnumerationLongestEffectiveRangeNotRequired " NSValue.h syn match objcClass /NSValue\s*\*/me=s+7,he=s+7 syn match objcClass /NSNumber\s*\*/me=s+8,he=s+8 " NSDecimalNumber.h syn match objcClass /NSDecimalNumber\s*\*/me=s+15,he=s+15 syn match objcClass /NSDecimalNumberHandler\s*\*/me=s+22,he=s+22 syn keyword objcExceptionValue NSDecimalNumberExactnessException NSDecimalNumberOverflowException NSDecimalNumberUnderflowException NSDecimalNumberDivideByZeroException " NSData.h syn match objcClass /NSData\s*\*/me=s+6,he=s+6 syn match objcClass /NSMutableData\s*\*/me=s+13,he=s+13 syn keyword objcEnum NSDataReadingOptions syn keyword objcEnumValue NSDataReadingMappedIfSafe NSDataReadingUncached NSDataReadingMappedAlways NSDataReadingMapped NSMappedRead NSUncachedRead syn keyword objcEnum NSDataWritingOptions syn keyword objcEnumValue NSDataWritingAtomic NSDataWritingWithoutOverwriting NSDataWritingFileProtectionNone NSDataWritingFileProtectionComplete NSDataWritingFileProtectionCompleteUnlessOpen NSDataWritingFileProtectionCompleteUntilFirstUserAuthentication NSDataWritingFileProtectionMask NSAtomicWrite syn keyword objcEnum NSDataSearchOptions syn keyword objcEnumValue NSDataSearchBackwards NSDataSearchAnchored syn keyword objcEnum NSDataBase64EncodingOptions NSDataBase64DecodingOptions syn keyword objcEnumValue NSDataBase64Encoding64CharacterLineLength NSDataBase64Encoding76CharacterLineLength NSDataBase64EncodingEndLineWithCarriageReturn NSDataBase64EncodingEndLineWithLineFeed NSDataBase64DecodingIgnoreUnknownCharacters " NSArray.h syn match objcClass /NSArray\s*\*/me=s+7,he=s+7 syn match objcClass /NSArray<.*>\s*\*/me=s+7,he=s+7 contains=objcTypeInfoParams syn match objcClass /NSMutableArray\s*\*/me=s+14,he=s+14 syn match objcClass /NSMutableArray<.*>\s*\*/me=s+14,he=s+14 contains=objcTypeInfoParams syn keyword objcEnum NSBinarySearchingOptions syn keyword objcEnumValue NSBinarySearchingFirstEqual NSBinarySearchingLastEqual NSBinarySearchingInsertionIndex " NSDictionary.h syn match objcClass /NSDictionary\s*\*/me=s+12,he=s+12 syn match objcClass /NSDictionary<.*>\s*\*/me=s+12,he=s+12 contains=objcTypeInfoParams syn match objcClass /NSMutableDictionary\s*\*/me=s+19,he=s+19 syn match objcClass /NSMutableDictionary<.*>\s*\*/me=s+19,he=s+19 contains=objcTypeInfoParams " NSSet.h syn match objcClass /NSSet\s*\*/me=s+5,me=s+5 syn match objcClass /NSSet<.*>\s*\*/me=s+5,me=s+5 contains=objcTypeInfoParams syn match objcClass /NSMutableSet\s*\*/me=s+12,me=s+12 syn match objcClass /NSMutableSet<.*>\s*\*/me=s+12,me=s+12 contains=objcTypeInfoParams syn match objcClass /NSCountedSet\s*\*/me=s+12,me=s+12 syn match objcClass /NSCountedSet<.*>\s*\*/me=s+12,me=s+12 contains=objcTypeInfoParams " NSOrderedSet.h syn match objcClass /NSOrderedSet\s*\*/me=s+12,me=s+12 syn match objcClass /NSOrderedSet<.*>\s*\*/me=s+12,me=s+12 contains=objcTypeInfoParams syn match objcClass /NSMutableOrderedSet\s*\*/me=s+19,me=s+19 syn match objcClass /NSMutableOrderedSet<.*>\s*\*/me=s+19,me=s+19 """"""""""""""""""" " NSPathUtilities.h syn keyword objcEnum NSSearchPathDirectory syn keyword objcEnumValue NSApplicationDirectory NSDemoApplicationDirectory NSDeveloperApplicationDirectory NSAdminApplicationDirectory NSLibraryDirectory NSDeveloperDirectory NSUserDirectory NSDocumentationDirectory NSDocumentDirectory NSCoreServiceDirectory NSAutosavedInformationDirectory NSDesktopDirectory NSCachesDirectory NSApplicationSupportDirectory NSDownloadsDirectory NSInputMethodsDirectory NSMoviesDirectory NSMusicDirectory NSPicturesDirectory NSPrinterDescriptionDirectory NSSharedPublicDirectory NSPreferencePanesDirectory NSApplicationScriptsDirectory NSItemReplacementDirectory NSAllApplicationsDirectory NSAllLibrariesDirectory NSTrashDirectory syn keyword objcEnum NSSearchPathDomainMask syn keyword objcEnumValue NSUserDomainMask NSLocalDomainMask NSNetworkDomainMask NSSystemDomainMask NSAllDomainsMask " NSFileManger.h syn match objcClass /NSFileManager\s*\*/me=s+13,he=s+13 syn match objcClass /NSDirectoryEnumerator\s*\*/me=s+21,he=s+21 contains=objcTypeInfoParams syn match objcClass /NSDirectoryEnumerator<.*>\s*\*/me=s+21,he=s+21 syn keyword objcEnum NSVolumeEnumerationOptions syn keyword objcEnumValue NSVolumeEnumerationSkipHiddenVolumes NSVolumeEnumerationProduceFileReferenceURLs syn keyword objcEnum NSURLRelationship syn keyword objcEnumValue NSURLRelationshipContains NSURLRelationshipSame NSURLRelationshipOther syn keyword objcEnum NSFileManagerUnmountOptions syn keyword objcEnumValue NSFileManagerUnmountAllPartitionsAndEjectDisk NSFileManagerUnmountWithoutUI syn keyword objcConstVar NSFileManagerUnmountDissentingProcessIdentifierErrorKey syn keyword objcEnum NSDirectoryEnumerationOptions syn keyword objcEnumValue NSDirectoryEnumerationSkipsSubdirectoryDescendants NSDirectoryEnumerationSkipsPackageDescendants NSDirectoryEnumerationSkipsHiddenFiles syn keyword objcEnum NSFileManagerItemReplacementOptions syn keyword objcEnumValue NSFileManagerItemReplacementUsingNewMetadataOnly NSFileManagerItemReplacementWithoutDeletingBackupItem syn keyword objcNotificationValue NSUbiquityIdentityDidChangeNotification syn keyword objcConstVar NSFileType NSFileTypeDirectory NSFileTypeRegular NSFileTypeSymbolicLink NSFileTypeSocket NSFileTypeCharacterSpecial NSFileTypeBlockSpecial NSFileTypeUnknown NSFileSize NSFileModificationDate NSFileReferenceCount NSFileDeviceIdentifier NSFileOwnerAccountName NSFileGroupOwnerAccountName NSFilePosixPermissions NSFileSystemNumber NSFileSystemFileNumber NSFileExtensionHidden NSFileHFSCreatorCode NSFileHFSTypeCode NSFileImmutable NSFileAppendOnly NSFileCreationDate NSFileOwnerAccountID NSFileGroupOwnerAccountID NSFileBusy NSFileProtectionKey NSFileProtectionNone NSFileProtectionComplete NSFileProtectionCompleteUnlessOpen NSFileProtectionCompleteUntilFirstUserAuthentication NSFileSystemSize NSFileSystemFreeSize NSFileSystemNodes NSFileSystemFreeNodes " NSFileHandle.h syn match objcClass /NSFileHandle\s*\*/me=s+12,he=s+12 syn keyword objcExceptionValue NSFileHandleOperationException syn keyword objcNotificationValue NSFileHandleReadCompletionNotification NSFileHandleReadToEndOfFileCompletionNotification NSFileHandleConnectionAcceptedNotification NSFileHandleDataAvailableNotification NSFileHandleNotificationDataItem NSFileHandleNotificationFileHandleItem NSFileHandleNotificationMonitorModes syn match objcClass /NSPipe\s*\*/me=s+6,he=s+6 """""""""""" " NSLocale.h syn match objcClass /NSLocale\s*\*/me=s+8,he=s+8 syn keyword objcEnum NSLocaleLanguageDirection syn keyword objcEnumValue NSLocaleLanguageDirectionUnknown NSLocaleLanguageDirectionLeftToRight NSLocaleLanguageDirectionRightToLeft NSLocaleLanguageDirectionTopToBottom NSLocaleLanguageDirectionBottomToTop syn keyword objcNotificationValue NSCurrentLocaleDidChangeNotification syn keyword objcConstVar NSLocaleIdentifier NSLocaleLanguageCode NSLocaleCountryCode NSLocaleScriptCode NSLocaleVariantCode NSLocaleExemplarCharacterSet NSLocaleCalendar NSLocaleCollationIdentifier NSLocaleUsesMetricSystem NSLocaleMeasurementSystem NSLocaleDecimalSeparator NSLocaleGroupingSeparator NSLocaleCurrencySymbol NSLocaleCurrencyCode NSLocaleCollatorIdentifier NSLocaleQuotationBeginDelimiterKey NSLocaleQuotationEndDelimiterKey NSLocaleAlternateQuotationBeginDelimiterKey NSLocaleAlternateQuotationEndDelimiterKey NSGregorianCalendar NSBuddhistCalendar NSChineseCalendar NSHebrewCalendar NSIslamicCalendar NSIslamicCivilCalendar NSJapaneseCalendar NSRepublicOfChinaCalendar NSPersianCalendar NSIndianCalendar NSISO8601Calendar " NSFormatter.h syn match objcClass /NSFormatter\s*\*/me=s+11,he=s+11 syn keyword objcEnum NSFormattingContext NSFormattingUnitStyle syn keyword objcEnumValue NSFormattingContextUnknown NSFormattingContextDynamic NSFormattingContextStandalone NSFormattingContextListItem NSFormattingContextBeginningOfSentence NSFormattingContextMiddleOfSentence NSFormattingUnitStyleShort NSFormattingUnitStyleMedium NSFormattingUnitStyleLong " NSNumberFormatter.h syn match objcClass /NSNumberFormatter\s*\*/me=s+17,he=s+17 syn keyword objcEnum NSNumberFormatterStyle syn keyword objcEnumValue NSNumberFormatterNoStyle NSNumberFormatterDecimalStyle NSNumberFormatterCurrencyStyle NSNumberFormatterPercentStyle NSNumberFormatterScientificStyle NSNumberFormatterSpellOutStyle NSNumberFormatterOrdinalStyle NSNumberFormatterCurrencyISOCodeStyle NSNumberFormatterCurrencyPluralStyle NSNumberFormatterCurrencyAccountingStyle syn keyword objcEnum NSNumberFormatterBehavior syn keyword objcEnumValue NSNumberFormatterBehaviorDefault NSNumberFormatterBehavior10_0 NSNumberFormatterBehavior10_4 syn keyword objcEnum NSNumberFormatterPadPosition syn keyword objcEnumValue NSNumberFormatterPadBeforePrefix NSNumberFormatterPadAfterPrefix NSNumberFormatterPadBeforeSuffix NSNumberFormatterPadAfterSuffix syn keyword objcEnum NSNumberFormatterRoundingMode syn keyword objcEnumValue NSNumberFormatterRoundCeiling NSNumberFormatterRoundFloor NSNumberFormatterRoundDown NSNumberFormatterRoundUp NSNumberFormatterRoundHalfEven NSNumberFormatterRoundHalfDown NSNumberFormatterRoundHalfUp " NSDateFormatter.h syn match objcClass /NSDateFormatter\s*\*/me=s+15,he=s+15 syn keyword objcEnum NSDateFormatterStyle syn keyword objcEnumValue NSDateFormatterNoStyle NSDateFormatterShortStyle NSDateFormatterMediumStyle NSDateFormatterLongStyle NSDateFormatterFullStyle syn keyword objcEnum NSDateFormatterBehavior syn keyword objcEnumValue NSDateFormatterBehaviorDefault NSDateFormatterBehavior10_0 NSDateFormatterBehavior10_4 " NSCalendar.h syn match objcClass /NSCalendar\s*\*/me=s+10,he=s+10 syn keyword objcConstVar NSCalendarIdentifierGregorian NSCalendarIdentifierBuddhist NSCalendarIdentifierChinese NSCalendarIdentifierCoptic NSCalendarIdentifierEthiopicAmeteMihret NSCalendarIdentifierEthiopicAmeteAlem NSCalendarIdentifierHebrew NSCalendarIdentifierISO8601 NSCalendarIdentifierIndian NSCalendarIdentifierIslamic NSCalendarIdentifierIslamicCivil NSCalendarIdentifierJapanese NSCalendarIdentifierPersian NSCalendarIdentifierRepublicOfChina NSCalendarIdentifierIslamicTabular NSCalendarIdentifierIslamicUmmAlQura syn keyword objcEnum NSCalendarUnit syn keyword objcEnumValue NSCalendarUnitEra NSCalendarUnitYear NSCalendarUnitMonth NSCalendarUnitDay NSCalendarUnitHour NSCalendarUnitMinute NSCalendarUnitSecond NSCalendarUnitWeekday NSCalendarUnitWeekdayOrdinal NSCalendarUnitQuarter NSCalendarUnitWeekOfMonth NSCalendarUnitWeekOfYear NSCalendarUnitYearForWeekOfYear NSCalendarUnitNanosecond NSCalendarUnitCalendar NSCalendarUnitTimeZone syn keyword objcEnumValue NSEraCalendarUnit NSYearCalendarUnit NSMonthCalendarUnit NSDayCalendarUnit NSHourCalendarUnit NSMinuteCalendarUnit NSSecondCalendarUnit NSWeekCalendarUnit NSWeekdayCalendarUnit NSWeekdayOrdinalCalendarUnit NSQuarterCalendarUnit NSWeekOfMonthCalendarUnit NSWeekOfYearCalendarUnit NSYearForWeekOfYearCalendarUnit NSCalendarCalendarUnit NSTimeZoneCalendarUnit syn keyword objcEnumValue NSWrapCalendarComponents NSUndefinedDateComponent NSDateComponentUndefined syn match objcClass /NSDateComponents\s*\*/me=s+16,he=s+16 syn keyword objcEnum NSCalendarOptions syn keyword objcEnumValue NSCalendarWrapComponents NSCalendarMatchStrictly NSCalendarSearchBackwards NSCalendarMatchPreviousTimePreservingSmallerUnits NSCalendarMatchNextTimePreservingSmallerUnits NSCalendarMatchNextTime NSCalendarMatchFirst NSCalendarMatchLast syn keyword objcConstVar NSCalendarDayChangedNotification " NSTimeZone.h syn match objcClass /NSTimeZone\s*\*/me=s+10,he=s+10 syn keyword objcEnum NSTimeZoneNameStyle syn keyword objcEnumValue NSTimeZoneNameStyleStandard NSTimeZoneNameStyleShortStandard NSTimeZoneNameStyleDaylightSaving NSTimeZoneNameStyleShortDaylightSaving NSTimeZoneNameStyleGeneric NSTimeZoneNameStyleShortGeneric syn keyword objcNotificationValue NSSystemTimeZoneDidChangeNotification """"""""""" " NSCoder.h syn match objcClass /NSCoder\s*\*/me=s+7,he=s+7 " NSArchiver.h syn match objcClass /NSArchiver\s*\*/me=s+10,he=s+10 syn match objcClass /NSUnarchiver\s*\*/me=s+12,he=s+12 syn keyword objcExceptionValue NSInconsistentArchiveException " NSKeyedArchiver.h syn match objcClass /NSKeyedArchiver\s*\*/me=s+15,he=s+15 syn match objcClass /NSKeyedUnarchiver\s*\*/me=s+17,he=s+17 syn keyword objcExceptionValue NSInvalidArchiveOperationException NSInvalidUnarchiveOperationException syn keyword objcConstVar NSKeyedArchiveRootObjectKey """""""""""""""""" " NSPropertyList.h syn keyword objcEnum NSPropertyListMutabilityOptions syn keyword objcEnumValue NSPropertyListImmutable NSPropertyListMutableContainers NSPropertyListMutableContainersAndLeaves syn keyword objcEnum NSPropertyListFormat syn keyword objcEnumValue NSPropertyListOpenStepFormat NSPropertyListXMLFormat_v1_0 NSPropertyListBinaryFormat_v1_0 syn keyword objcType NSPropertyListReadOptions NSPropertyListWriteOptions " NSUserDefaults.h syn match objcClass /NSUserDefaults\s*\*/me=s+14,he=s+14 syn keyword objcConstVar NSGlobalDomain NSArgumentDomain NSRegistrationDomain syn keyword objcNotificationValue NSUserDefaultsDidChangeNotification " NSBundle.h syn match objcClass /NSBundle\s*\*/me=s+8,he=s+8 syn keyword objcEnumValue NSBundleExecutableArchitectureI386 NSBundleExecutableArchitecturePPC NSBundleExecutableArchitectureX86_64 NSBundleExecutableArchitecturePPC64 syn keyword objcNotificationValue NSBundleDidLoadNotification NSLoadedClasses NSBundleResourceRequestLowDiskSpaceNotification syn keyword objcConstVar NSBundleResourceRequestLoadingPriorityUrgent """"""""""""""""" " NSProcessInfo.h syn match objcClass /NSProcessInfo\s*\*/me=s+13,he=s+13 syn keyword objcEnumValue NSWindowsNTOperatingSystem NSWindows95OperatingSystem NSSolarisOperatingSystem NSHPUXOperatingSystem NSMACHOperatingSystem NSSunOSOperatingSystem NSOSF1OperatingSystem syn keyword objcType NSOperatingSystemVersion syn keyword objcEnum NSActivityOptions NSProcessInfoThermalState syn keyword objcEnumValue NSActivityIdleDisplaySleepDisabled NSActivityIdleSystemSleepDisabled NSActivitySuddenTerminationDisabled NSActivityAutomaticTerminationDisabled NSActivityUserInitiated NSActivityUserInitiatedAllowingIdleSystemSleep NSActivityBackground NSActivityLatencyCritical NSProcessInfoThermalStateNominal NSProcessInfoThermalStateFair NSProcessInfoThermalStateSerious NSProcessInfoThermalStateCritical syn keyword objcNotificationValue NSProcessInfoThermalStateDidChangeNotification NSProcessInfoPowerStateDidChangeNotification " NSTask.h syn match objcClass /NSTask\s*\*/me=s+6,he=s+6 syn keyword objcEnum NSTaskTerminationReason syn keyword objcEnumValue NSTaskTerminationReasonExit NSTaskTerminationReasonUncaughtSignal syn keyword objcNotificationValue NSTaskDidTerminateNotification " NSThread.h syn match objcClass /NSThread\s*\*/me=s+8,he=s+8 syn keyword objcNotificationValue NSWillBecomeMultiThreadedNotification NSDidBecomeSingleThreadedNotification NSThreadWillExitNotification " NSLock.h syn match objcClass /NSLock\s*\*/me=s+6,he=s+6 syn match objcClass /NSConditionLock\s*\*/me=s+15,he=s+15 syn match objcClass /NSRecursiveLock\s*\*/me=s+15,he=s+15 " NSDictributedLock syn match objcClass /NSDistributedLock\s*\*/me=s+17,he=s+17 " NSOperation.h """""""""""""""" syn match objcClass /NSOperation\s*\*/me=s+11,he=s+11 syn keyword objcEnum NSOperationQueuePriority syn keyword objcEnumValue NSOperationQueuePriorityVeryLow NSOperationQueuePriorityLow NSOperationQueuePriorityNormal NSOperationQueuePriorityHigh NSOperationQueuePriorityVeryHigh syn match objcClass /NSBlockOperation\s*\*/me=s+16,he=s+16 syn match objcClass /NSInvocationOperation\s*\*/me=s+21,he=s+21 syn keyword objcExceptionValue NSInvocationOperationVoidResultException NSInvocationOperationCancelledException syn match objcClass /NSOperationQueue\s*\*/me=s+16,he=s+16 syn keyword objcEnumValue NSOperationQueueDefaultMaxConcurrentOperationCount " NSConnection.h syn match objcClass /NSConnection\s*\*/me=s+12,he=s+12 syn keyword objcConstVar NSConnectionReplyMode syn keyword objcNotificationValue NSConnectionDidDieNotification NSConnectionDidInitializeNotification syn keyword objcExceptionValue NSFailedAuthenticationException " NSPort.h syn match objcClass /NSPort\s*\*/me=s+6,he=s+6 syn keyword objcType NSSocketNativeHandle syn keyword objcNotificationValue NSPortDidBecomeInvalidNotification syn match objcClass /NSMachPort\s*\*/me=s+10,he=s+10 syn keyword objcEnum NSMachPortOptions syn keyword objcEnumValue NSMachPortDeallocateNone NSMachPortDeallocateSendRight NSMachPortDeallocateReceiveRight syn match objcClass /NSMessagePort\s*\*/me=s+13,he=s+13 syn match objcClass /NSSocketPort\s*\*/me=s+12,he=s+12 " NSPortMessage.h syn match objcClass /NSPortMessage\s*\*/me=s+13,he=s+13 " NSDistantObject.h syn match objcClass /NSDistantObject\s*\*/me=s+15,he=s+15 " NSPortNameServer.h syn match objcClass /NSPortNameServer\s*\*/me=s+16,he=s+16 syn match objcClass /NSMessagePortNameServer\s*\*/me=s+23,he=s+23 syn match objcClass /NSSocketPortNameServer\s*\*/me=s+22,he=s+22 " NSHost.h syn match objcClass /NSHost\s*\*/me=s+6,he=s+6 " NSInvocation.h syn match objcClass /NSInvocation\s*\*/me=s+12,he=s+12 " NSMethodSignature.h syn match objcClass /NSMethodSignature\s*\*/me=s+17,he=s+17 """"" " NSScanner.h syn match objcClass /NSScanner\s*\*/me=s+9,he=s+9 " NSTimer.h syn match objcClass /NSTimer\s*\*/me=s+7,he=s+7 " NSAutoreleasePool.h syn match objcClass /NSAutoreleasePool\s*\*/me=s+17,he=s+17 " NSRunLoop.h syn match objcClass /NSRunLoop\s*\*/me=s+9,he=s+9 syn keyword objcConstVar NSDefaultRunLoopMode NSRunLoopCommonModes " NSNull.h syn match objcClass /NSNull\s*\*/me=s+6,he=s+6 " NSProxy.h syn match objcClass /NSProxy\s*\*/me=s+7,he=s+7 " NSObject.h syn match objcClass /NSObject\s*\*/me=s+8,he=s+8 " NSCache.h syn match objcClass /NSCache\s*\*/me=s+7,he=s+7 syn match objcClass /NSCache<.*>\s*\*/me=s+7,he=s+7 contains=objcTypeInfoParams " NSHashTable.h syn match objcClass /NSHashTable\s*\*/me=s+11,he=s+11 syn match objcClass /NSHashTable<.*>\s*\*/me=s+11,he=s+11 contains=objcTypeInfoParams syn keyword objcConstVar NSHashTableStrongMemory NSHashTableZeroingWeakMemory NSHashTableCopyIn NSHashTableObjectPointerPersonality NSHashTableWeakMemory syn keyword objcType NSHashTableOptions NSHashEnumerator NSHashTableCallBacks syn keyword objcConstVar NSIntegerHashCallBacks NSNonOwnedPointerHashCallBacks NSNonRetainedObjectHashCallBacks NSObjectHashCallBacks NSOwnedObjectIdentityHashCallBacks NSOwnedPointerHashCallBacks NSPointerToStructHashCallBacks NSOwnedObjectIdentityHashCallBacks NSOwnedObjectIdentityHashCallBacks NSIntHashCallBacks " NSMapTable.h syn match objcClass /NSMapTable\s*\*/me=s+10,he=s+10 syn match objcClass /NSMapTable<.*>\s*\*/me=s+10,he=s+10 contains=objcTypeInfoParams syn keyword objcConstVar NSPointerToStructHashCallBacks NSPointerToStructHashCallBacks NSPointerToStructHashCallBacks NSPointerToStructHashCallBacks NSPointerToStructHashCallBacks syn keyword objcConstVar NSMapTableStrongMemory NSMapTableZeroingWeakMemory NSMapTableCopyIn NSMapTableObjectPointerPersonality NSMapTableWeakMemory syn keyword objcType NSMapTableOptions NSMapEnumerator NSMapTableKeyCallBacks NSMapTableValueCallBacks syn keyword objcMacro NSNotAnIntMapKey NSNotAnIntegerMapKey NSNotAPointerMapKey syn keyword objcConstVar NSIntegerMapKeyCallBacks NSNonOwnedPointerMapKeyCallBacks NSNonOwnedPointerOrNullMapKeyCallBacks NSNonRetainedObjectMapKeyCallBacks NSObjectMapKeyCallBacks NSOwnedPointerMapKeyCallBacks NSIntMapKeyCallBacks NSIntegerMapValueCallBacks NSNonOwnedPointerMapValueCallBacks NSObjectMapValueCallBacks NSNonRetainedObjectMapValueCallBacks NSOwnedPointerMapValueCallBacks NSIntMapValueCallBacks " NSPointerFunctions.h syn match objcClass /NSPointerFunctions\s*\*/me=s+18,he=s+18 syn keyword objcEnum NSPointerFunctionsOptions syn keyword objcEnumValue NSPointerFunctionsStrongMemory NSPointerFunctionsZeroingWeakMemory NSPointerFunctionsOpaqueMemory NSPointerFunctionsMallocMemory NSPointerFunctionsMachVirtualMemory NSPointerFunctionsWeakMemory NSPointerFunctionsObjectPersonality NSPointerFunctionsOpaquePersonality NSPointerFunctionsObjectPointerPersonality NSPointerFunctionsCStringPersonality NSPointerFunctionsStructPersonality NSPointerFunctionsIntegerPersonality NSPointerFunctionsCopyIn """ Default Highlighting hi def link objcPreProcMacro cConstant hi def link objcPrincipalType cType hi def link objcUsefulTerm cConstant hi def link objcImport cInclude hi def link objcImported cString hi def link objcObjDef cOperator hi def link objcProtocol cOperator hi def link objcProperty cOperator hi def link objcIvarScope cOperator hi def link objcInternalRep cOperator hi def link objcException cOperator hi def link objcThread cOperator hi def link objcPool cOperator hi def link objcModuleImport cOperator hi def link objcSpecial cSpecial hi def link objcString cString hi def link objcHiddenArgument cStatement hi def link objcBlocksQualifier cStorageClass hi def link objcObjectLifetimeQualifier cStorageClass hi def link objcTollFreeBridgeQualifier cStorageClass hi def link objcRemoteMessagingQualifier cStorageClass hi def link objcStorageClass cStorageClass hi def link objcFastEnumKeyword cStatement hi def link objcLiteralSyntaxNumber cNumber hi def link objcLiteralSyntaxChar cCharacter hi def link objcLiteralSyntaxSpecialChar cCharacter hi def link objcLiteralSyntaxOp cOperator hi def link objcDeclPropAccessorName cConstant hi def link objcDeclPropAccessorType cConstant hi def link objcDeclPropAssignSemantics cConstant hi def link objcDeclPropAtomicity cConstant hi def link objcDeclPropARC cConstant hi def link objcDeclPropNullable cConstant hi def link objcDeclPropNonnull cConstant hi def link objcDeclPropNullUnspecified cConstant hi def link objcDeclProcNullResettable cConstant hi def link objcInstanceMethod Function hi def link objcClassMethod Function hi def link objcType cType hi def link objcClass cType hi def link objcTypeSpecifier cType hi def link objcMacro cConstant hi def link objcEnum cType hi def link objcEnumValue cConstant hi def link objcExceptionValue cConstant hi def link objcNotificationValue cConstant hi def link objcConstVar cConstant hi def link objcTypeInfoParams Identifier """ Final step let b:current_syntax = "objc" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8 sw=2 sts=2 PK&]jLi4vim80/syntax/cabal.vimnu[" Vim syntax file " Language: Haskell Cabal Build file " Maintainer: Vincent Berthoux " File Types: .cabal " Last Change: 2010 May 18 " v1.3: Updated to the last version of cabal " Added more highlighting for cabal function, true/false " and version number. Also added missing comment highlighting. " Cabal known compiler are highlighted too. " " V1.2: Added cpp-options which was missing. Feature implemented " by GHC, found with a GHC warning, but undocumented. " Whatever... " " v1.1: Fixed operator problems and added ftdetect file " (thanks to Sebastian Schwarz) " " v1.0: Cabal syntax in vimball format " (thanks to Magnus Therning) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn keyword cabalCategory Library library Executable executable Flag flag syn keyword cabalCategory source-repository Source-Repository syn keyword cabalConditional if else syn match cabalOperator "&&\|||\|!\|==\|>=\|<=" syn keyword cabalFunction os arche impl flag syn match cabalComment /--.*$/ syn match cabalVersion "\d\+\(.\(\d\)\+\)\+" syn match cabalTruth "\ctrue" syn match cabalTruth "\cfalse" syn match cabalCompiler "\cghc" syn match cabalCompiler "\cnhc" syn match cabalCompiler "\cyhc" syn match cabalCompiler "\chugs" syn match cabalCompiler "\chbc" syn match cabalCompiler "\chelium" syn match cabalCompiler "\cjhc" syn match cabalCompiler "\clhc" syn match cabalStatement "\cauthor" syn match cabalStatement "\cbranch" syn match cabalStatement "\cbug-reports" syn match cabalStatement "\cbuild-depends" syn match cabalStatement "\cbuild-tools" syn match cabalStatement "\cbuild-type" syn match cabalStatement "\cbuildable" syn match cabalStatement "\cc-sources" syn match cabalStatement "\ccabal-version" syn match cabalStatement "\ccategory" syn match cabalStatement "\ccc-options" syn match cabalStatement "\ccopyright" syn match cabalStatement "\ccpp-options" syn match cabalStatement "\cdata-dir" syn match cabalStatement "\cdata-files" syn match cabalStatement "\cdefault" syn match cabalStatement "\cdescription" syn match cabalStatement "\cexecutable" syn match cabalStatement "\cexposed-modules" syn match cabalStatement "\cexposed" syn match cabalStatement "\cextensions" syn match cabalStatement "\cextra-lib-dirs" syn match cabalStatement "\cextra-libraries" syn match cabalStatement "\cextra-source-files" syn match cabalStatement "\cextra-tmp-files" syn match cabalStatement "\cfor example" syn match cabalStatement "\cframeworks" syn match cabalStatement "\cghc-options" syn match cabalStatement "\cghc-prof-options" syn match cabalStatement "\cghc-shared-options" syn match cabalStatement "\chomepage" syn match cabalStatement "\chs-source-dirs" syn match cabalStatement "\chugs-options" syn match cabalStatement "\cinclude-dirs" syn match cabalStatement "\cincludes" syn match cabalStatement "\cinstall-includes" syn match cabalStatement "\cld-options" syn match cabalStatement "\clicense-file" syn match cabalStatement "\clicense" syn match cabalStatement "\clocation" syn match cabalStatement "\cmain-is" syn match cabalStatement "\cmaintainer" syn match cabalStatement "\cmodule" syn match cabalStatement "\cname" syn match cabalStatement "\cnhc98-options" syn match cabalStatement "\cother-modules" syn match cabalStatement "\cpackage-url" syn match cabalStatement "\cpkgconfig-depends" syn match cabalStatement "\cstability" syn match cabalStatement "\csubdir" syn match cabalStatement "\csynopsis" syn match cabalStatement "\ctag" syn match cabalStatement "\ctested-with" syn match cabalStatement "\ctype" syn match cabalStatement "\cversion" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link cabalVersion Number hi def link cabalTruth Boolean hi def link cabalComment Comment hi def link cabalStatement Statement hi def link cabalCategory Type hi def link cabalFunction Function hi def link cabalConditional Conditional hi def link cabalOperator Operator hi def link cabalCompiler Constant let b:current_syntax = "cabal" " vim: ts=8 PK&]XVVvim80/syntax/aptconf.vimnu[" Vim syntax file " Language: APT config file " Maintainer: Yann Amar " Last Change: 2015 Dec 22 " quit when a syntax file was already loaded if !exists("main_syntax") if exists("b:current_syntax") finish endif let main_syntax = 'aptconf' endif let s:cpo_save = &cpo set cpo&vim " Errors: " Catch all that is not overridden by next rules/items: syn match aptconfError display '[^[:blank:]]' syn match aptconfError display '^[^[:blank:]][^:{]*' " Options: " Define a general regular expression for the options that are not defined " later as keywords. Following apt.conf(5), we know that options are case " insensitive, and can contain alphanumeric characters and '/-:._+'; we " assume that there can not be consecutive colons (::) which is used as " syntax operator; we also assume that an option name can not start or end " by a colon. syn case ignore syn match aptconfRegexpOpt '[-[:alnum:]/.+_]\+\(:[-[:alnum:]/.+_]\+\)*' contained display " Keywords: setlocal iskeyword+=/,-,.,_,+ "setlocal iskeyword+=: is problematic, because of the '::' separator " Incomplete keywords will be treated differently than completely bad strings: syn keyword aptconfGroupIncomplete \ a[cquire] a[dequate] a[ptitude] a[ptlistbugs] d[ebtags] d[ebug] \ d[ir] d[pkg] d[select] o[rderlist] p[ackagemanager] p[kgcachegen] \ q[uiet] r[pm] s[ynaptic] u[nattended-upgrade] w[hatmaps] " Only the following keywords can be used at toplevel (to begin an option): syn keyword aptconfGroup \ acquire adequate apt aptitude aptlistbugs debtags debug \ dir dpkg dselect orderlist packagemanager pkgcachegen \ quiet rpm synaptic unattended-upgrade whatmaps " Possible options for each group: " Acquire: {{{ syn keyword aptconfAcquire contained \ cdrom Check-Valid-Until CompressionTypes ForceHash ForceIPv4 \ ForceIPv6 ftp gpgv GzipIndexes http https Languages Max-ValidTime \ Min-ValidTime PDiffs Queue-Mode Retries Source-Symlinks syn keyword aptconfAcquireCDROM contained \ AutoDetect CdromOnly Mount UMount syn keyword aptconfAcquireCompressionTypes contained \ bz2 lzma gz Order syn keyword aptconfAcquireFTP contained \ ForceExtended Passive Proxy ProxyLogin Timeout syn keyword aptconfAcquireHTTP contained \ AllowRedirect Dl-Limit Max-Age No-Cache No-Store Pipeline-Depth \ Proxy ProxyAutoDetect Proxy-Auto-Detect Timeout User-Agent syn keyword aptconfAcquireHTTPS contained \ AllowRedirect CaInfo CaPath CrlFile Dl-Limit IssuerCert Max-Age \ No-Cache No-Store Proxy SslCert SslForceVersion SslKey Timeout \ Verify-Host Verify-Peer syn keyword aptconfAcquireMaxValidTime contained \ Debian Debian-Security syn keyword aptconfAcquirePDiffs contained \ FileLimit SizeLimit syn cluster aptconfAcquire_ contains=aptconfAcquire, \ aptconfAcquireCDROM,aptconfAcquireCompressionTypes,aptconfAcquireFTP, \ aptconfAcquireHTTP,aptconfAcquireHTTPS,aptconfAcquireMaxValidTime, \ aptconfAcquirePDiffs " }}} " Adequate: {{{ syn keyword aptconfAdequate contained \ Enabled syn cluster aptconfAdequate_ contains=aptconfAdequate " }}} " Apt: {{{ syn keyword aptconfApt contained \ Architecture Architectures Archive Authentication AutoRemove \ Build-Essential Build-Profiles Cache Cache-Grow Cache-Limit \ Cache-Start CDROM Changelogs Clean-Installed Compressor \ Default-Release Force-LoopBreak Get Ignore-Hold Immediate-Configure \ Install-Recommends Install-Suggests Keep-Fds List-Cleanup \ Move-Autobit-Sections NeverAutoRemove Never-MarkAuto-Sections \ Periodic Status-Fd Update VersionedKernelPackages syn keyword aptconfAptAuthentication contained \ TrustCDROM syn keyword aptconfAptAutoRemove contained \ RecommendsImportant SuggestsImportant syn keyword aptconfAptCache contained \ AllNames AllVersions Generate GivenOnly Important Installed NamesOnly \ RecurseDepends ShowFull syn keyword aptconfAptCDROM contained \ Fast NoAct NoMount Rename syn keyword aptconfAptChangelogs contained \ Server syn keyword aptconfAptCompressor contained \ bzip2 gzip lzma xz syn keyword aptconfAptCompressorAll contained \ Binary CompressArg Cost Extension Name UncompressArg syn keyword aptconfAptGet contained \ AllowUnauthenticated Arch-Only Assume-No Assume-Yes AutomaticRemove \ Build-Dep-Automatic Compile Diff-Only Download Download-Only Dsc-Only \ Fix-Broken Fix-Missing Force-Yes HideAutoRemove Host-Architecture \ List-Cleanup Only-Source Print-URIs Purge ReInstall Remove \ Show-Upgraded Show-User-Simulation-Note Show-Versions Simulate \ Tar-Only Trivial-Only Upgrade syn keyword aptconfAptPeriodic contained \ AutocleanInterval BackupArchiveInterval BackupLevel \ Download-Upgradeable-Packages Download-Upgradeable-Packages-Debdelta \ Enable MaxAge MaxSize MinAge Unattended-Upgrade Update-Package-Lists \ Verbose syn keyword aptconfAptUpdate contained \ List-Refresh Pre-Invoke Post-Invoke Post-Invoke-Success syn cluster aptconfApt_ contains=aptconfApt, \ aptconfAptAuthentication,aptconfAptAutoRemove,aptconfAptCache, \ aptconfAptCDROM,aptconfAptChangelogs,aptconfAptCompressor, \ aptconfAptCompressorAll,aptconfAptGet,aptconfAptPeriodic, \ aptconfAptUpdate " }}} " Aptitude: {{{ syn keyword aptconfAptitude contained \ Allow-Null-Upgrade Always-Use-Safe-Resolver Autoclean-After-Update \ Auto-Install Auto-Fix-Broken Cmdline Debtags-Binary \ Debtags-Update-Options Delete-Unused Delete-Unused-Pattern \ Display-Planned-Action Forget-New-On-Install Forget-New-On-Update \ Get-Root-Command Ignore-Old-Tmp Ignore-Recommends-Important \ Keep-Recommends Keep-Suggests Keep-Unused-Pattern LockFile Log \ Logging Parse-Description-Bullets Pkg-Display-Limit ProblemResolver \ Purge-Unused Recommends-Important Safe-Resolver Screenshot Sections \ Simulate Spin-Interval Suggests-Important Suppress-Read-Only-Warning \ Theme Track-Dselect-State UI Warn-Not-Root syn keyword aptconfAptitudeCmdline contained \ Always-Prompt Assume-Yes Disable-Columns Download-Only Fix-Broken \ Ignore-Trust-Violations Package-Display-Format Package-Display-Width \ Progress Request-Strictness Resolver-Debug Resolver-Dump \ Resolver-Show-Steps Safe-Upgrade Show-Deps Show-Size-Changes \ Show-Versions Show-Why Simulate Verbose Version-Display-Format \ Versions-Group-By Versions-Show-Package-Names Visual-Preview \ Why-Display-Mode syn keyword aptconfAptitudeCmdlineProgress contained \ Percent-On-Right Retain-Completed syn keyword aptconfAptitudeCmdlineSafeUpgrade contained \ No-New-Installs syn keyword aptconfAptitudeLogging contained \ File Levels syn keyword aptconfAptitudeProblemResolver contained \ Allow-Break-Holds BreakHoldScore Break-Hold-Level BrokenScore \ DefaultResolutionScore Discard-Null-Solution \ EssentialRemoveScore ExtraScore FullReplacementScore FutureHorizon \ Hints ImportantScore Infinity InstallScore Keep-All-Level KeepScore \ NonDefaultScore Non-Default-Level OptionalScore PreserveAutoScore \ PreserveManualScore RemoveScore Remove-Essential-Level Remove-Level \ RequiredScore ResolutionScore Safe-Level SolutionCost StandardScore \ StepLimit StepScore Trace-Directory Trace-File \ UndoFullReplacementScore UnfixedSoftScore UpgradeScore syn keyword aptconfAptitudeSafeResolver contained \ No-New-Installs No-New-Upgrades Show-Resolver-Actions syn keyword aptconfAptitudeScreenshot contained \ Cache-Max IncrementalLoadLimit syn keyword aptconfAptitudeSections contained \ Descriptions Top-Sections syn keyword aptconfAptitudeUI contained \ Advance-On-Action Auto-Show-Reasons Default-Grouping \ Default-Package-View Default-Preview-Grouping Default-Sorting \ Description-Visible-By-Default Exit-On-Last-Close Fill-Text \ Flat-View-As-First-View HelpBar Incremental-Search InfoAreaTabs \ KeyBindings MenuBar-Autohide Minibuf-Download-Bar Minibuf-Prompts \ New-package-Commands Package-Display-Format Package-Header-Format \ Package-Status-Format Pause-After-Download Preview-Limit \ Prompt-On-Exit Styles ViewTabs syn keyword aptconfAptitudeUIKeyBindings contained \ ApplySolution Begin BugReport Cancel Changelog ChangePkgTreeGrouping \ ChangePkgTreeLimit ChangePkgTreeSorting ClearAuto CollapseAll \ CollapseTree Commit Confirm Cycle CycleNext CycleOrder CyclePrev \ DelBOL DelBack DelEOL DelForward Dependencies DescriptionCycle \ DescriptionDown DescriptionUp DoInstallRun Down DpkgReconfigure \ DumpResolver EditHier End ExamineSolution ExpandAll ExpandTree \ FirstSolution ForbidUpgrade ForgetNewPackages Help HistoryNext \ HistoryPrev Hold Install InstallSingle Keep LastSolution Left \ LevelDown LevelUp MarkUpgradable MineFlagSquare MineLoadGame \ MineSaveGame MineSweepSquare MineUncoverSquare MineUncoverSweepSquare \ NextPage NextSolution No Parent PrevPage PrevSolution Purge \ PushButton Quit QuitProgram RejectBreakHolds Refresh Remove \ ReInstall RepeatSearchBack ReSearch ReverseDependencies Right \ SaveHier Search SearchBack SearchBroken SetAuto ShowHideDescription \ SolutionActionApprove SolutionActionReject ToggleExpanded \ ToggleMenuActive Undo Up UpdatePackageList Versions Yes syn keyword aptconfAptitudeUIStyles contained \ Bullet ChangeLogNewerVersion Default DepBroken DisabledMenuEntry \ DownloadHit DownloadProgress EditLine Error Header HighlightedMenuBar \ HighlightedMenuEntry MediaChange MenuBar MenuBorder MenuEntry \ MineBomb MineBorder MineFlag MineNumber1 MineNumber2 MineNumber3 \ MineNumber4 MineNumber5 MineNumber6 MineNumber7 MineNumber8 \ MultiplexTab MultiplexTabHighlighted PkgBroken PkgBrokenHighlighted \ PkgIsInstalled PkgIsInstalledHighlighted PkgNotInstalled \ PkgNotInstalledHighlighted PkgToDowngrade PkgToDowngradeHighlighted \ PkgToHold PkgToHoldHighlighted PkgToInstall PkgToInstallHighlighted \ PkgToRemove PkgToRemoveHighlighted PkgToUpgrade \ PkgToUpgradeHighlighted Progress SolutionActionApproved \ SolutionActionRejected Status TreeBackground TrustWarning syn keyword aptconfAptitudeUIStylesElements contained \ bg clear fg flip set syn cluster aptconfAptitude_ contains=aptconfAptitude, \ aptconfAptitudeCmdline,aptconfAptitudeCmdlineProgress, \ aptconfAptitudeCmdlineSafeUpgrade,aptconfAptitudeLogging, \ aptconfAptitudeProblemResolver,aptconfAptitudeSafeResolver, \ aptconfAptitudeScreenshot,aptconfAptitudeSections,aptconfAptitudeUI, \ aptconfAptitudeUIKeyBindings,aptconfAptitudeUIStyles, \ aptconfAptitudeUIStylesElements " }}} " AptListbugs: {{{ syn keyword aptconfAptListbugs contained \ IgnoreRegexp Severities syn cluster aptconfAptListbugs_ contains=aptconfAptListbugs " }}} " DebTags: {{{ syn keyword aptconfDebTags contained \ Vocabulary syn cluster aptconfDebTags_ contains=aptconfDebTags " }}} " Debug: {{{ syn keyword aptconfDebug contained \ Acquire aptcdrom BuildDeps Hashes IdentCdrom Nolocking \ pkgAcquire pkgAutoRemove pkgCacheGen pkgDepCache pkgDPkgPM \ pkgDPkgProgressReporting pkgInitialize pkgOrderList \ pkgPackageManager pkgPolicy pkgProblemResolver RunScripts \ sourceList syn keyword aptconfDebugAcquire contained \ cdrom Ftp gpgv Http Https netrc syn keyword aptconfDebugPkgAcquire contained \ Auth Diffs RRed Worker syn keyword aptconfDebugPkgDepCache contained \ AutoInstall Marker syn keyword aptconfDebugPkgProblemResolver contained \ ShowScores syn cluster aptconfDebug_ contains=aptconfDebug, \ aptconfDebugAcquire,aptconfDebugPkgAcquire,aptconfDebugPkgDepCache, \ aptconfDebugPkgProblemResolver " }}} " Dir: {{{ syn keyword aptconfDir contained \ Aptitude Bin Cache Etc Ignore-Files-Silently Log Media Parts RootDir \ State syn keyword aptconfDirAptitude contained \ state syn keyword aptconfDirBin contained \ apt-get apt-cache dpkg dpkg-buildpackage dpkg-source gpg gzip Methods \ solvers syn keyword aptconfDirCache contained \ Archives Backup pkgcache srcpkgcache syn keyword aptconfDirEtc contained \ Main Netrc Parts Preferences PreferencesParts SourceList SourceParts \ VendorList VendorParts Trusted TrustedParts syn keyword aptconfDirLog contained \ History Terminal syn keyword aptconfDirMedia contained \ MountPath syn keyword aptconfDirState contained \ cdroms extended_states Lists mirrors preferences status syn cluster aptconfDir_ contains=aptconfDir, \ aptconfDirAptitude,aptconfDirBin,aptconfDirCache,aptconfDirEtc, \ aptconfDirLog,aptconfDirMedia,aptconfDirState " }}} " DPkg: {{{ syn keyword aptconfDPkg contained \ Build-Options Chroot-Directory ConfigurePending FlushSTDIN \ MaxArgBytes MaxArgs MaxBytes NoTriggers options \ Pre-Install-Pkgs Pre-Invoke Post-Invoke \ Run-Directory StopOnError Tools TriggersPending syn keyword aptconfDPkgTools contained \ adequate InfoFD Options Version syn cluster aptconfDPkg_ contains=aptconfDPkg, \ aptconfDPkgTools " }}} " DSelect: {{{ syn keyword aptconfDSelect contained \ CheckDir Clean Options PromptAfterUpdate UpdateOptions syn cluster aptconfDSelect_ contains=aptconfDSelect " }}} " OrderList: {{{ syn keyword aptconfOrderList contained \ Score syn keyword aptconfOrderListScore contained \ Delete Essential Immediate PreDepends syn cluster aptconfOrderList_ contains=aptconfOrderList, \ aptconfOrderListScore " }}} " PackageManager: {{{ syn keyword aptconfPackageManager contained \ Configure syn cluster aptconfPackageManager_ contains=aptconfPackageManager " }}} " PkgCacheGen: {{{ syn keyword aptconfPkgCacheGen contained \ Essential syn cluster aptconfPkgCacheGen_ contains=aptconfPkgCacheGen " }}} " Quiet: {{{ syn keyword aptconfQuiet contained \ NoUpdate syn cluster aptconfQuiet_ contains=aptconfQuiet " }}} " Rpm: {{{ syn keyword aptconfRpm contained \ Post-Invoke Pre-Invoke syn cluster aptconfRpm_ contains=aptconfRpm " }}} " Synaptic: {{{ syn keyword aptconfSynaptic contained \ AskQuitOnProceed AskRelated AutoCleanCache CleanCache DefaultDistro \ delAction delHistory Download-Only ftpProxy ftpProxyPort httpProxy \ httpProxyPort Install-Recommends LastSearchType Maximized noProxy \ OneClickOnStatusActions ShowAllPkgInfoInMain showWelcomeDialog \ ToolbarState undoStackSize update upgradeType useProxy UseStatusColors \ UseTerminal useUserFont useUserTerminalFont ViewMode \ availVerColumnPos availVerColumnVisible componentColumnPos \ componentColumnVisible descrColumnPos descrColumnVisible \ downloadSizeColumnPos downloadSizeColumnVisible hpanedPos \ instVerColumnPos instVerColumnVisible instSizeColumnPos \ instSizeColumnVisible nameColumnPos nameColumnVisible \ sectionColumnPos sectionColumnVisible statusColumnPos \ statusColumnVisible supportedColumnPos supportedColumnVisible \ vpanedPos windowWidth windowHeight windowX windowY closeZvt \ color-available color-available-locked color-broken color-downgrade \ color-install color-installed-locked color-installed-outdated \ color-installed-updated color-new color-purge color-reinstall \ color-remove color-upgrade syn keyword aptconfSynapticUpdate contained \ last type syn cluster aptconfSynaptic_ contains=aptconfSynaptic, \ aptconfSynapticUpdate " }}} " Unattended Upgrade: {{{ syn keyword aptconfUnattendedUpgrade contained \ AutoFixInterruptedDpkg Automatic-Reboot Automatic-Reboot-Time \ Automatic-Reboot-WithUsers InstallOnShutdown Mail MailOnlyOnError \ MinimalSteps Origins-Pattern Package-Blacklist \ Remove-Unused-Dependencies syn cluster aptconfUnattendedUpgrade_ contains=aptconfUnattendedUpgrade " }}} " Whatmaps: {{{ syn keyword aptconfWhatmaps contained \ Enable-Restart Security-Update-Origins syn cluster aptconfWhatmaps_ contains=aptconfWhatmaps " }}} syn case match " Now put all the keywords (and 'valid' options) in a single cluster: syn cluster aptconfOptions contains=aptconfRegexpOpt, \ @aptconfAcquire_,@aptconfAdequate_,@aptconfApt_,@aptconfAptitude_, \ @aptconfAptListbugs_,@aptconfDebTags_,@aptconfDebug_,@aptconfDir_, \ @aptconfDPkg_,@aptconfDSelect_,@aptconfOrderList_, \ @aptconfPackageManager_,@aptconfPkgCacheGen_,@aptconfQuiet_, \ @aptconfRpm_,@aptconfSynaptic_,@aptconfUnattendedUpgrade_, \ @aptconfWhatmaps_ " Syntax: syn match aptconfSemiColon ';' syn match aptconfDoubleColon '::' syn match aptconfCurlyBraces '[{}]' syn region aptconfValue start='"' end='"' oneline display syn region aptconfInclude matchgroup=aptconfOperator start='{' end='}' contains=ALLBUT,aptconfGroup,aptconfGroupIncomplete,@aptconfCommentSpecial syn region aptconfInclude matchgroup=aptconfOperator start='::' end='{'me=s-1 contains=@aptconfOptions,aptconfError display syn region aptconfInclude matchgroup=aptconfOperator start='::' end='::\|\s'me=s-1 oneline contains=@aptconfOptions,aptconfError display " Basic Syntax Errors: XXX avoid to generate false positives !!! " " * Undocumented inline comment. Since it is currently largely used, and does " not seem to cause trouble ('apt-config dump' never complains when # is used " the same way than //) it has been moved to aptconfComment group. But it " still needs to be defined here (i.e. before #clear and #include directives) syn match aptconfComment '#.*' contains=@aptconfCommentSpecial " " * When a semicolon is missing after a double-quoted string: " There are some cases (for example in the Dir group of options, but not only) " where this syntax is valid. So we don't treat it as a strict error. syn match aptconfAsError display '"[^"]*"[^;]'me=e-1 syn match aptconfAsError display '"[^"]*"$' " " * When double quotes are missing around a value (before a semicolon): " This omission has no effect if the value is a single string (without blank " characters). But apt.conf(5) says that quotes are required, and this item " avoids to match unquoted keywords. syn match aptconfAsError display '\s[^"[:blank:]]*[^}"];'me=e-1 " " * When only one double quote is missing around a value (before a semicolon): " No comment for that: it must be highly visible. syn match aptconfError display '\(\s\|;\)"[^"[:blank:]]\+;'me=e-1 syn match aptconfError display '\(\s\|;\)[^"[:blank:]]\+";'me=e-1 " " * When space is missing between option and (quoted) value: " TODO (partially implemented) syn match aptconfError display '::[^[:blank:]]*"' " Special Actions: syn match aptconfAction '^#\(clear\|include\)\>' syn region aptconfAction matchgroup=aptconfAction start='^#clear\>' end=';'me=s-1 oneline contains=aptconfGroup,aptconfDoubleColon,@aptconfOptions syn region aptconfAction matchgroup=aptconfAction start='^#include\>' end=';'me=s-1 oneline contains=aptconfRegexpOpt " Comments: syn keyword aptconfTodo TODO FIXME NOTE XXX contained syn cluster aptconfCommentSpecial contains=@Spell,aptconfTodo syn match aptconfComment '//.*' contains=@aptconfCommentSpecial syn region aptconfComment start='/\*' end='\*/' contains=@aptconfCommentSpecial " Highlight Definitions: hi def link aptconfTodo Todo hi def link aptconfError Error hi def link aptconfComment Comment hi def link aptconfOperator Operator hi def link aptconfAction PreProc hi def link aptconfOption Type hi def link aptconfValue String hi def link aptconfRegexpOpt Normal hi def link aptconfAsError Special hi def link aptconfSemiColon aptconfOperator hi def link aptconfDoubleColon aptconfOperator hi def link aptconfCurlyBraces aptconfOperator hi def link aptconfGroupIncomplete Special hi def link aptconfGroup aptconfOption hi def link aptconfAcquire aptconfOption hi def link aptconfAcquireCDROM aptconfOption hi def link aptconfAcquireCompressionTypes aptconfOption hi def link aptconfAcquireFTP aptconfOption hi def link aptconfAcquireHTTP aptconfOption hi def link aptconfAcquireHTTPS aptconfOption hi def link aptconfAcquireMaxValidTime aptconfOption hi def link aptconfAcquirePDiffs aptconfOption hi def link aptconfAdequate aptconfOption hi def link aptconfApt aptconfOption hi def link aptconfAptAuthentication aptconfOption hi def link aptconfAptAutoRemove aptconfOption hi def link aptconfAptCache aptconfOption hi def link aptconfAptCDROM aptconfOption hi def link aptconfAptChangelogs aptconfOption hi def link aptconfAptCompressor aptconfOption hi def link aptconfAptCompressorAll aptconfOption hi def link aptconfAptGet aptconfOption hi def link aptconfAptPeriodic aptconfOption hi def link aptconfAptUpdate aptconfOption hi def link aptconfAptitude aptconfOption hi def link aptconfAptitudeCmdline aptconfOption hi def link aptconfAptitudeCmdlineProgress aptconfOption hi def link aptconfAptitudeCmdlineSafeUpgrade aptconfOption hi def link aptconfAptitudeLogging aptconfOption hi def link aptconfAptitudeProblemResolver aptconfOption hi def link aptconfAptitudeSafeResolver aptconfOption hi def link aptconfAptitudeScreenshot aptconfOption hi def link aptconfAptitudeSections aptconfOption hi def link aptconfAptitudeUI aptconfOption hi def link aptconfAptitudeUIKeyBindings aptconfOption hi def link aptconfAptitudeUIStyles aptconfOption hi def link aptconfAptitudeUIStylesElements aptconfOption hi def link aptconfAptListbugs aptconfOption hi def link aptconfDebTags aptconfOption hi def link aptconfDebug aptconfOption hi def link aptconfDebugAcquire aptconfOption hi def link aptconfDebugPkgAcquire aptconfOption hi def link aptconfDebugPkgDepCache aptconfOption hi def link aptconfDebugPkgProblemResolver aptconfOption hi def link aptconfDir aptconfOption hi def link aptconfDirAptitude aptconfOption hi def link aptconfDirBin aptconfOption hi def link aptconfDirCache aptconfOption hi def link aptconfDirEtc aptconfOption hi def link aptconfDirLog aptconfOption hi def link aptconfDirMedia aptconfOption hi def link aptconfDirState aptconfOption hi def link aptconfDPkg aptconfOption hi def link aptconfDPkgTools aptconfOption hi def link aptconfDSelect aptconfOption hi def link aptconfOrderList aptconfOption hi def link aptconfOrderListScore aptconfOption hi def link aptconfPackageManager aptconfOption hi def link aptconfPkgCacheGen aptconfOption hi def link aptconfQuiet aptconfOption hi def link aptconfRpm aptconfOption hi def link aptconfSynaptic aptconfOption hi def link aptconfSynapticUpdate aptconfOption hi def link aptconfUnattendedUpgrade aptconfOption hi def link aptconfWhatmaps aptconfOption let b:current_syntax = "aptconf" let &cpo = s:cpo_save unlet s:cpo_save PK&]/((vim80/syntax/tasm.vimnu[" Vim syntax file " Language: TASM: turbo assembler by Borland " Maintaner: FooLman of United Force " Last Change: 2012 Feb 03 by Thilo Six " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore syn match tasmLabel "^[\ \t]*[@a-z_$][a-z0-9_$@]*\ *:" syn keyword tasmDirective ALIAS ALIGN ARG ASSUME %BIN CATSRT CODESEG syn match tasmDirective "\<\(byte\|word\|dword\|qword\)\ ptr\>" " CALL extended syntax syn keyword tasmDirective COMM %CONDS CONST %CREF %CREFALL %CREFREF syn keyword tasmDirective %CREFUREF %CTLS DATASEG DB DD %DEPTH DF DISPLAY syn keyword tasmDirective DOSSEG DP DQ DT DW ELSE EMUL END ENDIF " IF XXXX syn keyword tasmDirective ENDM ENDP ENDS ENUM EQU ERR EVEN EVENDATA EXITCODE syn keyword tasmDirective EXITM EXTRN FARDATA FASTIMUL FLIPFLAG GETFIELD GLOBAL syn keyword tasmDirective GOTO GROUP IDEAL %INCL INCLUDE INCLUDELIB INSTR IRP "JMP syn keyword tasmDirective IRPC JUMPS LABEL LARGESTACK %LINUM %LIST LOCAL syn keyword tasmDirective LOCALS MACRO %MACS MASKFLAG MASM MASM51 MODEL syn keyword tasmDirective MULTERRS NAME %NEWPAGE %NOCONDS %NOCREF %NOCTLS syn keyword tasmDirective NOEMUL %NOINCL NOJUMPS %NOLIST NOLOCALS %NOMACS syn keyword tasmDirective NOMASM51 NOMULTERRS NOSMART %NOSYMS %NOTRUNC NOWARN syn keyword tasmDirective %PAGESIZE %PCNT PNO87 %POPLCTL POPSTATE PROC PROCDESC syn keyword tasmDirective PROCTYPE PUBLIC PUBLICDLL PURGE %PUSHCTL PUSHSTATE "rept, ret syn keyword tasmDirective QUIRKS RADIX RECORD RETCODE SEGMENT SETFIELD syn keyword tasmDirective SETFLAG SIZESTR SMALLSTACK SMART STACK STARTUPCODE syn keyword tasmDirective STRUC SUBSTR %SUBTTL %SYMS TABLE %TABSIZE TBLINIT syn keyword tasmDirective TBLINST TBLPTR TESTFLAG %TEXT %TITLE %TRUNC TYPEDEF syn keyword tasmDirective UDATASEG UFARDATA UNION USES VERSION WAR WHILE ?DEBUG syn keyword tasmInstruction AAA AAD AAM AAS ADC ADD AND ARPL BOUND BSF BSR syn keyword tasmInstruction BSWAP BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS syn keyword tasmInstruction CMC CMP CMPXCHG CMPXCHG8B CPUID CWD CDQ CWDE syn keyword tasmInstruction DAA DAS DEC DIV ENTER RETN RETF F2XM1 syn keyword tasmCoprocInstr FABS FADD FADDP FBLD FBSTP FCHG FCOM FCOM2 FCOMI syn keyword tasmCoprocInstr FCOMIP FCOMP FCOMP3 FCOMP5 FCOMPP FCOS FDECSTP syn keyword tasmCoprocInstr FDISI FDIV FDIVP FDIVR FENI FFREE FFREEP FIADD syn keyword tasmCoprocInstr FICOM FICOMP FIDIV FIDIVR FILD FIMUL FINIT FINCSTP syn keyword tasmCoprocInstr FIST FISTP FISUB FISUBR FLD FLD1 FLDCW FLDENV syn keyword tasmCoprocInstr FLDL2E FLDL2T FLDLG2 FLDLN2 FLDPI FLDZ FMUL FMULP syn keyword tasmCoprocInstr FNCLEX FNINIT FNOP FNSAVE FNSTCW FNSTENV FNSTSW syn keyword tasmCoprocInstr FPATAN FPREM FPREM1 FPTAN FRNDINT FRSTOR FSCALE syn keyword tasmCoprocInstr FSETPM FSIN FSINCOM FSQRT FST FSTP FSTP1 FSTP8 syn keyword tasmCoprocInstr FSTP9 FSUB FSUBP FSUBR FSUBRP FTST FUCOM FUCOMI syn keyword tasmCoprocInstr FUCOMPP FWAIT FXAM FXCH FXCH4 FXCH7 FXTRACT FYL2X syn keyword tasmCoprocInstr FYL2XP1 FSTCW FCHS FSINCOS syn keyword tasmInstruction IDIV IMUL IN INC INT INTO INVD INVLPG IRET JMP syn keyword tasmInstruction LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT syn keyword tasmInstruction LMSW LOCK LODSB LSL LSS LTR MOV MOVSX MOVZX MUL syn keyword tasmInstruction NEG NOP NOT OR OUT POP POPA POPAD POPF POPFD PUSH syn keyword tasmInstruction PUSHA PUSHAD PUSHF PUSHFD RCL RCR RDMSR RDPMC RDTSC syn keyword tasmInstruction REP RET ROL ROR RSM SAHF SAR SBB SGDT SHL SAL SHLD syn keyword tasmInstruction SHR SHRD SIDT SMSW STC STD STI STR SUB TEST VERR syn keyword tasmInstruction VERW WBINVD WRMSR XADD XCHG XLAT XOR syn keyword tasmMMXinst EMMS MOVD MOVQ PACKSSDW PACKSSWB PACKUSWB PADDB syn keyword tasmMMXinst PADDD PADDSB PADDSB PADDSW PADDUSB PADDUSW PADDW syn keyword tasmMMXinst PAND PANDN PCMPEQB PCMPEQD PCMPEQW PCMPGTB PCMPGTD syn keyword tasmMMXinst PCMPGTW PMADDWD PMULHW PMULLW POR PSLLD PSLLQ syn keyword tasmMMXinst PSLLW PSRAD PSRAW PSRLD PSRLQ PSRLW PSUBB PSUBD syn keyword tasmMMXinst PSUBSB PSUBSW PSUBUSB PSUBUSW PSUBW PUNPCKHBW syn keyword tasmMMXinst PUNPCKHBQ PUNPCKHWD PUNPCKLBW PUNPCKLDQ PUNPCKLWD syn keyword tasmMMXinst PXOR "FCMOV syn match tasmInstruction "\<\(CMPS\|MOVS\|OUTS\|SCAS\|STOS\|LODS\|INS\)[BWD]" syn match tasmInstruction "\<\(CMOV\|SET\|J\)N\=[ABCGLESXZ]\>" syn match tasmInstruction "\<\(CMOV\|SET\|J\)N\=[ABGL]E\>" syn match tasmInstruction "\<\(LOOP\|REP\)N\=[EZ]\=\>" syn match tasmRegister "\<[A-D][LH]\>" syn match tasmRegister "\" syn match tasmRegister "\<[C-GS]S\>" syn region tasmComment start=";" end="$" "HACK! comment ? ... selection syn region tasmComment start="comment \+\$" end="\$" syn region tasmComment start="comment \+\~" end="\~" syn region tasmComment start="comment \+#" end="#" syn region tasmString start="'" end="'" syn region tasmString start='"' end='"' syn match tasmDec "\<-\=[0-9]\+\.\=[0-9]*\>" syn match tasmHex "\<[0-9][0-9A-F]*H\>" syn match tasmOct "\<[0-7]\+O\>" syn match tasmBin "\<[01]\+B\>" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link tasmString String hi def link tasmDec Number hi def link tasmHex Number hi def link tasmOct Number hi def link tasmBin Number hi def link tasmInstruction Keyword hi def link tasmCoprocInstr Keyword hi def link tasmMMXInst Keyword hi def link tasmDirective PreProc hi def link tasmRegister Identifier hi def link tasmProctype PreProc hi def link tasmComment Comment hi def link tasmLabel Label let b:curret_syntax = "tasm" let &cpo = s:cpo_save unlet s:cpo_save PK&]hj vim80/syntax/ahdl.vimnu[" Vim syn file " Language: Altera AHDL " Maintainer: John Cook " Last Change: 2001 Apr 25 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif "this language is oblivious to case. syn case ignore " a bunch of keywords syn keyword ahdlKeyword assert begin bidir bits buried case clique syn keyword ahdlKeyword connected_pins constant defaults define design syn keyword ahdlKeyword device else elsif end for function generate syn keyword ahdlKeyword gnd help_id if in include input is machine syn keyword ahdlKeyword node of options others output parameters syn keyword ahdlKeyword returns states subdesign table then title to syn keyword ahdlKeyword tri_state_node variable vcc when with " a bunch of types syn keyword ahdlIdentifier carry cascade dffe dff exp global syn keyword ahdlIdentifier jkffe jkff latch lcell mcell memory opendrn syn keyword ahdlIdentifier soft srffe srff tffe tff tri wire x syn keyword ahdlMegafunction lpm_and lpm_bustri lpm_clshift lpm_constant syn keyword ahdlMegafunction lpm_decode lpm_inv lpm_mux lpm_or lpm_xor syn keyword ahdlMegafunction busmux mux syn keyword ahdlMegafunction divide lpm_abs lpm_add_sub lpm_compare syn keyword ahdlMegafunction lpm_counter lpm_mult syn keyword ahdlMegafunction altdpram csfifo dcfifo scfifo csdpram lpm_ff syn keyword ahdlMegafunction lpm_latch lpm_shiftreg lpm_ram_dq lpm_ram_io syn keyword ahdlMegafunction lpm_rom lpm_dff lpm_tff clklock pll ntsc syn keyword ahdlTodo contained TODO " String contstants syn region ahdlString start=+"+ skip=+\\"+ end=+"+ " valid integer number formats (decimal, binary, octal, hex) syn match ahdlNumber '\<\d\+\>' syn match ahdlNumber '\=?:\^]" syn keyword ahdlOperator not and nand or nor xor xnor syn keyword ahdlOperator mod div log2 used ceil floor " one line and multi-line comments " (define these after ahdlOperator so -- overrides -) syn match ahdlComment "--.*" contains=ahdlNumber,ahdlTodo syn region ahdlComment start="%" end="%" contains=ahdlNumber,ahdlTodo " other special characters syn match ahdlSpecialChar "[\[\]().,;]" syn sync minlines=1 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default highlighting. hi def link ahdlNumber ahdlString hi def link ahdlMegafunction ahdlIdentifier hi def link ahdlSpecialChar SpecialChar hi def link ahdlKeyword Statement hi def link ahdlString String hi def link ahdlComment Comment hi def link ahdlIdentifier Identifier hi def link ahdlOperator Operator hi def link ahdlTodo Todo let b:current_syntax = "ahdl" " vim:ts=8 PK&]|O vim80/syntax/go.vimnu[" Vim syntax file " Language: Go " Maintainer: David Barnett (https://github.com/google/vim-ft-go) " Last Change: 2014 Aug 16 " Options: " There are some options for customizing the highlighting; the recommended " settings are the default values, but you can write: " let OPTION_NAME = 0 " in your ~/.vimrc file to disable particular options. You can also write: " let OPTION_NAME = 1 " to enable particular options. At present, all options default to on. " " - g:go_highlight_array_whitespace_error " Highlights white space after "[]". " - g:go_highlight_chan_whitespace_error " Highlights white space around the communications operator that don't " follow the standard style. " - g:go_highlight_extra_types " Highlights commonly used library types (io.Reader, etc.). " - g:go_highlight_space_tab_error " Highlights instances of tabs following spaces. " - g:go_highlight_trailing_whitespace_error " Highlights trailing white space. " Quit when a (custom) syntax file was already loaded if exists('b:current_syntax') finish endif if !exists('g:go_highlight_array_whitespace_error') let g:go_highlight_array_whitespace_error = 1 endif if !exists('g:go_highlight_chan_whitespace_error') let g:go_highlight_chan_whitespace_error = 1 endif if !exists('g:go_highlight_extra_types') let g:go_highlight_extra_types = 1 endif if !exists('g:go_highlight_space_tab_error') let g:go_highlight_space_tab_error = 1 endif if !exists('g:go_highlight_trailing_whitespace_error') let g:go_highlight_trailing_whitespace_error = 1 endif syn case match syn keyword goDirective package import syn keyword goDeclaration var const type syn keyword goDeclType struct interface hi def link goDirective Statement hi def link goDeclaration Keyword hi def link goDeclType Keyword " Keywords within functions syn keyword goStatement defer go goto return break continue fallthrough syn keyword goConditional if else switch select syn keyword goLabel case default syn keyword goRepeat for range hi def link goStatement Statement hi def link goConditional Conditional hi def link goLabel Label hi def link goRepeat Repeat " Predefined types syn keyword goType chan map bool string error syn keyword goSignedInts int int8 int16 int32 int64 rune syn keyword goUnsignedInts byte uint uint8 uint16 uint32 uint64 uintptr syn keyword goFloats float32 float64 syn keyword goComplexes complex64 complex128 hi def link goType Type hi def link goSignedInts Type hi def link goUnsignedInts Type hi def link goFloats Type hi def link goComplexes Type " Treat func specially: it's a declaration at the start of a line, but a type " elsewhere. Order matters here. syn match goType /\/ syn match goDeclaration /^func\>/ " Predefined functions and values syn keyword goBuiltins append cap close complex copy delete imag len syn keyword goBuiltins make new panic print println real recover syn keyword goConstants iota true false nil hi def link goBuiltins Keyword hi def link goConstants Keyword " Comments; their contents syn keyword goTodo contained TODO FIXME XXX BUG syn cluster goCommentGroup contains=goTodo syn region goComment start="/\*" end="\*/" contains=@goCommentGroup,@Spell syn region goComment start="//" end="$" contains=@goCommentGroup,@Spell hi def link goComment Comment hi def link goTodo Todo " Go escapes syn match goEscapeOctal display contained "\\[0-7]\{3}" syn match goEscapeC display contained +\\[abfnrtv\\'"]+ syn match goEscapeX display contained "\\x\x\{2}" syn match goEscapeU display contained "\\u\x\{4}" syn match goEscapeBigU display contained "\\U\x\{8}" syn match goEscapeError display contained +\\[^0-7xuUabfnrtv\\'"]+ hi def link goEscapeOctal goSpecialString hi def link goEscapeC goSpecialString hi def link goEscapeX goSpecialString hi def link goEscapeU goSpecialString hi def link goEscapeBigU goSpecialString hi def link goSpecialString Special hi def link goEscapeError Error " Strings and their contents syn cluster goStringGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU,goEscapeError syn region goString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@goStringGroup syn region goRawString start=+`+ end=+`+ hi def link goString String hi def link goRawString String " Characters; their contents syn cluster goCharacterGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU syn region goCharacter start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@goCharacterGroup hi def link goCharacter Character " Regions syn region goBlock start="{" end="}" transparent fold syn region goParen start='(' end=')' transparent " Integers syn match goDecimalInt "\<\d\+\([Ee]\d\+\)\?\>" syn match goHexadecimalInt "\<0x\x\+\>" syn match goOctalInt "\<0\o\+\>" syn match goOctalError "\<0\o*[89]\d*\>" hi def link goDecimalInt Integer hi def link goHexadecimalInt Integer hi def link goOctalInt Integer hi def link Integer Number " Floating point syn match goFloat "\<\d\+\.\d*\([Ee][-+]\d\+\)\?\>" syn match goFloat "\<\.\d\+\([Ee][-+]\d\+\)\?\>" syn match goFloat "\<\d\+[Ee][-+]\d\+\>" hi def link goFloat Float " Imaginary literals syn match goImaginary "\<\d\+i\>" syn match goImaginary "\<\d\+\.\d*\([Ee][-+]\d\+\)\?i\>" syn match goImaginary "\<\.\d\+\([Ee][-+]\d\+\)\?i\>" syn match goImaginary "\<\d\+[Ee][-+]\d\+i\>" hi def link goImaginary Number " Spaces after "[]" if go_highlight_array_whitespace_error != 0 syn match goSpaceError display "\(\[\]\)\@<=\s\+" endif " Spacing errors around the 'chan' keyword if go_highlight_chan_whitespace_error != 0 " receive-only annotation on chan type syn match goSpaceError display "\(<-\)\@<=\s\+\(chan\>\)\@=" " send-only annotation on chan type syn match goSpaceError display "\(\/ syn match goExtraType /\/ syn match goExtraType /\/ syn match goExtraType /\/ endif " Space-tab error if go_highlight_space_tab_error != 0 syn match goSpaceError display " \+\t"me=e-1 endif " Trailing white space error if go_highlight_trailing_whitespace_error != 0 syn match goSpaceError display excludenl "\s\+$" endif hi def link goExtraType Type hi def link goSpaceError Error " Search backwards for a global declaration to start processing the syntax. "syn sync match goSync grouphere NONE /^\(const\|var\|type\|func\)\>/ " There's a bug in the implementation of grouphere. For now, use the " following as a more expensive/less precise workaround. syn sync minlines=500 let b:current_syntax = 'go' " vim: sw=2 sts=2 et PK&]iTvim80/syntax/xxd.vimnu[" Vim syntax file " Language: bin using xxd " Maintainer: Charles E. Campbell " Last Change: Aug 31, 2016 " Version: 10 " Notes: use :help xxd to see how to invoke it " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_XXD " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn match xxdAddress "^[0-9a-f]\+:" contains=xxdSep syn match xxdSep contained ":" syn match xxdAscii " .\{,16\}\r\=$"hs=s+2 contains=xxdDot syn match xxdDot contained "[.\r]" " Define the default highlighting. if !exists("skip_xxd_syntax_inits") hi def link xxdAddress Constant hi def link xxdSep Identifier hi def link xxdAscii Statement endif let b:current_syntax = "xxd" " vim: ts=4 PK&]`uIIvim80/syntax/def.vimnu[" Vim syntax file " Language: Microsoft Module-Definition (.def) File " Orig Author: Rob Brady " Maintainer: Wu Yongwei " Last Change: $Date: 2007/10/02 13:51:24 $ " $Revision: 1.2 $ " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore syn match defComment ";.*" syn keyword defKeyword LIBRARY STUB EXETYPE DESCRIPTION CODE WINDOWS DOS syn keyword defKeyword RESIDENTNAME PRIVATE EXPORTS IMPORTS SEGMENTS syn keyword defKeyword HEAPSIZE DATA syn keyword defStorage LOADONCALL MOVEABLE DISCARDABLE SINGLE syn keyword defStorage FIXED PRELOAD syn match defOrdinal "\s\+@\d\+" syn region defString start=+'+ end=+'+ syn match defNumber "\d+" syn match defNumber "0x\x\+" " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link defComment Comment hi def link defKeyword Keyword hi def link defStorage StorageClass hi def link defString String hi def link defNumber Number hi def link defOrdinal Operator let b:current_syntax = "def" " vim: ts=8 PK&]|>XXvim80/syntax/cdrtoc.vimnu[" Vim syntax file " Language: cdrdao(1) TOC file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2007-05-10 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword cdrtocTodo \ contained \ TODO \ FIXME \ XXX \ NOTE syn cluster cdrtocCommentContents \ contains= \ cdrtocTodo, \ @Spell syn cluster cdrtocHeaderFollowsInitial \ contains= \ cdrtocHeaderCommentInitial, \ cdrtocHeaderCatalog, \ cdrtocHeaderTOCType, \ cdrtocHeaderCDText, \ cdrtocTrack syn match cdrtocHeaderBegin \ nextgroup=@cdrtocHeaderFollowsInitial \ skipwhite skipempty \ '\%^' let s:mmssff_pattern = '\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\>' let s:byte_pattern = '\<\%([01]\=\d\{1,2}\|2\%([0-4]\d\|5[0-5]\)\)\>' let s:length_pattern = '\%(\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\|\d\+\)\>' function s:def_comment(name, nextgroup) execute 'syn match' a:name \ 'nextgroup=' . a:nextgroup . ',' . a:name \ 'skipwhite skipempty' \ 'contains=@cdrtocCommentContents' \ 'contained' \ "'//.*$'" execute 'hi def link' a:name 'cdrtocComment' endfunction function s:def_keywords(name, nextgroup, keywords) let comment_group = a:name . 'FollowComment' execute 'syn keyword' a:name \ 'nextgroup=' . a:nextgroup . ',' . comment_group \ 'skipwhite skipempty' \ 'contained' \ join(a:keywords) call s:def_comment(comment_group, a:nextgroup) endfunction function s:def_keyword(name, nextgroup, keyword) call s:def_keywords(a:name, a:nextgroup, [a:keyword]) endfunction " NOTE: Pattern needs to escape any “@”s. function s:def_match(name, nextgroup, pattern) let comment_group = a:name . 'FollowComment' execute 'syn match' a:name \ 'nextgroup=' . a:nextgroup . ',' . comment_group \ 'skipwhite skipempty' \ 'contained' \ '@' . a:pattern . '@' call s:def_comment(comment_group, a:nextgroup) endfunction function s:def_region(name, nextgroup, start, skip, end, matchgroup, contains) let comment_group = a:name . 'FollowComment' execute 'syn region' a:name \ 'nextgroup=' . a:nextgroup . ',' . comment_group \ 'skipwhite skipempty' \ 'contained' \ 'matchgroup=' . a:matchgroup \ 'contains=' . a:contains \ 'start=@' . a:start . '@' \ (a:skip != "" ? ('skip=@' . a:skip . '@') : "") \ 'end=@' . a:end . '@' call s:def_comment(comment_group, a:nextgroup) endfunction call s:def_comment('cdrtocHeaderCommentInitial', '@cdrtocHeaderFollowsInitial') call s:def_keyword('cdrtocHeaderCatalog', 'cdrtocHeaderCatalogNumber', 'CATALOG') call s:def_match('cdrtocHeaderCatalogNumber', '@cdrtocHeaderFollowsInitial', '"\d\{13\}"') call s:def_keywords('cdrtocHeaderTOCType', '@cdrtocHeaderFollowsInitial', ['CD_DA', 'CD_ROM', 'CD_ROM_XA']) call s:def_keyword('cdrtocHeaderCDText', 'cdrtocHeaderCDTextStart', 'CD_TEXT') " TODO: Actually, language maps aren’t required by TocParser.g, but let’s keep " things simple (and in agreement with what the manual page says). call s:def_match('cdrtocHeaderCDTextStart', 'cdrtocHeaderCDTextLanguageMap', '{') call s:def_keyword('cdrtocHeaderCDTextLanguageMap', 'cdrtocHeaderLanguageMapStart', 'LANGUAGE_MAP') call s:def_match('cdrtocHeaderLanguageMapStart', 'cdrtocHeaderLanguageMapLanguageNumber', '{') call s:def_match('cdrtocHeaderLanguageMapLanguageNumber', 'cdrtocHeaderLanguageMapColon', '\<[0-7]\>') call s:def_match('cdrtocHeaderLanguageMapColon', 'cdrtocHeaderLanguageMapCountryCode,cdrtocHeaderLanguageMapCountryCodeName', ':') syn cluster cdrtocHeaderLanguageMapCountryCodeFollow \ contains= \ cdrtocHeaderLanguageMapLanguageNumber, \ cdrtocHeaderLanguageMapEnd call s:def_match('cdrtocHeaderLanguageMapCountryCode', \ '@cdrtocHeaderLanguageMapCountryCodeFollow', \ s:byte_pattern) call s:def_keyword('cdrtocHeaderLanguageMapCountryCodeName', \ '@cdrtocHeaderLanguageMapCountryCodeFollow', \ 'EN') call s:def_match('cdrtocHeaderLanguageMapEnd', \ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd', \ '}') call s:def_keyword('cdrtocHeaderLanguage', 'cdrtocHeaderLanguageNumber', 'LANGUAGE') call s:def_match('cdrtocHeaderLanguageNumber', 'cdrtocHeaderLanguageStart', '\<[0-7]\>') call s:def_match('cdrtocHeaderLanguageStart', \ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd', \ '{') syn cluster cdrtocHeaderCDTextData \ contains= \ cdrtocHeaderCDTextDataString, \ cdrtocHeaderCDTextDataBinaryStart call s:def_keywords('cdrtocHeaderCDTextItem', \ '@cdrtocHeaderCDTextData', \ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER', \ 'ARRANGER', 'MESSAGE', 'DISC_ID', 'GENRE', 'TOC_INFO1', \ 'TOC_INFO2', 'UPC_EAN', 'ISRC', 'SIZE_INFO']) call s:def_region('cdrtocHeaderCDTextDataString', \ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd', \ '"', \ '\\\\\|\\"', \ '"', \ 'cdrtocHeaderCDTextDataStringDelimiters', \ 'cdrtocHeaderCDTextDataStringSpecialChar') syn match cdrtocHeaderCDTextDataStringSpecialChar \ contained \ display \ '\\\%(\o\o\o\|["\\]\)' call s:def_match('cdrtocHeaderCDTextDataBinaryStart', \ 'cdrtocHeaderCDTextDataBinaryInteger', \ '{') call s:def_match('cdrtocHeaderCDTextDataBinaryInteger', \ 'cdrtocHeaderCDTextDataBinarySeparator,cdrtocHeaderCDTextDataBinaryEnd', \ s:byte_pattern) call s:def_match('cdrtocHeaderCDTextDataBinarySeparator', \ 'cdrtocHeaderCDTextDataBinaryInteger', \ ',') call s:def_match('cdrtocHeaderCDTextDataBinaryEnd', \ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd', \ '}') call s:def_match('cdrtocHeaderLanguageEnd', \ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd', \ '}') call s:def_match('cdrtocHeaderCDTextEnd', \ 'cdrtocTrack', \ '}') syn cluster cdrtocTrackFollow \ contains= \ @cdrtocTrackFlags, \ cdrtocTrackCDText, \ cdrtocTrackPregap, \ @cdrtocTrackContents call s:def_keyword('cdrtocTrack', 'cdrtocTrackMode', 'TRACK') call s:def_keywords('cdrtocTrackMode', \ 'cdrtocTrackSubChannelMode,@cdrtocTrackFollow', \ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1', \ 'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW']) call s:def_keywords('cdrtocTrackSubChannelMode', \ '@cdrtocTrackFollow', \ ['RW', 'RW_RAW']) syn cluster cdrtocTrackFlags \ contains= \ cdrtocTrackFlagNo, \ cdrtocTrackFlagCopy, \ cdrtocTrackFlagPreEmphasis, \ cdrtocTrackFlag call s:def_keyword('cdrtocTrackFlagNo', \ 'cdrtocTrackFlagCopy,cdrtocTrackFlagPreEmphasis', \ 'NO') call s:def_keyword('cdrtocTrackFlagCopy', '@cdrtocTrackFollow', 'COPY') call s:def_keyword('cdrtocTrackFlagPreEmphasis', '@cdrtocTrackFollow', 'PRE_EMPHASIS') call s:def_keywords('cdrtocTrackFlag', \ '@cdrtocTrackFollow', \ ['TWO_CHANNEL_AUDIO', 'FOUR_CHANNEL_AUDIO']) call s:def_keyword('cdrtocTrackFlag', 'cdrtocTrackISRC', 'ISRC') call s:def_match('cdrtocTrackISRC', \ '@cdrtocTrackFollow', \ '"[[:upper:][:digit:]]\{5}\d\{7}"') call s:def_keyword('cdrtocTrackCDText', 'cdrtocTrackCDTextStart', 'CD_TEXT') call s:def_match('cdrtocTrackCDTextStart', 'cdrtocTrackCDTextLanguage', '{') call s:def_keyword('cdrtocTrackCDTextLanguage', 'cdrtocTrackCDTextLanguageNumber', 'LANGUAGE') call s:def_match('cdrtocTrackCDTextLanguageNumber', 'cdrtocTrackCDTextLanguageStart', '\<[0-7]\>') call s:def_match('cdrtocTrackCDTextLanguageStart', \ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd', \ '{') syn cluster cdrtocTrackCDTextData \ contains= \ cdrtocTrackCDTextDataString, \ cdrtocTrackCDTextDataBinaryStart call s:def_keywords('cdrtocTrackCDTextItem', \ '@cdrtocTrackCDTextData', \ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER', 'ARRANGER', \ 'MESSAGE', 'ISRC']) call s:def_region('cdrtocTrackCDTextDataString', \ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd', \ '"', \ '\\\\\|\\"', \ '"', \ 'cdrtocTrackCDTextDataStringDelimiters', \ 'cdrtocTrackCDTextDataStringSpecialChar') syn match cdrtocTrackCDTextDataStringSpecialChar \ contained \ display \ '\\\%(\o\o\o\|["\\]\)' call s:def_match('cdrtocTrackCDTextDataBinaryStart', \ 'cdrtocTrackCDTextDataBinaryInteger', \ '{') call s:def_match('cdrtocTrackCDTextDataBinaryInteger', \ 'cdrtocTrackCDTextDataBinarySeparator,cdrtocTrackCDTextDataBinaryEnd', \ s:byte_pattern) call s:def_match('cdrtocTrackCDTextDataBinarySeparator', \ 'cdrtocTrackCDTextDataBinaryInteger', \ ',') call s:def_match('cdrtocTrackCDTextDataBinaryEnd', \ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd', \ '}') call s:def_match('cdrtocTrackCDTextLanguageEnd', \ 'cdrtocTrackCDTextLanguage,cdrtocTrackCDTextEnd', \ '}') call s:def_match('cdrtocTrackCDTextEnd', \ 'cdrtocTrackPregap,@cdrtocTrackContents', \ '}') call s:def_keyword('cdrtocTrackPregap', 'cdrtocTrackPregapMMSSFF', 'PREGAP') call s:def_match('cdrtocTrackPregapMMSSFF', \ '@cdrtocTrackContents', \ s:mmssff_pattern) syn cluster cdrtocTrackContents \ contains= \ cdrtocTrackSubTrack, \ cdrtocTrackMarker syn cluster cdrtocTrackContentsFollow \ contains= \ @cdrtocTrackContents, \ cdrtocTrackIndex, \ cdrtocTrack call s:def_keywords('cdrtocTrackSubTrack', \ 'cdrtocTrackSubTrackFileFilename', \ ['FILE', 'AUDIOFILE']) call s:def_region('cdrtocTrackSubTrackFileFilename', \ 'cdrtocTrackSubTrackFileStart', \ '"', \ '\\\\\|\\"', \ '"', \ 'cdrtocTrackSubTrackFileFilenameDelimiters', \ 'cdrtocTrackSubTrackFileFilenameSpecialChar') syn match cdrtocTrackSubTrackFileFilenameSpecialChar \ contained \ display \ '\\\%(\o\o\o\|["\\]\)' call s:def_match('cdrtocTrackSubTrackFileStart', \ 'cdrtocTrackSubTrackFileLength,@cdrtocTrackContentsFollow', \ s:length_pattern) call s:def_match('cdrtocTrackSubTrackFileLength', \ '@cdrtocTrackContentsFollow', \ s:length_pattern) call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentDatafileFilename', 'DATAFILE') call s:def_region('cdrtocTrackSubTrackDatafileFilename', \ 'cdrtocTrackSubTrackDatafileLength', \ '"', \ '\\\\\|\\"', \ '"', \ 'cdrtocTrackSubTrackDatafileFilenameDelimiters', \ 'cdrtocTrackSubTrackDatafileFilenameSpecialChar') syn match cdrtocTrackSubTrackdatafileFilenameSpecialChar \ contained \ display \ '\\\%(\o\o\o\|["\\]\)' call s:def_match('cdrtocTrackDatafileLength', \ '@cdrtocTrackContentsFollow', \ s:length_pattern) call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentFifoFilename', 'DATAFILE') call s:def_region('cdrtocTrackSubTrackFifoFilename', \ 'cdrtocTrackSubTrackFifoLength', \ '"', \ '\\\\\|\\"', \ '"', \ 'cdrtocTrackSubTrackFifoFilenameDelimiters', \ 'cdrtocTrackSubTrackFifoFilenameSpecialChar') syn match cdrtocTrackSubTrackdatafileFilenameSpecialChar \ contained \ display \ '\\\%(\o\o\o\|["\\]\)' call s:def_match('cdrtocTrackFifoLength', \ '@cdrtocTrackContentsFollow', \ s:length_pattern) call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackSilenceLength', 'SILENCE') call s:def_match('cdrtocTrackSilenceLength', \ '@cdrtocTrackContentsFollow', \ s:length_pattern) call s:def_keyword('cdrtocTrackSubTrack', \ 'cdrtocTrackSubTrackZeroDataMode,' . \ 'cdrtocTrackSubTrackZeroDataSubChannelMode,' . \ 'cdrtocTrackSubTrackZeroDataLength', \ 'ZERO') call s:def_keywords('cdrtocTrackSubTrackZeroDataMode', \ 'cdrtocTrackSubTrackZeroSubChannelMode,cdrtocTrackSubTrackZeroDataLength', \ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1', \ 'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW']) call s:def_keywords('cdrtocTrackSubTrackZeroDataSubChannelMode', \ 'cdrtocTrackSubTrackZeroDataLength', \ ['RW', 'RW_RAW']) call s:def_match('cdrtocTrackSubTrackZeroDataLength', \ '@cdrtocTrackContentsFollow', \ s:length_pattern) call s:def_keyword('cdrtocTrackMarker', \ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerStartMMSSFF', \ 'START') call s:def_match('cdrtocTrackMarkerStartMMSSFF', \ '@cdrtocTrackContentsFollow', \ s:mmssff_pattern) call s:def_keyword('cdrtocTrackMarker', \ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerEndMMSSFF', \ 'END') call s:def_match('cdrtocTrackMarkerEndMMSSFF', \ '@cdrtocTrackContentsFollow', \ s:mmssff_pattern) call s:def_keyword('cdrtocTrackIndex', 'cdrtocTrackIndexMMSSFF', 'INDEX') call s:def_match('cdrtocTrackIndexMMSSFF', \ 'cdrtocTrackIndex,cdrtocTrack', \ s:mmssff_pattern) delfunction s:def_region delfunction s:def_match delfunction s:def_keyword delfunction s:def_keywords delfunction s:def_comment syn sync fromstart hi def link cdrtocKeyword Keyword hi def link cdrtocHeaderKeyword cdrtocKeyword hi def link cdrtocHeaderCDText cdrtocHeaderKeyword hi def link cdrtocDelimiter Delimiter hi def link cdrtocCDTextDataBinaryEnd cdrtocDelimiter hi def link cdrtocHeaderCDTextDataBinaryEnd cdrtocHeaderCDTextDataBinaryEnd hi def link cdrtocNumber Number hi def link cdrtocCDTextDataBinaryInteger cdrtocNumber hi def link cdrtocHeaderCDTextDataBinaryInteger cdrtocCDTextDataBinaryInteger hi def link cdrtocCDTextDataBinarySeparator cdrtocDelimiter hi def link cdrtocHeaderCDTextDataBinarySeparator cdrtocCDTextDataBinarySeparator hi def link cdrtocCDTextDataBinaryStart cdrtocDelimiter hi def link cdrtocHeaderCDTextDataBinaryStart cdrtocCDTextDataBinaryStart hi def link cdrtocString String hi def link cdrtocCDTextDataString cdrtocString hi def link cdrtocHeaderCDTextDataString cdrtocCDTextDataString hi def link cdrtocCDTextDataStringDelimiters cdrtocDelimiter hi def link cdrtocHeaderCDTextDataStringDelimiters cdrtocCDTextDataStringDelimiters hi def link cdrtocCDTextDataStringSpecialChar SpecialChar hi def link cdrtocHeaderCDTextDataStringSpecialChar cdrtocCDTextDataStringSpecialChar hi def link cdrtocCDTextEnd cdrtocDelimiter hi def link cdrtocHeaderCDTextEnd cdrtocCDTextEnd hi def link cdrtocType Type hi def link cdrtocCDTextItem cdrtocType hi def link cdrtocHeaderCDTextItem cdrtocCDTextItem hi def link cdrtocHeaderCDTextLanguageMap cdrtocHeaderKeyword hi def link cdrtocCDTextStart cdrtocDelimiter hi def link cdrtocHeaderCDTextStart cdrtocCDTextStart hi def link cdrtocHeaderCatalog cdrtocHeaderKeyword hi def link cdrtocHeaderCatalogNumber cdrtocString hi def link cdrtocComment Comment hi def link cdrtocHeaderCommentInitial cdrtocComment hi def link cdrtocHeaderLanguage cdrtocKeyword hi def link cdrtocLanguageEnd cdrtocDelimiter hi def link cdrtocHeaderLanguageEnd cdrtocLanguageEnd hi def link cdrtocHeaderLanguageMapColon cdrtocDelimiter hi def link cdrtocIdentifier Identifier hi def link cdrtocHeaderLanguageMapCountryCode cdrtocNumber hi def link cdrtocHeaderLanguageMapCountryCodeName cdrtocIdentifier hi def link cdrtocHeaderLanguageMapEnd cdrtocDelimiter hi def link cdrtocHeaderLanguageMapLanguageNumber cdrtocNumber hi def link cdrtocHeaderLanguageMapStart cdrtocDelimiter hi def link cdrtocLanguageNumber cdrtocNumber hi def link cdrtocHeaderLanguageNumber cdrtocLanguageNumber hi def link cdrtocLanguageStart cdrtocDelimiter hi def link cdrtocHeaderLanguageStart cdrtocLanguageStart hi def link cdrtocHeaderTOCType cdrtocType hi def link cdrtocTodo Todo hi def link cdrtocTrackKeyword cdrtocKeyword hi def link cdrtocTrack cdrtocTrackKeyword hi def link cdrtocTrackCDText cdrtocTrackKeyword hi def link cdrtocTrackCDTextDataBinaryEnd cdrtocHeaderCDTextDataBinaryEnd hi def link cdrtocTrackCDTextDataBinaryInteger cdrtocHeaderCDTextDataBinaryInteger hi def link cdrtocTrackCDTextDataBinarySeparator cdrtocHeaderCDTextDataBinarySeparator hi def link cdrtocTrackCDTextDataBinaryStart cdrtocHeaderCDTextDataBinaryStart hi def link cdrtocTrackCDTextDataString cdrtocHeaderCDTextDataString hi def link cdrtocTrackCDTextDataStringDelimiters cdrtocCDTextDataStringDelimiters hi def link cdrtocTrackCDTextDataStringSpecialChar cdrtocCDTextDataStringSpecialChar hi def link cdrtocTrackCDTextEnd cdrtocCDTextEnd hi def link cdrtocTrackCDTextItem cdrtocCDTextItem hi def link cdrtocTrackCDTextStart cdrtocCDTextStart hi def link cdrtocLength cdrtocNumber hi def link cdrtocTrackDatafileLength cdrtocLength hi def link cdrtocTrackFifoLength cdrtocLength hi def link cdrtocPreProc PreProc hi def link cdrtocTrackFlag cdrtocPreProc hi def link cdrtocTrackFlagCopy cdrtocTrackFlag hi def link cdrtocSpecial Special hi def link cdrtocTrackFlagNo cdrtocSpecial hi def link cdrtocTrackFlagPreEmphasis cdrtocTrackFlag hi def link cdrtocTrackISRC cdrtocTrackFlag hi def link cdrtocTrackIndex cdrtocTrackKeyword hi def link cdrtocMMSSFF cdrtocLength hi def link cdrtocTrackIndexMMSSFF cdrtocMMSSFF hi def link cdrtocTrackCDTextLanguage cdrtocTrackKeyword hi def link cdrtocTrackCDTextLanguageEnd cdrtocLanguageEnd hi def link cdrtocTrackCDTextLanguageNumber cdrtocLanguageNumber hi def link cdrtocTrackCDTextLanguageStart cdrtocLanguageStart hi def link cdrtocTrackContents StorageClass hi def link cdrtocTrackMarker cdrtocTrackContents hi def link cdrtocTrackMarkerEndMMSSFF cdrtocMMSSFF hi def link cdrtocTrackMarkerStartMMSSFF cdrtocMMSSFF hi def link cdrtocTrackMode Type hi def link cdrtocTrackPregap cdrtocTrackContents hi def link cdrtocTrackPregapMMSSFF cdrtocMMSSFF hi def link cdrtocTrackSilenceLength cdrtocLength hi def link cdrtocTrackSubChannelMode cdrtocPreProc hi def link cdrtocTrackSubTrack cdrtocTrackContents hi def link cdrtocFilename cdrtocString hi def link cdrtocTrackSubTrackDatafileFilename cdrtocFilename hi def link cdrtocTrackSubTrackDatafileFilenameDelimiters cdrtocTrackSubTrackDatafileFilename hi def link cdrtocSpecialChar SpecialChar hi def link cdrtocTrackSubTrackDatafileFilenameSpecialChar cdrtocSpecialChar hi def link cdrtocTrackSubTrackDatafileLength cdrtocLength hi def link cdrtocTrackSubTrackFifoFilename cdrtocFilename hi def link cdrtocTrackSubTrackFifoFilenameDelimiters cdrtocTrackSubTrackFifoFilename hi def link cdrtocTrackSubTrackFifoFilenameSpecialChar cdrtocSpecialChar hi def link cdrtocTrackSubTrackFifoLength cdrtocLength hi def link cdrtocTrackSubTrackFileFilename cdrtocFilename hi def link cdrtocTrackSubTrackFileFilenameDelimiters cdrtocTrackSubTrackFileFilename hi def link cdrtocTrackSubTrackFileFilenameSpecialChar cdrtocSpecialChar hi def link cdrtocTrackSubTrackFileLength cdrtocLength hi def link cdrtocTrackSubTrackFileStart cdrtocLength hi def link cdrtocTrackSubTrackZeroDataLength cdrtocLength hi def link cdrtocTrackSubTrackZeroDataMode Type hi def link cdrtocTrackSubTrackZeroDataSubChannelMode cdrtocPreProc hi def link cdrtocTrackSubTrackdatafileFilenameSpecialChar cdrtocSpecialChar let b:current_syntax = "cdrtoc" let &cpo = s:cpo_save unlet s:cpo_save PK&]Z77vim80/syntax/2html.vimnu[" Vim syntax support file " Maintainer: Ben Fritz " Last Change: 2015 Sep 08 " " Additional contributors: " " Original by Bram Moolenaar " Modified by David Ne\v{c}as (Yeti) " XHTML support by Panagiotis Issaris " Made w3 compliant by Edd Barrett " Added html_font. Edd Barrett " Progress bar based off code from "progressbar widget" plugin by " Andreas Politz, heavily modified: " http://www.vim.org/scripts/script.php?script_id=2006 " " See Mercurial change logs for more! " Transform a file into HTML, using the current syntax highlighting. " this file uses line continuations let s:cpo_sav = &cpo let s:ls = &ls set cpo&vim let s:end=line('$') " Font if exists("g:html_font") if type(g:html_font) == type([]) let s:htmlfont = "'". join(g:html_font,"','") . "', monospace" else let s:htmlfont = "'". g:html_font . "', monospace" endif else let s:htmlfont = "monospace" endif let s:settings = tohtml#GetUserSettings() if !exists('s:FOLDED_ID') let s:FOLDED_ID = hlID("Folded") | lockvar s:FOLDED_ID let s:FOLD_C_ID = hlID("FoldColumn") | lockvar s:FOLD_C_ID let s:LINENR_ID = hlID('LineNr') | lockvar s:LINENR_ID let s:DIFF_D_ID = hlID("DiffDelete") | lockvar s:DIFF_D_ID let s:DIFF_A_ID = hlID("DiffAdd") | lockvar s:DIFF_A_ID let s:DIFF_C_ID = hlID("DiffChange") | lockvar s:DIFF_C_ID let s:DIFF_T_ID = hlID("DiffText") | lockvar s:DIFF_T_ID let s:CONCEAL_ID = hlID('Conceal') | lockvar s:CONCEAL_ID endif " Whitespace if s:settings.pre_wrap let s:whitespace = "white-space: pre-wrap; " else let s:whitespace = "" endif if !empty(s:settings.prevent_copy) if s:settings.no_invalid " User has decided they don't want invalid markup. Still works in " OpenOffice, and for text editors, but when pasting into Microsoft Word the " input elements get pasted too and they cannot be deleted (at least not " easily). let s:unselInputType = "" else " Prevent from copy-pasting the input elements into Microsoft Word where " they cannot be deleted easily by deliberately inserting invalid markup. let s:unselInputType = " type='invalid_input_type'" endif endif " When not in gui we can only guess the colors. " TODO - is this true anymore? if has("gui_running") let s:whatterm = "gui" else let s:whatterm = "cterm" if &t_Co == 8 let s:cterm_color = { \ 0: "#808080", 1: "#ff6060", 2: "#00ff00", 3: "#ffff00", \ 4: "#8080ff", 5: "#ff40ff", 6: "#00ffff", 7: "#ffffff" \ } else let s:cterm_color = { \ 0: "#000000", 1: "#c00000", 2: "#008000", 3: "#804000", \ 4: "#0000c0", 5: "#c000c0", 6: "#008080", 7: "#c0c0c0", \ 8: "#808080", 9: "#ff6060", 10: "#00ff00", 11: "#ffff00", \ 12: "#8080ff", 13: "#ff40ff", 14: "#00ffff", 15: "#ffffff" \ } " Colors for 88 and 256 come from xterm. if &t_Co == 88 call extend(s:cterm_color, { \ 16: "#000000", 17: "#00008b", 18: "#0000cd", 19: "#0000ff", \ 20: "#008b00", 21: "#008b8b", 22: "#008bcd", 23: "#008bff", \ 24: "#00cd00", 25: "#00cd8b", 26: "#00cdcd", 27: "#00cdff", \ 28: "#00ff00", 29: "#00ff8b", 30: "#00ffcd", 31: "#00ffff", \ 32: "#8b0000", 33: "#8b008b", 34: "#8b00cd", 35: "#8b00ff", \ 36: "#8b8b00", 37: "#8b8b8b", 38: "#8b8bcd", 39: "#8b8bff", \ 40: "#8bcd00", 41: "#8bcd8b", 42: "#8bcdcd", 43: "#8bcdff", \ 44: "#8bff00", 45: "#8bff8b", 46: "#8bffcd", 47: "#8bffff", \ 48: "#cd0000", 49: "#cd008b", 50: "#cd00cd", 51: "#cd00ff", \ 52: "#cd8b00", 53: "#cd8b8b", 54: "#cd8bcd", 55: "#cd8bff", \ 56: "#cdcd00", 57: "#cdcd8b", 58: "#cdcdcd", 59: "#cdcdff", \ 60: "#cdff00", 61: "#cdff8b", 62: "#cdffcd", 63: "#cdffff", \ 64: "#ff0000" \ }) call extend(s:cterm_color, { \ 65: "#ff008b", 66: "#ff00cd", 67: "#ff00ff", 68: "#ff8b00", \ 69: "#ff8b8b", 70: "#ff8bcd", 71: "#ff8bff", 72: "#ffcd00", \ 73: "#ffcd8b", 74: "#ffcdcd", 75: "#ffcdff", 76: "#ffff00", \ 77: "#ffff8b", 78: "#ffffcd", 79: "#ffffff", 80: "#2e2e2e", \ 81: "#5c5c5c", 82: "#737373", 83: "#8b8b8b", 84: "#a2a2a2", \ 85: "#b9b9b9", 86: "#d0d0d0", 87: "#e7e7e7" \ }) elseif &t_Co == 256 call extend(s:cterm_color, { \ 16: "#000000", 17: "#00005f", 18: "#000087", 19: "#0000af", \ 20: "#0000d7", 21: "#0000ff", 22: "#005f00", 23: "#005f5f", \ 24: "#005f87", 25: "#005faf", 26: "#005fd7", 27: "#005fff", \ 28: "#008700", 29: "#00875f", 30: "#008787", 31: "#0087af", \ 32: "#0087d7", 33: "#0087ff", 34: "#00af00", 35: "#00af5f", \ 36: "#00af87", 37: "#00afaf", 38: "#00afd7", 39: "#00afff", \ 40: "#00d700", 41: "#00d75f", 42: "#00d787", 43: "#00d7af", \ 44: "#00d7d7", 45: "#00d7ff", 46: "#00ff00", 47: "#00ff5f", \ 48: "#00ff87", 49: "#00ffaf", 50: "#00ffd7", 51: "#00ffff", \ 52: "#5f0000", 53: "#5f005f", 54: "#5f0087", 55: "#5f00af", \ 56: "#5f00d7", 57: "#5f00ff", 58: "#5f5f00", 59: "#5f5f5f", \ 60: "#5f5f87", 61: "#5f5faf", 62: "#5f5fd7", 63: "#5f5fff", \ 64: "#5f8700" \ }) call extend(s:cterm_color, { \ 65: "#5f875f", 66: "#5f8787", 67: "#5f87af", 68: "#5f87d7", \ 69: "#5f87ff", 70: "#5faf00", 71: "#5faf5f", 72: "#5faf87", \ 73: "#5fafaf", 74: "#5fafd7", 75: "#5fafff", 76: "#5fd700", \ 77: "#5fd75f", 78: "#5fd787", 79: "#5fd7af", 80: "#5fd7d7", \ 81: "#5fd7ff", 82: "#5fff00", 83: "#5fff5f", 84: "#5fff87", \ 85: "#5fffaf", 86: "#5fffd7", 87: "#5fffff", 88: "#870000", \ 89: "#87005f", 90: "#870087", 91: "#8700af", 92: "#8700d7", \ 93: "#8700ff", 94: "#875f00", 95: "#875f5f", 96: "#875f87", \ 97: "#875faf", 98: "#875fd7", 99: "#875fff", 100: "#878700", \ 101: "#87875f", 102: "#878787", 103: "#8787af", 104: "#8787d7", \ 105: "#8787ff", 106: "#87af00", 107: "#87af5f", 108: "#87af87", \ 109: "#87afaf", 110: "#87afd7", 111: "#87afff", 112: "#87d700" \ }) call extend(s:cterm_color, { \ 113: "#87d75f", 114: "#87d787", 115: "#87d7af", 116: "#87d7d7", \ 117: "#87d7ff", 118: "#87ff00", 119: "#87ff5f", 120: "#87ff87", \ 121: "#87ffaf", 122: "#87ffd7", 123: "#87ffff", 124: "#af0000", \ 125: "#af005f", 126: "#af0087", 127: "#af00af", 128: "#af00d7", \ 129: "#af00ff", 130: "#af5f00", 131: "#af5f5f", 132: "#af5f87", \ 133: "#af5faf", 134: "#af5fd7", 135: "#af5fff", 136: "#af8700", \ 137: "#af875f", 138: "#af8787", 139: "#af87af", 140: "#af87d7", \ 141: "#af87ff", 142: "#afaf00", 143: "#afaf5f", 144: "#afaf87", \ 145: "#afafaf", 146: "#afafd7", 147: "#afafff", 148: "#afd700", \ 149: "#afd75f", 150: "#afd787", 151: "#afd7af", 152: "#afd7d7", \ 153: "#afd7ff", 154: "#afff00", 155: "#afff5f", 156: "#afff87", \ 157: "#afffaf", 158: "#afffd7" \ }) call extend(s:cterm_color, { \ 159: "#afffff", 160: "#d70000", 161: "#d7005f", 162: "#d70087", \ 163: "#d700af", 164: "#d700d7", 165: "#d700ff", 166: "#d75f00", \ 167: "#d75f5f", 168: "#d75f87", 169: "#d75faf", 170: "#d75fd7", \ 171: "#d75fff", 172: "#d78700", 173: "#d7875f", 174: "#d78787", \ 175: "#d787af", 176: "#d787d7", 177: "#d787ff", 178: "#d7af00", \ 179: "#d7af5f", 180: "#d7af87", 181: "#d7afaf", 182: "#d7afd7", \ 183: "#d7afff", 184: "#d7d700", 185: "#d7d75f", 186: "#d7d787", \ 187: "#d7d7af", 188: "#d7d7d7", 189: "#d7d7ff", 190: "#d7ff00", \ 191: "#d7ff5f", 192: "#d7ff87", 193: "#d7ffaf", 194: "#d7ffd7", \ 195: "#d7ffff", 196: "#ff0000", 197: "#ff005f", 198: "#ff0087", \ 199: "#ff00af", 200: "#ff00d7", 201: "#ff00ff", 202: "#ff5f00", \ 203: "#ff5f5f", 204: "#ff5f87" \ }) call extend(s:cterm_color, { \ 205: "#ff5faf", 206: "#ff5fd7", 207: "#ff5fff", 208: "#ff8700", \ 209: "#ff875f", 210: "#ff8787", 211: "#ff87af", 212: "#ff87d7", \ 213: "#ff87ff", 214: "#ffaf00", 215: "#ffaf5f", 216: "#ffaf87", \ 217: "#ffafaf", 218: "#ffafd7", 219: "#ffafff", 220: "#ffd700", \ 221: "#ffd75f", 222: "#ffd787", 223: "#ffd7af", 224: "#ffd7d7", \ 225: "#ffd7ff", 226: "#ffff00", 227: "#ffff5f", 228: "#ffff87", \ 229: "#ffffaf", 230: "#ffffd7", 231: "#ffffff", 232: "#080808", \ 233: "#121212", 234: "#1c1c1c", 235: "#262626", 236: "#303030", \ 237: "#3a3a3a", 238: "#444444", 239: "#4e4e4e", 240: "#585858", \ 241: "#626262", 242: "#6c6c6c", 243: "#767676", 244: "#808080", \ 245: "#8a8a8a", 246: "#949494", 247: "#9e9e9e", 248: "#a8a8a8", \ 249: "#b2b2b2", 250: "#bcbcbc", 251: "#c6c6c6", 252: "#d0d0d0", \ 253: "#dadada", 254: "#e4e4e4", 255: "#eeeeee" \ }) endif endif endif " Return good color specification: in GUI no transformation is done, in " terminal return RGB values of known colors and empty string for unknown if s:whatterm == "gui" function! s:HtmlColor(color) return a:color endfun else function! s:HtmlColor(color) if has_key(s:cterm_color, a:color) return s:cterm_color[a:color] else return "" endif endfun endif " Find out the background and foreground color for use later let s:fgc = s:HtmlColor(synIDattr(hlID("Normal"), "fg#", s:whatterm)) let s:bgc = s:HtmlColor(synIDattr(hlID("Normal"), "bg#", s:whatterm)) if s:fgc == "" let s:fgc = ( &background == "dark" ? "#ffffff" : "#000000" ) endif if s:bgc == "" let s:bgc = ( &background == "dark" ? "#000000" : "#ffffff" ) endif if !s:settings.use_css " Return opening HTML tag for given highlight id function! s:HtmlOpening(id, extra_attrs) let a = "" if synIDattr(a:id, "inverse") " For inverse, we always must set both colors (and exchange them) let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) let a = a . '' let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) let a = a . '' else let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) if x != "" let a = a . '' elseif !empty(a:extra_attrs) let a = a . '' endif let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) if x != "" | let a = a . '' | endif endif if synIDattr(a:id, "bold") | let a = a . "" | endif if synIDattr(a:id, "italic") | let a = a . "" | endif if synIDattr(a:id, "underline") | let a = a . "" | endif return a endfun " Return closing HTML tag for given highlight id function! s:HtmlClosing(id, has_extra_attrs) let a = "" if synIDattr(a:id, "underline") | let a = a . "" | endif if synIDattr(a:id, "italic") | let a = a . "" | endif if synIDattr(a:id, "bold") | let a = a . "" | endif if synIDattr(a:id, "inverse") let a = a . '' else let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) if x != "" | let a = a . '' | endif let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) if x != "" || a:has_extra_attrs | let a = a . '' | endif endif return a endfun endif " Use a different function for formatting based on user options. This way we " can avoid a lot of logic during the actual execution. " " Build the function line by line containing only what is needed for the options " in use for maximum code sharing with minimal branch logic for greater speed. " " Note, 'exec' commands do not recognize line continuations, so must concatenate " lines rather than continue them. if s:settings.use_css " save CSS to a list of rules to add to the output at the end of processing " first, get the style names we need let wrapperfunc_lines = [ \ 'function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, make_unselectable, unformatted)', \ '', \ ' let l:style_name = synIDattr(a:style_id, "name", s:whatterm)' \ ] if &diff let wrapperfunc_lines += [ \ ' let l:diff_style_name = synIDattr(a:diff_style_id, "name", s:whatterm)'] " Add normal groups and diff groups to separate lists so we can order them to " allow diff highlight to override normal highlight " if primary style IS a diff style, grab it from the diff cache instead " (always succeeds because we pre-populate it) let wrapperfunc_lines += [ \ '', \ ' if a:style_id == s:DIFF_D_ID || a:style_id == s:DIFF_A_ID ||'. \ ' a:style_id == s:DIFF_C_ID || a:style_id == s:DIFF_T_ID', \ ' let l:saved_style = get(s:diffstylelist,a:style_id)', \ ' else' \ ] endif " get primary style info from cache or build it on the fly if not found let wrapperfunc_lines += [ \ ' let l:saved_style = get(s:stylelist,a:style_id)', \ ' if type(l:saved_style) == type(0)', \ ' unlet l:saved_style', \ ' let l:saved_style = s:CSS1(a:style_id)', \ ' if l:saved_style != ""', \ ' let l:saved_style = "." . l:style_name . " { " . l:saved_style . "}"', \ ' endif', \ ' let s:stylelist[a:style_id]= l:saved_style', \ ' endif' \ ] if &diff let wrapperfunc_lines += [ ' endif' ] endif " Build the wrapper tags around the text. It turns out that caching these " gives pretty much zero performance gain and adds a lot of logic. let wrapperfunc_lines += [ \ '', \ ' if l:saved_style == "" && empty(a:extra_attrs)' \ ] if &diff let wrapperfunc_lines += [ \ ' if a:diff_style_id <= 0' \ ] endif " no surroundings if neither primary nor diff style has any info let wrapperfunc_lines += [ \ ' return a:text' \ ] if &diff " no primary style, but diff style let wrapperfunc_lines += [ \ ' else', \ ' return "".a:text.""', \ ' endif' \ ] endif " open tag for non-empty primary style let wrapperfunc_lines += [ \ ' else'] " non-empty primary style. handle either empty or non-empty diff style. " " separate the two classes by a space to apply them both if there is a diff " style name, unless the primary style is empty, then just use the diff style " name let diffstyle = \ (&diff ? '(a:diff_style_id <= 0 ? "" : " ". l:diff_style_name) .' \ : "") if s:settings.prevent_copy == "" let wrapperfunc_lines += [ \ ' return "".a:text.""' \ ] else " " Wrap the in a to allow fixing the stupid bug in some fonts " which cause browsers to display a 1px gap between lines when these " s have a background color (maybe not really a bug, this isn't " well-defined) " " use strwidth, because we care only about how many character boxes are " needed to size the input, we don't care how many characters (including " separately counted composing chars, from strchars()) or bytes (from " len())the string contains. strdisplaywidth() is not needed because none of " the unselectable groups can contain tab characters (fold column, fold " text, line number). " " Note, if maxlength property needs to be added in the future, it will need " to use strchars(), because HTML specifies that the maxlength parameter " uses the number of unique codepoints for its limit. let wrapperfunc_lines += [ \ ' if a:make_unselectable', \ ' return "'. \ '"', \ ' else', \ ' return "".a:text.""' \ ] endif let wrapperfunc_lines += [ \ ' endif', \ 'endfun' \ ] else " Non-CSS method just needs the wrapper. " " Functions used to get opening/closing automatically return null strings if " no styles exist. if &diff let wrapperfunc_lines = [ \ 'function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, unusedarg, unusedarg2)', \ ' return s:HtmlOpening(a:style_id, a:extra_attrs).(a:diff_style_id <= 0 ? "" :'. \ 's:HtmlOpening(a:diff_style_id, "")).a:text.'. \ '(a:diff_style_id <= 0 ? "" : s:HtmlClosing(a:diff_style_id, 0)).s:HtmlClosing(a:style_id, !empty(a:extra_attrs))', \ 'endfun' \ ] else let wrapperfunc_lines = [ \ 'function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, unusedarg, unusedarg2)', \ ' return s:HtmlOpening(a:style_id, a:extra_attrs).a:text.s:HtmlClosing(a:style_id, !empty(a:extra_attrs))', \ 'endfun' \ ] endif endif " create the function we built line by line above exec join(wrapperfunc_lines, "\n") let s:diff_mode = &diff " Return HTML valid characters enclosed in a span of class style_name with " unprintable characters expanded and double spaces replaced as necessary. " " TODO: eliminate unneeded logic like done for BuildStyleWrapper function! s:HtmlFormat(text, style_id, diff_style_id, extra_attrs, make_unselectable) " Replace unprintable characters let unformatted = strtrans(a:text) let formatted = unformatted " Replace the reserved html characters let formatted = substitute(formatted, '&', '\&', 'g') let formatted = substitute(formatted, '<', '\<', 'g') let formatted = substitute(formatted, '>', '\>', 'g') let formatted = substitute(formatted, '"', '\"', 'g') " ' is not valid in HTML but it is in XHTML, so just use the numeric " reference for it instead. Needed because it could appear in quotes " especially if unselectable regions is turned on. let formatted = substitute(formatted, '"', '\'', 'g') " Replace a "form feed" character with HTML to do a page break " TODO: need to prevent this in unselectable areas? Probably it should never " BE in an unselectable area... let formatted = substitute(formatted, "\x0c", '
', 'g') " Replace double spaces, leading spaces, and trailing spaces if needed if ' ' != s:HtmlSpace let formatted = substitute(formatted, ' ', s:HtmlSpace . s:HtmlSpace, 'g') let formatted = substitute(formatted, '^ ', s:HtmlSpace, 'g') let formatted = substitute(formatted, ' \+$', s:HtmlSpace, 'g') endif " Enclose in the correct format return s:BuildStyleWrapper(a:style_id, a:diff_style_id, a:extra_attrs, formatted, a:make_unselectable, unformatted) endfun " set up functions to call HtmlFormat in certain ways based on whether the " element is supposed to be unselectable or not if s:settings.prevent_copy =~# 'n' if s:settings.number_lines if s:settings.line_ids function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) if a:lnr > 0 return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'.(exists('g:html_diff_win_num') ? 'W'.g:html_diff_win_num : "").'L'.a:lnr.s:settings.id_suffix.'" ', 1) else return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 1) endif endfun else function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 1) endfun endif elseif s:settings.line_ids " if lines are not being numbered the only reason this function gets called " is to put the line IDs on each line; "text" will be emtpy but lnr will " always be non-zero, however we don't want to use the because that " won't work as nice for empty text function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'.(exists('g:html_diff_win_num') ? 'W'.g:html_diff_win_num : "").'L'.a:lnr.s:settings.id_suffix.'" ', 0) endfun endif else if s:settings.line_ids function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) if a:lnr > 0 return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'.(exists('g:html_diff_win_num') ? 'W'.g:html_diff_win_num : "").'L'.a:lnr.s:settings.id_suffix.'" ', 0) else return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 0) endif endfun else function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 0) endfun endif endif if s:settings.prevent_copy =~# 'd' function! s:HtmlFormat_d(text, style_id, diff_style_id) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 1) endfun else function! s:HtmlFormat_d(text, style_id, diff_style_id) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 0) endfun endif if s:settings.prevent_copy =~# 'f' " Note the elements for fill spaces will have a single space for " content, to allow active cursor CSS selection to work. " " Wrap the whole thing in a span for the 1px padding workaround for gaps. function! s:FoldColumn_build(char, len, numfill, char2, class, click) let l:input_open = "" : "'>") return "". \ l:input_open.l:common_attrs.repeat(a:char, a:len). \ (!empty(a:char2) ? a:char2 : ""). \ l:input_close . "" endfun function! s:FoldColumn_fill() return s:FoldColumn_build('', s:foldcolumn, 0, '', 'FoldColumn', '') endfun else " For normal fold columns, simply space-pad to the desired width (note that " the FoldColumn definition includes a whitespace:pre rule) function! s:FoldColumn_build(char, len, numfill, char2, class, click) return "". \ repeat(a:char, a:len).a:char2.repeat(' ', a:numfill). \ "" endfun function! s:FoldColumn_fill() return s:HtmlFormat(repeat(' ', s:foldcolumn), s:FOLD_C_ID, 0, "", 0) endfun endif if s:settings.prevent_copy =~# 't' " put an extra empty span at the end for dynamic folds, so the linebreak can " be surrounded. Otherwise do it as normal. " " TODO: isn't there a better way to do this, than placing it here and using a " substitute later? if s:settings.dynamic_folds function! s:HtmlFormat_t(text, style_id, diff_style_id) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 1) . \ s:HtmlFormat("", a:style_id, 0, "", 0) endfun else function! s:HtmlFormat_t(text, style_id, diff_style_id) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 1) endfun endif else function! s:HtmlFormat_t(text, style_id, diff_style_id) return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 0) endfun endif " Return CSS style describing given highlight id (can be empty) function! s:CSS1(id) let a = "" if synIDattr(a:id, "inverse") " For inverse, we always must set both colors (and exchange them) let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) let a = a . "color: " . ( x != "" ? x : s:bgc ) . "; " let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) let a = a . "background-color: " . ( x != "" ? x : s:fgc ) . "; " else let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) if x != "" | let a = a . "color: " . x . "; " | endif let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) if x != "" let a = a . "background-color: " . x . "; " " stupid hack because almost every browser seems to have at least one font " which shows 1px gaps between lines which have background let a = a . "padding-bottom: 1px; " elseif (a:id == s:FOLDED_ID || a:id == s:LINENR_ID || a:id == s:FOLD_C_ID) && !empty(s:settings.prevent_copy) " input elements default to a different color than the rest of the page let a = a . "background-color: " . s:bgc . "; " endif endif if synIDattr(a:id, "bold") | let a = a . "font-weight: bold; " | endif if synIDattr(a:id, "italic") | let a = a . "font-style: italic; " | endif if synIDattr(a:id, "underline") | let a = a . "text-decoration: underline; " | endif return a endfun if s:settings.dynamic_folds " compares two folds as stored in our list of folds " A fold is "less" than another if it starts at an earlier line number, " or ends at a later line number, ties broken by fold level function! s:FoldCompare(f1, f2) if a:f1.firstline != a:f2.firstline " put it before if it starts earlier return a:f1.firstline - a:f2.firstline elseif a:f1.lastline != a:f2.lastline " put it before if it ends later return a:f2.lastline - a:f1.lastline else " if folds begin and end on the same lines, put lowest fold level first return a:f1.level - a:f2.level endif endfunction endif " Set some options to make it work faster. " Don't report changes for :substitute, there will be many of them. " Don't change other windows; turn off scroll bind temporarily let s:old_title = &title let s:old_icon = &icon let s:old_et = &l:et let s:old_bind = &l:scrollbind let s:old_report = &report let s:old_search = @/ let s:old_more = &more set notitle noicon setlocal et set nomore set report=1000000 setlocal noscrollbind if exists(':ownsyntax') && exists('w:current_syntax') let s:current_syntax = w:current_syntax elseif exists('b:current_syntax') let s:current_syntax = b:current_syntax else let s:current_syntax = 'none' endif if s:current_syntax == '' let s:current_syntax = 'none' endif " Split window to create a buffer with the HTML file. let s:orgbufnr = winbufnr(0) let s:origwin_stl = &l:stl if expand("%") == "" if exists('g:html_diff_win_num') exec 'new Untitled_win'.g:html_diff_win_num.'.'.(s:settings.use_xhtml ? 'x' : '').'html' else exec 'new Untitled.'.(s:settings.use_xhtml ? 'x' : '').'html' endif else exec 'new %.'.(s:settings.use_xhtml ? 'x' : '').'html' endif " Resize the new window to very small in order to make it draw faster let s:old_winheight = winheight(0) let s:old_winfixheight = &l:winfixheight if s:old_winheight > 2 resize 1 " leave enough room to view one line at a time norm! G norm! zt endif setlocal winfixheight let s:newwin_stl = &l:stl " on the new window, set the least time-consuming fold method let s:old_fen = &foldenable setlocal foldmethod=manual setlocal nofoldenable let s:newwin = winnr() let s:orgwin = bufwinnr(s:orgbufnr) setlocal modifiable %d let s:old_paste = &paste set paste let s:old_magic = &magic set magic " set the fileencoding to match the charset we'll be using let &l:fileencoding=s:settings.vim_encoding " According to http://www.w3.org/TR/html4/charset.html#doc-char-set, the byte " order mark is highly recommend on the web when using multibyte encodings. But, " it is not a good idea to include it on UTF-8 files. Otherwise, let Vim " determine when it is actually inserted. if s:settings.vim_encoding == 'utf-8' setlocal nobomb else setlocal bomb endif let s:lines = [] if s:settings.use_xhtml if s:settings.encoding != "" call add(s:lines, "") else call add(s:lines, "") endif let s:tag_close = ' />' else let s:tag_close = '>' endif let s:HtmlSpace = ' ' let s:LeadingSpace = ' ' let s:HtmlEndline = '' if s:settings.no_pre let s:HtmlEndline = '", \ ""]) " include encoding as close to the top as possible, but only if not already " contained in XML information (to avoid haggling over content type) if s:settings.encoding != "" && !s:settings.use_xhtml call add(s:lines, "".expand("%:p:~").""), \ ("", \ s:settings.use_xhtml ? "" : "', \ '']) " TODO: IE7 doesn't *actually* support XHTML, maybe we should remove this. " But if it's served up as tag soup, maybe the following will work, so " leave it in for now. call extend(s:lines, [ \ "", \]) else " if we aren't doing hover_unfold, use CSS 1 only call extend(s:lines, [ \ "' \]) endif else " if we aren't doing any dynamic folding, no need for any special rules call extend(s:lines, [ \ "", \]) endif endif " insert script tag; javascript is always needed for the line number " normalization for URL hashes call extend(s:lines, [ \ "", \ "" \ ]) call extend(s:lines, [""]) if !empty(s:settings.prevent_copy) call extend(s:lines, \ ["", \ "", \ "
0
", \ "
", \ "
" \ ]) else call extend(s:lines, [""]) endif if s:settings.no_pre " if we're not using CSS we use a font tag which can't have a div inside if s:settings.use_css call extend(s:lines, ["
"]) endif else call extend(s:lines, ["
"])
endif

exe s:orgwin . "wincmd w"

" caches of style data
" initialize to include line numbers if using them
if s:settings.number_lines
  let s:stylelist = { s:LINENR_ID : ".LineNr { " . s:CSS1( s:LINENR_ID ) . "}" }
else
  let s:stylelist = {}
endif
let s:diffstylelist = {
      \   s:DIFF_A_ID : ".DiffAdd { " . s:CSS1( s:DIFF_A_ID ) . "}",
      \   s:DIFF_C_ID : ".DiffChange { " . s:CSS1( s:DIFF_C_ID ) . "}",
      \   s:DIFF_D_ID : ".DiffDelete { " . s:CSS1( s:DIFF_D_ID ) . "}",
      \   s:DIFF_T_ID : ".DiffText { " . s:CSS1( s:DIFF_T_ID ) . "}"
      \ }

" set up progress bar in the status line
if !s:settings.no_progress
  " ProgressBar Indicator
  let s:progressbar={}

  " Progessbar specific functions
  func! s:ProgressBar(title, max_value, winnr)
    let pgb=copy(s:progressbar)
    let pgb.title = a:title.' '
    let pgb.max_value = a:max_value
    let pgb.winnr = a:winnr
    let pgb.cur_value = 0
    let pgb.items = { 'title'   : { 'color' : 'Statusline' },
	  \'bar'     : { 'color' : 'Statusline' , 'fillcolor' : 'DiffDelete' , 'bg' : 'Statusline' } ,
	  \'counter' : { 'color' : 'Statusline' } }
    let pgb.last_value = 0
    let pgb.needs_redraw = 0
    " Note that you must use len(split) instead of len() if you want to use 
    " unicode in title.
    "
    " Subtract 3 for spacing around the title.
    " Subtract 4 for the percentage display.
    " Subtract 2 for spacing before this.
    " Subtract 2 more for the '|' on either side of the progress bar
    let pgb.subtractedlen=len(split(pgb.title, '\zs'))+3+4+2+2
    let pgb.max_len = 0
    set laststatus=2
    return pgb
  endfun

  " Function: progressbar.calculate_ticks() {{{1
  func! s:progressbar.calculate_ticks(pb_len)
    if a:pb_len<=0
      let pb_len = 100
    else
      let pb_len = a:pb_len
    endif
    let self.progress_ticks = map(range(pb_len+1), "v:val * self.max_value / pb_len")
  endfun

  "Function: progressbar.paint()
  func! s:progressbar.paint()
    " Recalculate widths.
    let max_len = winwidth(self.winnr)
    let pb_len = 0
    " always true on first call because of initial value of self.max_len
    if max_len != self.max_len
      let self.max_len = max_len

      " Progressbar length
      let pb_len = max_len - self.subtractedlen

      call self.calculate_ticks(pb_len)

      let self.needs_redraw = 1
      let cur_value = 0
      let self.pb_len = pb_len
    else
      " start searching at the last found index to make the search for the
      " appropriate tick value normally take 0 or 1 comparisons
      let cur_value = self.last_value
      let pb_len = self.pb_len
    endif

    let cur_val_max = pb_len > 0 ? pb_len : 100

    " find the current progress bar position based on precalculated thresholds
    while cur_value < cur_val_max && self.cur_value > self.progress_ticks[cur_value]
      let cur_value += 1
    endwhile

    " update progress bar
    if self.last_value != cur_value || self.needs_redraw || self.cur_value == self.max_value
      let self.needs_redraw = 1
      let self.last_value = cur_value

      let t_color  = self.items.title.color
      let b_fcolor = self.items.bar.fillcolor
      let b_color  = self.items.bar.color
      let c_color  = self.items.counter.color

      let stl =  "%#".t_color."#%-( ".self.title." %)".
	    \"%#".b_color."#".
	    \(pb_len>0 ?
	    \	('|%#'.b_fcolor."#%-(".repeat(" ",cur_value)."%)".
	    \	 '%#'.b_color."#".repeat(" ",pb_len-cur_value)."|"):
	    \	('')).
	    \"%=%#".c_color."#%( ".printf("%3.d ",100*self.cur_value/self.max_value)."%% %)"
      call setwinvar(self.winnr, '&stl', stl)
    endif
  endfun

  func! s:progressbar.incr( ... )
    let self.cur_value += (a:0 ? a:1 : 1)
    " if we were making a general-purpose progress bar, we'd need to limit to a
    " lower limit as well, but since we always increment with a positive value
    " in this script, we only need limit the upper value
    let self.cur_value = (self.cur_value > self.max_value ? self.max_value : self.cur_value)
    call self.paint()
  endfun
  " }}}
  if s:settings.dynamic_folds
    " to process folds we make two passes through each line
    let s:pgb = s:ProgressBar("Processing folds:", line('$')*2, s:orgwin)
  endif
endif

" First do some preprocessing for dynamic folding. Do this for the entire file
" so we don't accidentally start within a closed fold or something.
let s:allfolds = []

if s:settings.dynamic_folds
  let s:lnum = 1
  let s:end = line('$')
  " save the fold text and set it to the default so we can find fold levels
  let s:foldtext_save = &foldtext
  setlocal foldtext&

  " we will set the foldcolumn in the html to the greater of the maximum fold
  " level and the current foldcolumn setting
  let s:foldcolumn = &foldcolumn

  " get all info needed to describe currently closed folds
  while s:lnum <= s:end
    if foldclosed(s:lnum) == s:lnum
      " default fold text has '+-' and then a number of dashes equal to fold
      " level, so subtract 2 from index of first non-dash after the dashes
      " in order to get the fold level of the current fold
      let s:level = match(foldtextresult(s:lnum), '+-*\zs[^-]') - 2
      " store fold info for later use
      let s:newfold = {'firstline': s:lnum, 'lastline': foldclosedend(s:lnum), 'level': s:level,'type': "closed-fold"}
      call add(s:allfolds, s:newfold)
      " open the fold so we can find any contained folds
      execute s:lnum."foldopen"
    else
      if !s:settings.no_progress
	call s:pgb.incr()
	if s:pgb.needs_redraw
	  redrawstatus
	  let s:pgb.needs_redraw = 0
	endif
      endif
      let s:lnum = s:lnum + 1
    endif
  endwhile

  " close all folds to get info for originally open folds
  silent! %foldclose!
  let s:lnum = 1

  " the originally open folds will be all folds we encounter that aren't
  " already in the list of closed folds
  while s:lnum <= s:end
    if foldclosed(s:lnum) == s:lnum
      " default fold text has '+-' and then a number of dashes equal to fold
      " level, so subtract 2 from index of first non-dash after the dashes
      " in order to get the fold level of the current fold
      let s:level = match(foldtextresult(s:lnum), '+-*\zs[^-]') - 2
      let s:newfold = {'firstline': s:lnum, 'lastline': foldclosedend(s:lnum), 'level': s:level,'type': "closed-fold"}
      " only add the fold if we don't already have it
      if empty(s:allfolds) || index(s:allfolds, s:newfold) == -1
	let s:newfold.type = "open-fold"
	call add(s:allfolds, s:newfold)
      endif
      " open the fold so we can find any contained folds
      execute s:lnum."foldopen"
    else
      if !s:settings.no_progress
	call s:pgb.incr()
	if s:pgb.needs_redraw
	  redrawstatus
	  let s:pgb.needs_redraw = 0
	endif
      endif
      let s:lnum = s:lnum + 1
    endif
  endwhile

  " sort the folds so that we only ever need to look at the first item in the
  " list of folds
  call sort(s:allfolds, "s:FoldCompare")

  let &l:foldtext = s:foldtext_save
  unlet s:foldtext_save

  " close all folds again so we can get the fold text as we go
  silent! %foldclose!

  " Go through and remove folds we don't need to (or cannot) process in the
  " current conversion range
  "
  " If a fold is removed which contains other folds, which are included, we need
  " to adjust the level of the included folds as used by the conversion logic
  " (avoiding special cases is good)
  "
  " Note any time we remove a fold, either all of the included folds are in it,
  " or none of them, because we only remove a fold if neither its start nor its
  " end are within the conversion range.
  let leveladjust = 0
  for afold in s:allfolds
    let removed = 0
    if exists("g:html_start_line") && exists("g:html_end_line")
      if afold.firstline < g:html_start_line
	if afold.lastline <= g:html_end_line && afold.lastline >= g:html_start_line
	  " if a fold starts before the range to convert but stops within the
	  " range, we need to include it. Make it start on the first converted
	  " line.
	  let afold.firstline = g:html_start_line
	else
	  " if the fold lies outside the range or the start and stop enclose
	  " the entire range, don't bother parsing it
	  call remove(s:allfolds, index(s:allfolds, afold))
	  let removed = 1
	  if afold.lastline > g:html_end_line
	    let leveladjust += 1
	  endif
	endif
      elseif afold.firstline > g:html_end_line
	" If the entire fold lies outside the range we need to remove it.
	call remove(s:allfolds, index(s:allfolds, afold))
	let removed = 1
      endif
    elseif exists("g:html_start_line")
      if afold.firstline < g:html_start_line
	" if there is no last line, but there is a first line, the end of the
	" fold will always lie within the region of interest, so keep it
	let afold.firstline = g:html_start_line
      endif
    elseif exists("g:html_end_line")
      " if there is no first line we default to the first line in the buffer so
      " the fold start will always be included if the fold itself is included.
      " If however the entire fold lies outside the range we need to remove it.
      if afold.firstline > g:html_end_line
	call remove(s:allfolds, index(s:allfolds, afold))
	let removed = 1
      endif
    endif
    if !removed
      let afold.level -= leveladjust
      if afold.level+1 > s:foldcolumn
	let s:foldcolumn = afold.level+1
      endif
    endif
  endfor

  " if we've removed folds containing the conversion range from processing,
  " getting foldtext as we go won't know to open the removed folds, so the
  " foldtext would be wrong; open them now.
  "
  " Note that only when a start and an end line is specified will a fold
  " containing the current range ever be removed.
  while leveladjust > 0
    exe g:html_start_line."foldopen"
    let leveladjust -= 1
  endwhile
endif

" Now loop over all lines in the original text to convert to html.
" Use html_start_line and html_end_line if they are set.
if exists("g:html_start_line")
  let s:lnum = html_start_line
  if s:lnum < 1 || s:lnum > line("$")
    let s:lnum = 1
  endif
else
  let s:lnum = 1
endif
if exists("g:html_end_line")
  let s:end = html_end_line
  if s:end < s:lnum || s:end > line("$")
    let s:end = line("$")
  endif
else
  let s:end = line("$")
endif

" stack to keep track of all the folds containing the current line
let s:foldstack = []

if !s:settings.no_progress
  let s:pgb = s:ProgressBar("Processing lines:", s:end - s:lnum + 1, s:orgwin)
endif

if s:settings.number_lines
  let s:margin = strlen(s:end) + 1
else
  let s:margin = 0
endif

if has('folding') && !s:settings.ignore_folding
  let s:foldfillchar = &fillchars[matchend(&fillchars, 'fold:')]
  if s:foldfillchar == ''
    let s:foldfillchar = '-'
  endif
endif
let s:difffillchar = &fillchars[matchend(&fillchars, 'diff:')]
if s:difffillchar == ''
  let s:difffillchar = '-'
endif

let s:foldId = 0

if !s:settings.expand_tabs
  " If keeping tabs, add them to printable characters so we keep them when
  " formatting text (strtrans() doesn't replace printable chars)
  let s:old_isprint = &isprint
  setlocal isprint+=9
endif

while s:lnum <= s:end

  " If there are filler lines for diff mode, show these above the line.
  let s:filler = diff_filler(s:lnum)
  if s:filler > 0
    let s:n = s:filler
    while s:n > 0
      let s:new = repeat(s:difffillchar, 3)

      if s:n > 2 && s:n < s:filler && !s:settings.whole_filler
	let s:new = s:new . " " . s:filler . " inserted lines "
	let s:n = 2
      endif

      if !s:settings.no_pre
	" HTML line wrapping is off--go ahead and fill to the margin
	" TODO: what about when CSS wrapping is turned on?
	let s:new = s:new . repeat(s:difffillchar, &columns - strlen(s:new) - s:margin)
      else
	let s:new = s:new . repeat(s:difffillchar, 3)
      endif

      let s:new = s:HtmlFormat_d(s:new, s:DIFF_D_ID, 0)
      if s:settings.number_lines
	" Indent if line numbering is on. Indent gets style of line number
	" column.
	let s:new = s:HtmlFormat_n(repeat(' ', s:margin), s:LINENR_ID, 0, 0) . s:new
      endif
      if s:settings.dynamic_folds && !s:settings.no_foldcolumn && s:foldcolumn > 0
	" Indent for foldcolumn if there is one. Assume it's empty, there should
	" not be a fold for deleted lines in diff mode.
	let s:new = s:FoldColumn_fill() . s:new
      endif
      call add(s:lines, s:new.s:HtmlEndline)

      let s:n = s:n - 1
    endwhile
    unlet s:n
  endif
  unlet s:filler

  " Start the line with the line number.
  if s:settings.number_lines
    let s:numcol = repeat(' ', s:margin - 1 - strlen(s:lnum)) . s:lnum . ' '
  endif

  let s:new = ""

  if has('folding') && !s:settings.ignore_folding && foldclosed(s:lnum) > -1 && !s:settings.dynamic_folds
    "
    " This is the beginning of a folded block (with no dynamic folding)
    let s:new = foldtextresult(s:lnum)
    if !s:settings.no_pre
      " HTML line wrapping is off--go ahead and fill to the margin
      let s:new = s:new . repeat(s:foldfillchar, &columns - strlen(s:new))
    endif

    " put numcol in a separate group for sake of unselectable text
    let s:new = (s:settings.number_lines ? s:HtmlFormat_n(s:numcol, s:FOLDED_ID, 0, s:lnum): "") . s:HtmlFormat_t(s:new, s:FOLDED_ID, 0)

    " Skip to the end of the fold
    let s:new_lnum = foldclosedend(s:lnum)

    if !s:settings.no_progress
      call s:pgb.incr(s:new_lnum - s:lnum)
    endif

    let s:lnum = s:new_lnum

  else
    "
    " A line that is not folded, or doing dynamic folding.
    "
    let s:line = getline(s:lnum)
    let s:len = strlen(s:line)

    if s:settings.dynamic_folds
      " First insert a closing for any open folds that end on this line
      while !empty(s:foldstack) && get(s:foldstack,0).lastline == s:lnum-1
	let s:new = s:new.""
	call remove(s:foldstack, 0)
      endwhile

      " Now insert an opening for any new folds that start on this line
      let s:firstfold = 1
      while !empty(s:allfolds) && get(s:allfolds,0).firstline == s:lnum
	let s:foldId = s:foldId + 1
	let s:new .= ""


	" Unless disabled, add a fold column for the opening line of a fold.
	"
	" Note that dynamic folds require using css so we just use css to take
	" care of the leading spaces rather than using   in the case of
	" html_no_pre to make it easier
	if !s:settings.no_foldcolumn
	  " add fold column that can open the new fold
	  if s:allfolds[0].level > 1 && s:firstfold
	    let s:new = s:new . s:FoldColumn_build('|', s:allfolds[0].level - 1, 0, "",
		  \ 'toggle-open FoldColumn','javascript:toggleFold("fold'.s:foldstack[0].id.s:settings.id_suffix.'");')
	  endif
	  " add the filler spaces separately from the '+' char so that it can be
	  " shown/hidden separately during a hover unfold
	  let s:new = s:new . s:FoldColumn_build("+", 1, 0, "",
		\ 'toggle-open FoldColumn', 'javascript:toggleFold("fold'.s:foldId.s:settings.id_suffix.'");')
	  " If this is not the last fold we're opening on this line, we need
	  " to keep the filler spaces hidden if the fold is opened by mouse
	  " hover. If it is the last fold to open in the line, we shouldn't hide
	  " them, so don't apply the toggle-filler class.
	  let s:new = s:new . s:FoldColumn_build(" ", 1, s:foldcolumn - s:allfolds[0].level - 1, "",
		\ 'toggle-open FoldColumn'. (get(s:allfolds, 1, {'firstline': 0}).firstline == s:lnum ?" toggle-filler" :""),
		\ 'javascript:toggleFold("fold'.s:foldId.s:settings.id_suffix.'");')

	  " add fold column that can close the new fold
	  " only add extra blank space if we aren't opening another fold on the
	  " same line
	  if get(s:allfolds, 1, {'firstline': 0}).firstline != s:lnum
	    let s:extra_space = s:foldcolumn - s:allfolds[0].level
	  else
	    let s:extra_space = 0
	  endif
	  if s:firstfold
	    " the first fold in a line has '|' characters from folds opened in
	    " previous lines, before the '-' for this fold
	    let s:new .= s:FoldColumn_build('|', s:allfolds[0].level - 1, s:extra_space, '-',
		  \ 'toggle-closed FoldColumn', 'javascript:toggleFold("fold'.s:foldId.s:settings.id_suffix.'");')
	  else
	    " any subsequent folds in the line only add a single '-'
	    let s:new = s:new . s:FoldColumn_build("-", 1, s:extra_space, "",
		  \ 'toggle-closed FoldColumn', 'javascript:toggleFold("fold'.s:foldId.s:settings.id_suffix.'");')
	  endif
	  let s:firstfold = 0
	endif

	" Add fold text, moving the span ending to the next line so collapsing
	" of folds works correctly.
	" Put numcol in a separate group for sake of unselectable text.
	let s:new = s:new . (s:settings.number_lines ? s:HtmlFormat_n(s:numcol, s:FOLDED_ID, 0, 0) : "") . substitute(s:HtmlFormat_t(foldtextresult(s:lnum), s:FOLDED_ID, 0), '', s:HtmlEndline.'\n\0', '')
	let s:new = s:new . ""

	" open the fold now that we have the fold text to allow retrieval of
	" fold text for subsequent folds
	execute s:lnum."foldopen"
	call insert(s:foldstack, remove(s:allfolds,0))
	let s:foldstack[0].id = s:foldId
      endwhile

      " Unless disabled, add a fold column for other lines.
      "
      " Note that dynamic folds require using css so we just use css to take
      " care of the leading spaces rather than using   in the case of
      " html_no_pre to make it easier
      if !s:settings.no_foldcolumn
	if empty(s:foldstack)
	  " add the empty foldcolumn for unfolded lines if there is a fold
	  " column at all
	  if s:foldcolumn > 0
	    let s:new = s:new . s:FoldColumn_fill()
	  endif
	else
	  " add the fold column for folds not on the opening line
	  if get(s:foldstack, 0).firstline < s:lnum
	    let s:new = s:new . s:FoldColumn_build('|', s:foldstack[0].level, s:foldcolumn - s:foldstack[0].level, "",
		  \ 'FoldColumn', 'javascript:toggleFold("fold'.s:foldstack[0].id.s:settings.id_suffix.'");')
	  endif
	endif
      endif
    endif

    " Now continue with the unfolded line text
    if s:settings.number_lines
      let s:new = s:new . s:HtmlFormat_n(s:numcol, s:LINENR_ID, 0, s:lnum)
    elseif s:settings.line_ids
      let s:new = s:new . s:HtmlFormat_n("", s:LINENR_ID, 0, s:lnum)
    endif

    " Get the diff attribute, if any.
    let s:diffattr = diff_hlID(s:lnum, 1)

    " initialize conceal info to act like not concealed, just in case
    let s:concealinfo = [0, '']

    " Loop over each character in the line
    let s:col = 1

    " most of the time we won't use the diff_id, initialize to zero
    let s:diff_id = 0

    while s:col <= s:len || (s:col == 1 && s:diffattr)
      let s:startcol = s:col " The start column for processing text
      if !s:settings.ignore_conceal && has('conceal')
	let s:concealinfo = synconcealed(s:lnum, s:col)
      endif
      if !s:settings.ignore_conceal && s:concealinfo[0]
	let s:col = s:col + 1
	" Speed loop (it's small - that's the trick)
	" Go along till we find a change in the match sequence number (ending
	" the specific concealed region) or until there are no more concealed
	" characters.
	while s:col <= s:len && s:concealinfo == synconcealed(s:lnum, s:col) | let s:col = s:col + 1 | endwhile
      elseif s:diffattr
	let s:diff_id = diff_hlID(s:lnum, s:col)
	let s:id = synID(s:lnum, s:col, 1)
	let s:col = s:col + 1
	" Speed loop (it's small - that's the trick)
	" Go along till we find a change in hlID
	while s:col <= s:len && s:id == synID(s:lnum, s:col, 1)
	      \   && s:diff_id == diff_hlID(s:lnum, s:col) |
	      \     let s:col = s:col + 1 |
	      \ endwhile
	if s:len < &columns && !s:settings.no_pre
	  " Add spaces at the end of the raw text line to extend the changed
	  " line to the full width.
	  let s:line = s:line . repeat(' ', &columns - virtcol([s:lnum, s:len]) - s:margin)
	  let s:len = &columns
	endif
      else
	let s:id = synID(s:lnum, s:col, 1)
	let s:col = s:col + 1
	" Speed loop (it's small - that's the trick)
	" Go along till we find a change in synID
	while s:col <= s:len && s:id == synID(s:lnum, s:col, 1) | let s:col = s:col + 1 | endwhile
      endif

      if s:settings.ignore_conceal || !s:concealinfo[0]
	" Expand tabs if needed
	let s:expandedtab = strpart(s:line, s:startcol - 1, s:col - s:startcol)
	if s:settings.expand_tabs
	  let s:offset = 0
	  let s:idx = stridx(s:expandedtab, "\t")
	  while s:idx >= 0
	    if has("multi_byte_encoding")
	      if s:startcol + s:idx == 1
		let s:i = &ts
	      else
		if s:idx == 0
		  let s:prevc = matchstr(s:line, '.\%' . (s:startcol + s:idx + s:offset) . 'c')
		else
		  let s:prevc = matchstr(s:expandedtab, '.\%' . (s:idx + 1) . 'c')
		endif
		let s:vcol = virtcol([s:lnum, s:startcol + s:idx + s:offset - len(s:prevc)])
		let s:i = &ts - (s:vcol % &ts)
	      endif
	      let s:offset -= s:i - 1
	    else
	      let s:i = &ts - ((s:idx + s:startcol - 1) % &ts)
	    endif
	    let s:expandedtab = substitute(s:expandedtab, '\t', repeat(' ', s:i), '')
	    let s:idx = stridx(s:expandedtab, "\t")
	  endwhile
	end

	" get the highlight group name to use
	let s:id = synIDtrans(s:id)
      else
	" use Conceal highlighting for concealed text
	let s:id = s:CONCEAL_ID
	let s:expandedtab = s:concealinfo[1]
      endif

      " Output the text with the same synID, with class set to the highlight ID
      " name, unless it has been concealed completely.
      if strlen(s:expandedtab) > 0
	let s:new = s:new . s:HtmlFormat(s:expandedtab,  s:id, s:diff_id, "", 0)
      endif
    endwhile
  endif

  call extend(s:lines, split(s:new.s:HtmlEndline, '\n', 1))
  if !s:settings.no_progress && s:pgb.needs_redraw
    redrawstatus
    let s:pgb.needs_redraw = 0
  endif
  let s:lnum = s:lnum + 1

  if !s:settings.no_progress
    call s:pgb.incr()
  endif
endwhile

if s:settings.dynamic_folds
  " finish off any open folds
  while !empty(s:foldstack)
    let s:lines[-1].=""
    call remove(s:foldstack, 0)
  endwhile

  " add fold column to the style list if not already there
  let s:id = s:FOLD_C_ID
  if !has_key(s:stylelist, s:id)
    let s:stylelist[s:id] = '.FoldColumn { ' . s:CSS1(s:id) . '}'
  endif
endif

if s:settings.no_pre
  if !s:settings.use_css
    " Close off the font tag that encapsulates the whole 
    call extend(s:lines, ["", "", ""])
  else
    call extend(s:lines, ["
", "", ""]) endif else call extend(s:lines, ["", "", ""]) endif exe s:newwin . "wincmd w" call setline(1, s:lines) unlet s:lines " Mangle modelines so Vim doesn't try to use HTML text as a modeline if editing " this file in the future; need to do this after generating all the text in case " the modeline text has different highlight groups which all turn out to be " stripped from the final output. %s!\v(%(^|\s+)%([Vv]i%(m%([<=>]?\d+)?)?|ex)):!\1\:!ge " The generated HTML is admittedly ugly and takes a LONG time to fold. " Make sure the user doesn't do syntax folding when loading a generated file, " using a modeline. call append(line('$'), "") " Now, when we finally know which, we define the colors and styles if s:settings.use_css 1;/