annotate runtime/syntax/rhelp.vim @ 0:76efa0be13f1

Initial revision
author atsuki
date Sat, 10 Nov 2007 15:07:22 +0900
parents
children 6a13985590e6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
1 " Vim syntax file
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
2 " Language: R Help File
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
3 " Maintainer: Johannes Ranke <jranke@uni-bremen.de>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
4 " Last Change: 2006 Apr 24
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
5 " Version: 0.7
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
6 " SVN: $Id$
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
7 " Remarks: - Now includes R syntax highlighting in the appropriate
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
8 " sections if an r.vim file is in the same directory or in the
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
9 " default debian location.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
10 " - There is no Latex markup in equations
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
11
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
12 " Version Clears: {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
13 " For version 5.x: Clear all syntax items
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
14 " For version 6.x and 7.x: Quit when a syntax file was already loaded
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
15 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
16 syntax clear
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
17 elseif exists("b:current_syntax")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
18 finish
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
19 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
20
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
21 syn case match
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
22
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
23 " R help identifiers {{{
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
24 syn region rhelpIdentifier matchgroup=rhelpSection start="\\name{" end="}"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
25 syn region rhelpIdentifier matchgroup=rhelpSection start="\\alias{" end="}"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
26 syn region rhelpIdentifier matchgroup=rhelpSection start="\\pkg{" end="}"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
27 syn region rhelpIdentifier matchgroup=rhelpSection start="\\item{" end="}" contained contains=rhelpDots
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
28 syn region rhelpIdentifier matchgroup=rhelpSection start="\\method{" end=/}/ contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
29
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
30 " Highlighting of R code using an existing r.vim syntax file if available {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
31 syn include @R syntax/r.vim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
32 syn match rhelpDots "\\dots" containedin=@R
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
33 syn region rhelpRcode matchgroup=Delimiter start="\\examples{" matchgroup=Delimiter transparent end=/}/ contains=@R,rhelpSection
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
34 syn region rhelpRcode matchgroup=Delimiter start="\\usage{" matchgroup=Delimiter transparent end=/}/ contains=@R,rhelpIdentifier,rhelpS4method
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
35 syn region rhelpRcode matchgroup=Delimiter start="\\synopsis{" matchgroup=Delimiter transparent end=/}/ contains=@R
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
36 syn region rhelpRcode matchgroup=Delimiter start="\\special{" matchgroup=Delimiter transparent end=/}/ contains=@R contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
37 syn region rhelpRcode matchgroup=Delimiter start="\\code{" matchgroup=Delimiter transparent end=/}/ contains=@R,rhelpLink contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
38 syn region rhelpS4method matchgroup=Delimiter start="\\S4method{.*}(" matchgroup=Delimiter transparent end=/)/ contains=@R,rhelpDots contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
39
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
40 " Strings {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
41 syn region rhelpString start=/"/ end=/"/
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
42
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
43 " Special characters ( \$ \& \% \# \{ \} \_) {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
44 syn match rhelpSpecialChar "\\[$&%#{}_]"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
45
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
46 " Special Delimiters {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
47 syn match rhelpDelimiter "\\cr"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
48 syn match rhelpDelimiter "\\tab "
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
49
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
50 " Keywords {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
51 syn match rhelpKeyword "\\R"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
52 syn match rhelpKeyword "\\ldots"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
53 syn match rhelpKeyword "--"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
54 syn match rhelpKeyword "---"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
55 syn match rhelpKeyword "<"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
56 syn match rhelpKeyword ">"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
57
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
58 " Links {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
59 syn region rhelpLink matchgroup=rhelpSection start="\\link{" end="}" contained keepend
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
60 syn region rhelpLink matchgroup=rhelpSection start="\\link\[.*\]{" end="}" contained keepend
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
61 syn region rhelpLink matchgroup=rhelpSection start="\\linkS4class{" end="}" contained keepend
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
62
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
63 " Type Styles {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
64 syn match rhelpType "\\emph\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
65 syn match rhelpType "\\strong\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
66 syn match rhelpType "\\bold\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
67 syn match rhelpType "\\sQuote\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
68 syn match rhelpType "\\dQuote\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
69 syn match rhelpType "\\preformatted\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
70 syn match rhelpType "\\kbd\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
71 syn match rhelpType "\\samp\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
72 syn match rhelpType "\\eqn\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
73 syn match rhelpType "\\deqn\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
74 syn match rhelpType "\\file\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
75 syn match rhelpType "\\email\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
76 syn match rhelpType "\\url\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
77 syn match rhelpType "\\var\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
78 syn match rhelpType "\\env\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
79 syn match rhelpType "\\option\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
80 syn match rhelpType "\\command\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
81 syn match rhelpType "\\dfn\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
82 syn match rhelpType "\\cite\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
83 syn match rhelpType "\\acronym\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
84
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
85 " rhelp sections {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
86 syn match rhelpSection "\\encoding\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
87 syn match rhelpSection "\\title\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
88 syn match rhelpSection "\\description\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
89 syn match rhelpSection "\\concept\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
90 syn match rhelpSection "\\arguments\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
91 syn match rhelpSection "\\details\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
92 syn match rhelpSection "\\value\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
93 syn match rhelpSection "\\references\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
94 syn match rhelpSection "\\note\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
95 syn match rhelpSection "\\author\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
96 syn match rhelpSection "\\seealso\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
97 syn match rhelpSection "\\keyword\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
98 syn match rhelpSection "\\docType\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
99 syn match rhelpSection "\\format\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
100 syn match rhelpSection "\\source\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
101 syn match rhelpSection "\\itemize\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
102 syn match rhelpSection "\\describe\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
103 syn match rhelpSection "\\enumerate\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
104 syn match rhelpSection "\\item "
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
105 syn match rhelpSection "\\item$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
106 syn match rhelpSection "\\tabular{[lcr]*}"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
107 syn match rhelpSection "\\dontrun\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
108 syn match rhelpSection "\\dontshow\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
109 syn match rhelpSection "\\testonly\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
110
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
111 " Freely named Sections {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
112 syn region rhelpFreesec matchgroup=Delimiter start="\\section{" matchgroup=Delimiter transparent end=/}/
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
113
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
114 " R help file comments {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
115 syn match rhelpComment /%.*$/ contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
116
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
117 " Error {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
118 syn region rhelpRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rhelpError,rhelpBraceError,rhelpCurlyError
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
119 syn region rhelpRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rhelpError,rhelpBraceError,rhelpParenError
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
120 syn region rhelpRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rhelpError,rhelpCurlyError,rhelpParenError
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
121 syn match rhelpError /[)\]}]/
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
122 syn match rhelpBraceError /[)}]/ contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
123 syn match rhelpCurlyError /[)\]]/ contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
124 syn match rhelpParenError /[\]}]/ contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
125
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
126 " Define the default highlighting {{{1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
127 " For version 5.7 and earlier: only when not done already
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
128 " For version 5.8 and later: only when an item doesn't have highlighting yet
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
129 if version >= 508 || !exists("did_rhelp_syntax_inits")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
130 if version < 508
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
131 let did_rhelp_syntax_inits = 1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
132 command -nargs=+ HiLink hi link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
133 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
134 command -nargs=+ HiLink hi def link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
135 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
136 HiLink rhelpIdentifier Identifier
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
137 HiLink rhelpString String
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
138 HiLink rhelpKeyword Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
139 HiLink rhelpDots Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
140 HiLink rhelpLink Underlined
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
141 HiLink rhelpType Type
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
142 HiLink rhelpSection PreCondit
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
143 HiLink rhelpError Error
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
144 HiLink rhelpBraceError Error
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
145 HiLink rhelpCurlyError Error
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
146 HiLink rhelpParenError Error
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
147 HiLink rhelpDelimiter Delimiter
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
148 HiLink rhelpComment Comment
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
149 HiLink rhelpRComment Comment
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
150 HiLink rhelpSpecialChar SpecialChar
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
151 delcommand HiLink
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
152 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
153
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
154 let b:current_syntax = "rhelp"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
155 " vim: foldmethod=marker: