annotate runtime/syntax/r.vim @ 13756:c38f29387245 v8.0.1750

patch 8.0.1750: crash when clearing loccation list in autocommand commit https://github.com/vim/vim/commit/3b9474b4ad4d85b5396f7f641b436f193dc9d486 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Apr 23 21:29:48 2018 +0200 patch 8.0.1750: crash when clearing loccation list in autocommand Problem: Crash when clearing loccation list in autocommand. Solution: Check if "qi" equals "ql_info". (Yegappan Lakshmanan)
author Christian Brabandt <cb@256bit.org>
date Mon, 23 Apr 2018 21:30:06 +0200
parents 4aae8146c21f
children 0ecb909e3249
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
2 " Language: R (GNU S)
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
3 " Maintainer: Jakson Aquino <jalvesaq@gmail.com>
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
4 " Former Maintainers: Vaidotas Zemlys <zemlys@gmail.com>
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
5 " Tom Payne <tom@tompayne.org>
7315
444efa5f5015 commit https://github.com/vim/vim/commit/2c5e8e80eacf491d4f266983f534a77776c7ae83
Christian Brabandt <cb@256bit.org>
parents: 6476
diff changeset
6 " Contributor: Johannes Ranke <jranke@uni-bremen.de>
444efa5f5015 commit https://github.com/vim/vim/commit/2c5e8e80eacf491d4f266983f534a77776c7ae83
Christian Brabandt <cb@256bit.org>
parents: 6476
diff changeset
7 " Homepage: https://github.com/jalvesaq/R-Vim-runtime
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
8 " Last Change: Sat Apr 08, 2017 07:01PM
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
9 " Filenames: *.R *.r *.Rhistory *.Rt
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
10 "
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
11 " NOTE: The highlighting of R functions might be defined in
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
12 " runtime files created by a filetype plugin, if installed.
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
13 "
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
14 " CONFIGURATION:
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
15 " Syntax folding can be turned on by
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
16 "
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
17 " let r_syntax_folding = 1
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
18 "
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
19 " ROxygen highlighting can be turned off by
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
20 "
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
21 " let r_syntax_hl_roxygen = 0
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
22 "
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
23 " Some lines of code were borrowed from Zhuojun Chen.
625
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 7
diff changeset
24
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
25 if exists("b:current_syntax")
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
29 if has("patch-7.4.1142")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
30 syn iskeyword @,48-57,_,.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
31 else
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
32 setlocal iskeyword=@,48-57,_,.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
33 endif
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
34
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
35 " The variables g:r_hl_roxygen and g:r_syn_minlines were renamed on April 8, 2017.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
36 if exists("g:r_hl_roxygen")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
37 let g:r_syntax_hl_roxygen = g:r_hl_roxygen
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
38 endif
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
39 if exists("g:r_syn_minlines")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
40 let g:r_syntax_minlines = g:r_syn_minlines
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
41 endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
43 if exists("g:r_syntax_folding") && g:r_syntax_folding
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
44 setlocal foldmethod=syntax
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
45 endif
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
46 if !exists("g:r_syntax_hl_roxygen")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
47 let g:r_syntax_hl_roxygen = 1
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
48 endif
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
49
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 syn case match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 " Comment
6051
0efec12f52ac Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4780
diff changeset
53 syn match rCommentTodo contained "\(BUG\|FIXME\|NOTE\|TODO\):"
7315
444efa5f5015 commit https://github.com/vim/vim/commit/2c5e8e80eacf491d4f266983f534a77776c7ae83
Christian Brabandt <cb@256bit.org>
parents: 6476
diff changeset
54 syn match rComment contains=@Spell,rCommentTodo,rOBlock "#.*"
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
55
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
56 " Roxygen
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
57 if g:r_syntax_hl_roxygen
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
58 " A roxygen block can start at the beginning of a file (first version) and
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
59 " after a blank line (second version). It ends when a line that does not
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
60 " contain a roxygen comment. In the following comments, any line containing
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
61 " a roxygen comment marker (one or two hash signs # followed by a single
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
62 " quote ' and preceded only by whitespace) is called a roxygen line. A
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
63 " roxygen line containing only a roxygen comment marker, optionally followed
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
64 " by whitespace is called an empty roxygen line.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
65
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
66 " First we match all roxygen blocks as containing only a title. In case an
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
67 " empty roxygen line ending the title or a tag is found, this will be
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
68 " overriden later by the definitions of rOBlock.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
69 syn match rOTitleBlock "\%^\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
70 syn match rOTitleBlock "^\s*\n\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
71
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
72 " When a roxygen block has a title and additional content, the title
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
73 " consists of one or more roxygen lines (as little as possible are matched),
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
74 " followed either by an empty roxygen line
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
75 syn region rOBlock start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
76 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
7315
444efa5f5015 commit https://github.com/vim/vim/commit/2c5e8e80eacf491d4f266983f534a77776c7ae83
Christian Brabandt <cb@256bit.org>
parents: 6476
diff changeset
77
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
78 " or by a roxygen tag (we match everything starting with @ but not @@ which is used as escape sequence for a literal @).
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
79 syn region rOBlock start="\%^\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
80 syn region rOBlock start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
81
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
82 " If a block contains an @rdname, @describeIn tag, it may have paragraph breaks, but does not have a title
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
83 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
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
84 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
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
85 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
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
86 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
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
87
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
88 " A title as part of a block is always at the beginning of the block, i.e.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
89 " either at the start of a file or after a completely empty line.
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
90 syn match rOTitle "\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
91 syn match rOTitle "^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
92 syn match rOTitleTag contained "@title"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
93
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
94 syn match rOCommentKey "#\{1,2}'" contained
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
95 syn region rOExamples start="^#\{1,2}' @examples.*"rs=e+1,hs=e+1 end="^\(#\{1,2}' @.*\)\@=" end="^\(#\{1,2}'\)\@!" contained contains=rOTag fold
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
96
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
97 " rOTag list generated from the lists in
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
98 " https://github.com/klutometis/roxygen/R/rd.R and
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
99 " https://github.com/klutometis/roxygen/R/namespace.R
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
100 " using s/^ \([A-Za-z0-9]*\) = .*/ syn match rOTag contained "@\1"/
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
101 " Plus we need the @include tag
7315
444efa5f5015 commit https://github.com/vim/vim/commit/2c5e8e80eacf491d4f266983f534a77776c7ae83
Christian Brabandt <cb@256bit.org>
parents: 6476
diff changeset
102
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
103 " rd.R
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
104 syn match rOTag contained "@aliases"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
105 syn match rOTag contained "@author"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
106 syn match rOTag contained "@backref"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
107 syn match rOTag contained "@concept"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
108 syn match rOTag contained "@describeIn"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
109 syn match rOTag contained "@description"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
110 syn match rOTag contained "@details"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
111 syn match rOTag contained "@docType"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
112 syn match rOTag contained "@encoding"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
113 syn match rOTag contained "@evalRd"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
114 syn match rOTag contained "@example"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
115 syn match rOTag contained "@examples"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
116 syn match rOTag contained "@family"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
117 syn match rOTag contained "@field"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
118 syn match rOTag contained "@format"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
119 syn match rOTag contained "@inherit"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
120 syn match rOTag contained "@inheritParams"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
121 syn match rOTag contained "@inheritDotParams"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
122 syn match rOTag contained "@inheritSection"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
123 syn match rOTag contained "@keywords"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
124 syn match rOTag contained "@method"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
125 syn match rOTag contained "@name"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
126 syn match rOTag contained "@md"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
127 syn match rOTag contained "@noMd"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
128 syn match rOTag contained "@noRd"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
129 syn match rOTag contained "@note"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
130 syn match rOTag contained "@param"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
131 syn match rOTag contained "@rdname"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
132 syn match rOTag contained "@rawRd"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
133 syn match rOTag contained "@references"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
134 syn match rOTag contained "@return"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
135 syn match rOTag contained "@section"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
136 syn match rOTag contained "@seealso"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
137 syn match rOTag contained "@slot"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
138 syn match rOTag contained "@source"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
139 syn match rOTag contained "@template"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
140 syn match rOTag contained "@templateVar"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
141 syn match rOTag contained "@title"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
142 syn match rOTag contained "@usage"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
143 " namespace.R
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
144 syn match rOTag contained "@export"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
145 syn match rOTag contained "@exportClass"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
146 syn match rOTag contained "@exportMethod"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
147 syn match rOTag contained "@exportPattern"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
148 syn match rOTag contained "@import"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
149 syn match rOTag contained "@importClassesFrom"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
150 syn match rOTag contained "@importFrom"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
151 syn match rOTag contained "@importMethodsFrom"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
152 syn match rOTag contained "@rawNamespace"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
153 syn match rOTag contained "@S3method"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
154 syn match rOTag contained "@useDynLib"
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
155 " other
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
156 syn match rOTag contained "@include"
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
157 endif
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
158
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
160 if &filetype == "rhelp"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
161 " string enclosed in double quotes
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
162 syn region rString contains=rSpecial,@Spell start=/"/ skip=/\\\\\|\\"/ end=/"/
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
163 " string enclosed in single quotes
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
164 syn region rString contains=rSpecial,@Spell start=/'/ skip=/\\\\\|\\'/ end=/'/
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
165 else
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
166 " string enclosed in double quotes
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
167 syn region rString contains=rSpecial,rStrError,@Spell start=/"/ skip=/\\\\\|\\"/ end=/"/
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
168 " string enclosed in single quotes
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
169 syn region rString contains=rSpecial,rStrError,@Spell start=/'/ skip=/\\\\\|\\'/ end=/'/
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
170 endif
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
171
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
172 syn match rStrError display contained "\\."
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
173
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
174
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
175 " New line, carriage return, tab, backspace, bell, feed, vertical tab, backslash
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
176 syn match rSpecial display contained "\\\(n\|r\|t\|b\|a\|f\|v\|'\|\"\)\|\\\\"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
178 " Hexadecimal and Octal digits
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
179 syn match rSpecial display contained "\\\(x\x\{1,2}\|[0-8]\{1,3}\)"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
180
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
181 " Unicode characters
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
182 syn match rSpecial display contained "\\u\x\{1,4}"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
183 syn match rSpecial display contained "\\U\x\{1,8}"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
184 syn match rSpecial display contained "\\u{\x\{1,4}}"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
185 syn match rSpecial display contained "\\U{\x\{1,8}}"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
186
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 " Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 syn keyword rStatement break next return
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189 syn keyword rConditional if else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 syn keyword rRepeat for in repeat while
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
192 " Constant (not really)
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
193 syn keyword rConstant T F LETTERS letters month.abb month.name pi
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
194 syn keyword rConstant R.version.string
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
195
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
196 syn keyword rNumber NA_integer_ NA_real_ NA_complex_ NA_character_
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
197
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
198 " Constants
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 syn keyword rConstant NULL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 syn keyword rBoolean FALSE TRUE
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
201 syn keyword rNumber NA Inf NaN
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
202
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
203 " integer
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
204 syn match rInteger "\<\d\+L"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
205 syn match rInteger "\<0x\([0-9]\|[a-f]\|[A-F]\)\+L"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
206 syn match rInteger "\<\d\+[Ee]+\=\d\+L"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
207
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
208 " number with no fractional part or exponent
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
209 syn match rNumber "\<\d\+\>"
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
210 " hexadecimal number
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
211 syn match rNumber "\<0x\([0-9]\|[a-f]\|[A-F]\)\+"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
212
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
213 " floating point number with integer and fractional parts and optional exponent
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
214 syn match rFloat "\<\d\+\.\d*\([Ee][-+]\=\d\+\)\="
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
215 " floating point number with no integer part and optional exponent
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
216 syn match rFloat "\<\.\d\+\([Ee][-+]\=\d\+\)\="
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
217 " floating point number with no fractional part and optional exponent
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
218 syn match rFloat "\<\d\+[Ee][-+]\=\d\+"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
219
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
220 " complex number
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
221 syn match rComplex "\<\d\+i"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
222 syn match rComplex "\<\d\++\d\+i"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
223 syn match rComplex "\<0x\([0-9]\|[a-f]\|[A-F]\)\+i"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
224 syn match rComplex "\<\d\+\.\d*\([Ee][-+]\=\d\+\)\=i"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
225 syn match rComplex "\<\.\d\+\([Ee][-+]\=\d\+\)\=i"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
226 syn match rComplex "\<\d\+[Ee][-+]\=\d\+i"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
227
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
228 syn match rAssign '='
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
229 syn match rOperator "&"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
230 syn match rOperator '-'
4502
605c9ce57ec3 Updated runtime files, language files and translations.
Bram Moolenaar <bram@vim.org>
parents: 2725
diff changeset
231 syn match rOperator '\*'
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
232 syn match rOperator '+'
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
233 if &filetype != "rmd" && &filetype != "rrst"
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
234 syn match rOperator "[|!<>^~/:]"
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
235 else
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
236 syn match rOperator "[|!<>^~`/:]"
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
237 endif
6051
0efec12f52ac Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4780
diff changeset
238 syn match rOperator "%\{2}\|%\S\{-}%"
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
239 syn match rOperator '\([!><]\)\@<=='
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
240 syn match rOperator '=='
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
241 syn match rOpError '\*\{3}'
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
242 syn match rOpError '//'
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
243 syn match rOpError '&&&'
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
244 syn match rOpError '|||'
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
245 syn match rOpError '<<'
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
246 syn match rOpError '>>'
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
247
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
248 syn match rAssign "<\{1,2}-"
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
249 syn match rAssign "->\{1,2}"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
250
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
251 " Special
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
252 syn match rDelimiter "[,;:]"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
253
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
254 " Error
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
255 if exists("g:r_syntax_folding")
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
256 syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError fold
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
257 syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError fold
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
258 syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError fold
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
259 else
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
260 syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
261 syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
262 syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
263 endif
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
264
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
265 syn match rError "[)\]}]"
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
266 syn match rBraceError "[)}]" contained
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
267 syn match rCurlyError "[)\]]" contained
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
268 syn match rParenError "[\]}]" contained
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
269
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
270 " Use Nvim-R to highlight functions dynamically if it is installed
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
271 if !exists("g:r_syntax_fun_pattern")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
272 let s:ff = split(substitute(globpath(&rtp, "R/functions.vim"), "functions.vim", "", "g"), "\n")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
273 if len(s:ff) > 0
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
274 let g:r_syntax_fun_pattern = 0
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
275 else
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
276 let g:r_syntax_fun_pattern = 1
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
277 endif
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
278 endif
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
279
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
280 " Only use Nvim-R to highlight functions if they should not be highlighted
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
281 " according to a generic pattern
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
282 if g:r_syntax_fun_pattern == 1
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
283 syn match rFunction '[0-9a-zA-Z_\.]\+\s*\ze('
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
284 else
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
285 if !exists("g:R_hi_fun")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
286 let g:R_hi_fun = 1
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
287 endif
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
288 if g:R_hi_fun
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
289 " Nvim-R:
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
290 runtime R/functions.vim
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
291 endif
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
292 endif
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
293
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
294 syn match rDollar display contained "\$"
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
295 syn match rDollar display contained "@"
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
296
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
297 " List elements will not be highlighted as functions:
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
298 syn match rLstElmt "\$[a-zA-Z0-9\\._]*" contains=rDollar
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
299 syn match rLstElmt "@[a-zA-Z0-9\\._]*" contains=rDollar
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
300
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
301 " Functions that may add new objects
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
302 syn keyword rPreProc library require attach detach source
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
303
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
304 if &filetype == "rhelp"
6051
0efec12f52ac Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4780
diff changeset
305 syn match rHelpIdent '\\method'
0efec12f52ac Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4780
diff changeset
306 syn match rHelpIdent '\\S4method'
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
307 endif
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
308
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
309 " Type
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
310 syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
311
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
312 " Name of object with spaces
4780
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
313 if &filetype != "rmd" && &filetype != "rrst"
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
314 syn region rNameWSpace start="`" end="`"
2b11ac90d9e9 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4502
diff changeset
315 endif
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
316
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
317 if &filetype == "rhelp"
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
318 syn match rhPreProc "^#ifdef.*"
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
319 syn match rhPreProc "^#endif.*"
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
320 syn match rhSection "\\dontrun\>"
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
321 endif
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
322
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
323 if exists("r_syntax_minlines")
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
324 exe "syn sync minlines=" . r_syntax_minlines
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
325 else
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
326 syn sync minlines=40
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
327 endif
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
328
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
329 " Define the default highlighting.
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
330 hi def link rAssign Statement
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
331 hi def link rBoolean Boolean
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
332 hi def link rBraceError Error
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
333 hi def link rComment Comment
6051
0efec12f52ac Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 4780
diff changeset
334 hi def link rCommentTodo Todo
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
335 hi def link rComplex Number
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
336 hi def link rConditional Conditional
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
337 hi def link rConstant Constant
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
338 hi def link rCurlyError Error
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
339 hi def link rDelimiter Delimiter
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
340 hi def link rDollar SpecialChar
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
341 hi def link rError Error
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
342 hi def link rFloat Float
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
343 hi def link rFunction Function
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
344 hi def link rHelpIdent Identifier
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
345 hi def link rhPreProc PreProc
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
346 hi def link rhSection PreCondit
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
347 hi def link rInteger Number
6476
11d78e58a487 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 6051
diff changeset
348 hi def link rLstElmt Normal
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
349 hi def link rNameWSpace Normal
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
350 hi def link rNumber Number
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
351 hi def link rOperator Operator
2725
6f63330ec225 Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 2608
diff changeset
352 hi def link rOpError Error
2608
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
353 hi def link rParenError Error
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
354 hi def link rPreProc PreProc
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
355 hi def link rRepeat Repeat
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
356 hi def link rSpecial SpecialChar
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
357 hi def link rStatement Statement
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
358 hi def link rString String
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
359 hi def link rStrError Error
7d8af31066c8 Updated runtime files and translations.
Bram Moolenaar <bram@vim.org>
parents: 856
diff changeset
360 hi def link rType Type
11347
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
361 if g:r_syntax_hl_roxygen
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
362 hi def link rOTitleTag Operator
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
363 hi def link rOTag Operator
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
364 hi def link rOTitleBlock Title
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
365 hi def link rOBlock Comment
4aae8146c21f Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 9975
diff changeset
366 hi def link rOBlockNoTitle Comment
8497
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
367 hi def link rOTitle Title
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
368 hi def link rOCommentKey Comment
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
369 hi def link rOExamples SpecialComment
da01d5da2cfa commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents: 7315
diff changeset
370 endif
7315
444efa5f5015 commit https://github.com/vim/vim/commit/2c5e8e80eacf491d4f266983f534a77776c7ae83
Christian Brabandt <cb@256bit.org>
parents: 6476
diff changeset
371
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
372 let b:current_syntax="r"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
373
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
374 " vim: ts=8 sw=2