diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2017-09-28 22:18:09 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2017-09-28 22:18:09 +0200 |
commit | 27903c5b8656c796564ef073c1ebe77a2f0154e1 (patch) | |
tree | 2b0a3a14494d7976fb79a7517706e25d2a95d080 /syntax/r.vim | |
parent | d5e38fa97bc50a93a66473d6cd7072fbcbadda57 (diff) | |
download | vim-polyglot-3.0.0.tar.gz vim-polyglot-3.0.0.zip |
Revert inlining basic language packv3.0.0
Diffstat (limited to 'syntax/r.vim')
-rw-r--r-- | syntax/r.vim | 378 |
1 files changed, 0 insertions, 378 deletions
diff --git a/syntax/r.vim b/syntax/r.vim deleted file mode 100644 index 3970d065..00000000 --- a/syntax/r.vim +++ /dev/null @@ -1,378 +0,0 @@ -if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1 - -" Vim syntax file -" Language: R (GNU S) -" Maintainer: Jakson Aquino <jalvesaq@gmail.com> -" Former Maintainers: Vaidotas Zemlys <zemlys@gmail.com> -" Tom Payne <tom@tompayne.org> -" Contributor: Johannes Ranke <jranke@uni-bremen.de> -" 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 - -endif |