utils 0.0.67 → 0.0.68

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. data/VERSION +1 -1
  2. data/bin/edit +3 -1
  3. data/lib/utils/editor.rb +14 -0
  4. data/lib/utils/version.rb +1 -1
  5. data/utils.gemspec +3 -3
  6. metadata +3 -74
  7. data/lib/utils/config/vim/after/syntax/haml.vim +0 -9
  8. data/lib/utils/config/vim/after/syntax/html.vim +0 -11
  9. data/lib/utils/config/vim/autoload/Align.vim +0 -1029
  10. data/lib/utils/config/vim/autoload/AlignMaps.vim +0 -330
  11. data/lib/utils/config/vim/autoload/ctrlp/bookmarkdir.vim +0 -139
  12. data/lib/utils/config/vim/autoload/ctrlp/buffertag.vim +0 -238
  13. data/lib/utils/config/vim/autoload/ctrlp/changes.vim +0 -96
  14. data/lib/utils/config/vim/autoload/ctrlp/dir.vim +0 -90
  15. data/lib/utils/config/vim/autoload/ctrlp/line.vim +0 -63
  16. data/lib/utils/config/vim/autoload/ctrlp/mixed.vim +0 -83
  17. data/lib/utils/config/vim/autoload/ctrlp/mrufiles.vim +0 -119
  18. data/lib/utils/config/vim/autoload/ctrlp/quickfix.vim +0 -62
  19. data/lib/utils/config/vim/autoload/ctrlp/rtscript.vim +0 -49
  20. data/lib/utils/config/vim/autoload/ctrlp/tag.vim +0 -112
  21. data/lib/utils/config/vim/autoload/ctrlp/undo.vim +0 -154
  22. data/lib/utils/config/vim/autoload/ctrlp/utils.vim +0 -72
  23. data/lib/utils/config/vim/autoload/ctrlp.vim +0 -1772
  24. data/lib/utils/config/vim/autoload/rails.vim +0 -4570
  25. data/lib/utils/config/vim/autoload/rubycomplete.vim +0 -801
  26. data/lib/utils/config/vim/autoload/sqlcomplete.vim +0 -741
  27. data/lib/utils/config/vim/autoload/vimball.vim +0 -750
  28. data/lib/utils/config/vim/colors/flori.vim +0 -116
  29. data/lib/utils/config/vim/compiler/coffee.vim +0 -68
  30. data/lib/utils/config/vim/compiler/eruby.vim +0 -40
  31. data/lib/utils/config/vim/compiler/ruby.vim +0 -67
  32. data/lib/utils/config/vim/compiler/rubyunit.vim +0 -34
  33. data/lib/utils/config/vim/doc/Decho.txt +0 -372
  34. data/lib/utils/config/vim/doc/coffee-script.txt +0 -116
  35. data/lib/utils/config/vim/doc/ctrlp.txt +0 -1113
  36. data/lib/utils/config/vim/doc/fugitive.txt +0 -257
  37. data/lib/utils/config/vim/doc/rails.txt +0 -1022
  38. data/lib/utils/config/vim/doc/xml-plugin.txt +0 -226
  39. data/lib/utils/config/vim/ftdetect/coffee.vim +0 -8
  40. data/lib/utils/config/vim/ftdetect/eco.vim +0 -1
  41. data/lib/utils/config/vim/ftdetect/ragel.vim +0 -2
  42. data/lib/utils/config/vim/ftdetect/ruby.vim +0 -17
  43. data/lib/utils/config/vim/ftdetect/slim.vim +0 -2
  44. data/lib/utils/config/vim/ftplugin/coffee.vim +0 -221
  45. data/lib/utils/config/vim/ftplugin/eruby.vim +0 -100
  46. data/lib/utils/config/vim/ftplugin/ruby.vim +0 -260
  47. data/lib/utils/config/vim/ftplugin/xml.vim +0 -941
  48. data/lib/utils/config/vim/indent/IndentAnything_html.vim +0 -35
  49. data/lib/utils/config/vim/indent/coffee.vim +0 -338
  50. data/lib/utils/config/vim/indent/eruby.vim +0 -77
  51. data/lib/utils/config/vim/indent/javascript.vim +0 -116
  52. data/lib/utils/config/vim/indent/ruby.vim +0 -377
  53. data/lib/utils/config/vim/indent/slim.vim +0 -75
  54. data/lib/utils/config/vim/plugin/AlignMapsPlugin.vim +0 -242
  55. data/lib/utils/config/vim/plugin/AlignPlugin.vim +0 -41
  56. data/lib/utils/config/vim/plugin/Decho.vim +0 -592
  57. data/lib/utils/config/vim/plugin/IndentAnything.vim +0 -675
  58. data/lib/utils/config/vim/plugin/bufexplorer.vim +0 -1144
  59. data/lib/utils/config/vim/plugin/cecutil.vim +0 -508
  60. data/lib/utils/config/vim/plugin/ctrlp.vim +0 -61
  61. data/lib/utils/config/vim/plugin/fugitive.vim +0 -2041
  62. data/lib/utils/config/vim/plugin/lusty-explorer.vim +0 -1509
  63. data/lib/utils/config/vim/plugin/rails.vim +0 -339
  64. data/lib/utils/config/vim/plugin/rubyextra.vim +0 -193
  65. data/lib/utils/config/vim/plugin/surround.vim +0 -628
  66. data/lib/utils/config/vim/plugin/taglist.vim +0 -4546
  67. data/lib/utils/config/vim/plugin/test/IndentAnything/test.js +0 -131
  68. data/lib/utils/config/vim/plugin/vimballPlugin.vim +0 -40
  69. data/lib/utils/config/vim/syntax/Decho.vim +0 -101
  70. data/lib/utils/config/vim/syntax/coffee.vim +0 -217
  71. data/lib/utils/config/vim/syntax/eco.vim +0 -62
  72. data/lib/utils/config/vim/syntax/eruby.vim +0 -73
  73. data/lib/utils/config/vim/syntax/javascript.vim +0 -246
  74. data/lib/utils/config/vim/syntax/ragel.vim +0 -165
  75. data/lib/utils/config/vim/syntax/ruby.vim +0 -367
  76. data/lib/utils/config/vim/syntax/slim.vim +0 -117
  77. data/lib/utils/config/vimrc +0 -540
@@ -1,246 +0,0 @@
1
- " Vim syntax file
2
- " Language: JavaScript
3
- " Maintainer: Yi Zhao (ZHAOYI) <zzlinux AT hotmail DOT com>
4
- " Last Change: June 4, 2009
5
- " Version: 0.7.7
6
- " Changes: Add "undefined" as a type keyword
7
- "
8
- " TODO:
9
- " - Add the HTML syntax inside the JSDoc
10
-
11
- if !exists("main_syntax")
12
- if version < 600
13
- syntax clear
14
- elseif exists("b:current_syntax")
15
- finish
16
- endif
17
- let main_syntax = 'javascript'
18
- endif
19
-
20
- "" Drop fold if it set but VIM doesn't support it.
21
- let b:javascript_fold='true'
22
- if version < 600 " Don't support the old version
23
- unlet! b:javascript_fold
24
- endif
25
-
26
- "" dollar sigh is permittd anywhere in an identifier
27
- setlocal iskeyword+=$
28
-
29
- syntax sync fromstart
30
-
31
- "" JavaScript comments
32
- syntax keyword javaScriptCommentTodo TODO FIXME XXX TBD contained
33
- syntax region javaScriptLineComment start=+\/\/+ end=+$+ keepend contains=javaScriptCommentTodo,@Spell
34
- syntax region javaScriptLineComment start=+^\s*\/\/+ skip=+\n\s*\/\/+ end=+$+ keepend contains=javaScriptCommentTodo,@Spell fold
35
- syntax region javaScriptCvsTag start="\$\cid:" end="\$" oneline contained
36
- syntax region javaScriptComment start="/\*" end="\*/" contains=javaScriptCommentTodo,javaScriptCvsTag,@Spell fold
37
-
38
- "" JSDoc support start
39
- if !exists("javascript_ignore_javaScriptdoc")
40
- syntax case ignore
41
-
42
- "" syntax coloring for javadoc comments (HTML)
43
- "syntax include @javaHtml <sfile>:p:h/html.vim
44
- "unlet b:current_syntax
45
-
46
- syntax region javaScriptDocComment matchgroup=javaScriptComment start="/\*\*\s*$" end="\*/" contains=javaScriptDocTags,javaScriptCommentTodo,javaScriptCvsTag,@javaScriptHtml,@Spell fold
47
- syntax match javaScriptDocTags contained "@\(param\|argument\|requires\|exception\|throws\|type\|class\|extends\|see\|link\|member\|module\|method\|title\|namespace\|optional\|default\|base\|file\)\>" nextgroup=javaScriptDocParam,javaScriptDocSeeTag skipwhite
48
- syntax match javaScriptDocTags contained "@\(beta\|deprecated\|description\|fileoverview\|author\|license\|version\|returns\=\|constructor\|private\|protected\|final\|ignore\|addon\|exec\)\>"
49
- syntax match javaScriptDocParam contained "\%(#\|\w\|\.\|:\|\/\)\+"
50
- syntax region javaScriptDocSeeTag contained matchgroup=javaScriptDocSeeTag start="{" end="}" contains=javaScriptDocTags
51
-
52
- syntax case match
53
- endif "" JSDoc end
54
-
55
- syntax case match
56
-
57
- "" Syntax in the JavaScript code
58
- syntax match javaScriptSpecial "\\\d\d\d\|\\x\x\{2\}\|\\u\x\{4\}\|\\."
59
- syntax region javaScriptStringD start=+"+ skip=+\\\\\|\\$"+ end=+"+ contains=javaScriptSpecial,@htmlPreproc
60
- syntax region javaScriptStringS start=+'+ skip=+\\\\\|\\$'+ end=+'+ contains=javaScriptSpecial,@htmlPreproc
61
- syntax region javaScriptRegexpString start=+/\(\*\|/\)\@!+ skip=+\\\\\|\\/+ end=+/[gim]\{,3}+ contains=javaScriptSpecial,@htmlPreproc oneline
62
- syntax match javaScriptNumber /\<-\=\d\+L\=\>\|\<0[xX]\x\+\>/
63
- syntax match javaScriptFloat /\<-\=\%(\d\+\.\d\+\|\d\+\.\|\.\d\+\)\%([eE][+-]\=\d\+\)\=\>/
64
- syntax match javaScriptLabel /\(?\s*\)\@<!\<\w\+\(\s*:\)\@=/
65
-
66
- "" JavaScript Prototype
67
- syntax keyword javaScriptPrototype prototype
68
-
69
- "" Programm Keywords
70
- syntax keyword javaScriptSource import export
71
- syntax keyword javaScriptType const this undefined var void yield
72
- syntax keyword javaScriptOperator delete new in instanceof let typeof
73
- syntax keyword javaScriptBoolean true false
74
- syntax keyword javaScriptNull null
75
-
76
- "" Statement Keywords
77
- syntax keyword javaScriptConditional if else
78
- syntax keyword javaScriptRepeat do while for
79
- syntax keyword javaScriptBranch break continue switch case default return
80
- syntax keyword javaScriptStatement try catch throw with finally
81
-
82
- syntax keyword javaScriptGlobalObjects Array Boolean Date Function Infinity JavaArray JavaClass JavaObject JavaPackage Math Number NaN Object Packages RegExp String Undefined java netscape sun
83
-
84
- syntax keyword javaScriptExceptions Error EvalError RangeError ReferenceError SyntaxError TypeError URIError
85
-
86
- syntax keyword javaScriptFutureKeys abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public
87
-
88
- "" DOM/HTML/CSS specified things
89
-
90
- " DOM2 Objects
91
- syntax keyword javaScriptGlobalObjects DOMImplementation DocumentFragment Document Node NodeList NamedNodeMap CharacterData Attr Element Text Comment CDATASection DocumentType Notation Entity EntityReference ProcessingInstruction
92
- syntax keyword javaScriptExceptions DOMException
93
-
94
- " DOM2 CONSTANT
95
- syntax keyword javaScriptDomErrNo INDEX_SIZE_ERR DOMSTRING_SIZE_ERR HIERARCHY_REQUEST_ERR WRONG_DOCUMENT_ERR INVALID_CHARACTER_ERR NO_DATA_ALLOWED_ERR NO_MODIFICATION_ALLOWED_ERR NOT_FOUND_ERR NOT_SUPPORTED_ERR INUSE_ATTRIBUTE_ERR INVALID_STATE_ERR SYNTAX_ERR INVALID_MODIFICATION_ERR NAMESPACE_ERR INVALID_ACCESS_ERR
96
- syntax keyword javaScriptDomNodeConsts ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE CDATA_SECTION_NODE ENTITY_REFERENCE_NODE ENTITY_NODE PROCESSING_INSTRUCTION_NODE COMMENT_NODE DOCUMENT_NODE DOCUMENT_TYPE_NODE DOCUMENT_FRAGMENT_NODE NOTATION_NODE
97
-
98
- " HTML events and internal variables
99
- syntax case ignore
100
- syntax keyword javaScriptHtmlEvents onblur onclick oncontextmenu ondblclick onfocus onkeydown onkeypress onkeyup onmousedown onmousemove onmouseout onmouseover onmouseup onresize
101
- syntax case match
102
-
103
- " Follow stuff should be highligh within a special context
104
- " While it can't be handled with context depended with Regex based highlight
105
- " So, turn it off by default
106
- if exists("javascript_enable_domhtmlcss")
107
-
108
- " DOM2 things
109
- syntax match javaScriptDomElemAttrs contained /\%(nodeName\|nodeValue\|nodeType\|parentNode\|childNodes\|firstChild\|lastChild\|previousSibling\|nextSibling\|attributes\|ownerDocument\|namespaceURI\|prefix\|localName\|tagName\)\>/
110
- syntax match javaScriptDomElemFuncs contained /\%(insertBefore\|replaceChild\|removeChild\|appendChild\|hasChildNodes\|cloneNode\|normalize\|isSupported\|hasAttributes\|getAttribute\|setAttribute\|removeAttribute\|getAttributeNode\|setAttributeNode\|removeAttributeNode\|getElementsByTagName\|getAttributeNS\|setAttributeNS\|removeAttributeNS\|getAttributeNodeNS\|setAttributeNodeNS\|getElementsByTagNameNS\|hasAttribute\|hasAttributeNS\)\>/ nextgroup=javaScriptParen skipwhite
111
- " HTML things
112
- syntax match javaScriptHtmlElemAttrs contained /\%(className\|clientHeight\|clientLeft\|clientTop\|clientWidth\|dir\|id\|innerHTML\|lang\|length\|offsetHeight\|offsetLeft\|offsetParent\|offsetTop\|offsetWidth\|scrollHeight\|scrollLeft\|scrollTop\|scrollWidth\|style\|tabIndex\|title\)\>/
113
- syntax match javaScriptHtmlElemFuncs contained /\%(blur\|click\|focus\|scrollIntoView\|addEventListener\|dispatchEvent\|removeEventListener\|item\)\>/ nextgroup=javaScriptParen skipwhite
114
-
115
- " CSS Styles in JavaScript
116
- syntax keyword javaScriptCssStyles contained color font fontFamily fontSize fontSizeAdjust fontStretch fontStyle fontVariant fontWeight letterSpacing lineBreak lineHeight quotes rubyAlign rubyOverhang rubyPosition
117
- syntax keyword javaScriptCssStyles contained textAlign textAlignLast textAutospace textDecoration textIndent textJustify textJustifyTrim textKashidaSpace textOverflowW6 textShadow textTransform textUnderlinePosition
118
- syntax keyword javaScriptCssStyles contained unicodeBidi whiteSpace wordBreak wordSpacing wordWrap writingMode
119
- syntax keyword javaScriptCssStyles contained bottom height left position right top width zIndex
120
- syntax keyword javaScriptCssStyles contained border borderBottom borderLeft borderRight borderTop borderBottomColor borderLeftColor borderTopColor borderBottomStyle borderLeftStyle borderRightStyle borderTopStyle borderBottomWidth borderLeftWidth borderRightWidth borderTopWidth borderColor borderStyle borderWidth borderCollapse borderSpacing captionSide emptyCells tableLayout
121
- syntax keyword javaScriptCssStyles contained margin marginBottom marginLeft marginRight marginTop outline outlineColor outlineStyle outlineWidth padding paddingBottom paddingLeft paddingRight paddingTop
122
- syntax keyword javaScriptCssStyles contained listStyle listStyleImage listStylePosition listStyleType
123
- syntax keyword javaScriptCssStyles contained background backgroundAttachment backgroundColor backgroundImage gackgroundPosition backgroundPositionX backgroundPositionY backgroundRepeat
124
- syntax keyword javaScriptCssStyles contained clear clip clipBottom clipLeft clipRight clipTop content counterIncrement counterReset cssFloat cursor direction display filter layoutGrid layoutGridChar layoutGridLine layoutGridMode layoutGridType
125
- syntax keyword javaScriptCssStyles contained marks maxHeight maxWidth minHeight minWidth opacity MozOpacity overflow overflowX overflowY verticalAlign visibility zoom cssText
126
- syntax keyword javaScriptCssStyles contained scrollbar3dLightColor scrollbarArrowColor scrollbarBaseColor scrollbarDarkShadowColor scrollbarFaceColor scrollbarHighlightColor scrollbarShadowColor scrollbarTrackColor
127
-
128
- " Highlight ways
129
- syntax match javaScriptDotNotation "\." nextgroup=javaScriptPrototype,javaScriptDomElemAttrs,javaScriptDomElemFuncs,javaScriptHtmlElemAttrs,javaScriptHtmlElemFuncs
130
- syntax match javaScriptDotNotation "\.style\." nextgroup=javaScriptCssStyles
131
-
132
- endif "DOM/HTML/CSS
133
-
134
- "" end DOM/HTML/CSS specified things
135
-
136
-
137
- "" Code blocks
138
- syntax cluster javaScriptAll contains=javaScriptComment,javaScriptLineComment,javaScriptDocComment,javaScriptStringD,javaScriptStringS,javaScriptRegexpString,javaScriptNumber,javaScriptFloat,javaScriptLabel,javaScriptSource,javaScriptType,javaScriptOperator,javaScriptBoolean,javaScriptNull,javaScriptFunction,javaScriptConditional,javaScriptRepeat,javaScriptBranch,javaScriptStatement,javaScriptGlobalObjects,javaScriptExceptions,javaScriptFutureKeys,javaScriptDomErrNo,javaScriptDomNodeConsts,javaScriptHtmlEvents,javaScriptDotNotation
139
- syntax region javaScriptBracket matchgroup=javaScriptBracket transparent start="\[" end="\]" contains=@javaScriptAll,javaScriptParensErrB,javaScriptParensErrC,javaScriptBracket,javaScriptParen,javaScriptBlock,@htmlPreproc
140
- syntax region javaScriptParen matchgroup=javaScriptParen transparent start="(" end=")" contains=@javaScriptAll,javaScriptParensErrA,javaScriptParensErrC,javaScriptParen,javaScriptBracket,javaScriptBlock,@htmlPreproc
141
- syntax region javaScriptBlock matchgroup=javaScriptBlock transparent start="{" end="}" contains=@javaScriptAll,javaScriptParensErrA,javaScriptParensErrB,javaScriptParen,javaScriptBracket,javaScriptBlock,@htmlPreproc
142
-
143
- "" catch errors caused by wrong parenthesis
144
- syntax match javaScriptParensError ")\|}\|\]"
145
- syntax match javaScriptParensErrA contained "\]"
146
- syntax match javaScriptParensErrB contained ")"
147
- syntax match javaScriptParensErrC contained "}"
148
-
149
- if main_syntax == "javascript"
150
- syntax sync clear
151
- syntax sync ccomment javaScriptComment minlines=200
152
- syntax sync match javaScriptHighlight grouphere javaScriptBlock /{/
153
- endif
154
-
155
- "" Fold control
156
- if exists("b:javascript_fold")
157
- syntax match javaScriptFunction /\<function\>/ nextgroup=javaScriptFuncName skipwhite
158
- syntax match javaScriptOpAssign /=\@<!=/ nextgroup=javaScriptFuncBlock skipwhite skipempty
159
- syntax region javaScriptFuncName contained matchgroup=javaScriptFuncName start=/\%(\$\|\w\)*\s*(/ end=/)/ contains=javaScriptLineComment,javaScriptComment nextgroup=javaScriptFuncBlock skipwhite skipempty
160
- syntax region javaScriptFuncBlock contained matchgroup=javaScriptFuncBlock start="{" end="}" contains=@javaScriptAll,javaScriptParensErrA,javaScriptParensErrB,javaScriptParen,javaScriptBracket,javaScriptBlock fold
161
-
162
- if &l:filetype=='javascript' && !&diff
163
- " Fold setting
164
- " Redefine the foldtext (to show a JS function outline) and foldlevel
165
- " only if the entire buffer is JavaScript, but not if JavaScript syntax
166
- " is embedded in another syntax (e.g. HTML).
167
- setlocal foldmethod=syntax
168
- setlocal foldlevel=4
169
- endif
170
- else
171
- syntax keyword javaScriptFunction function
172
- setlocal foldmethod<
173
- setlocal foldlevel<
174
- endif
175
-
176
- " Define the default highlighting.
177
- " For version 5.7 and earlier: only when not done already
178
- " For version 5.8 and later: only when an item doesn't have highlighting yet
179
- if version >= 508 || !exists("did_javascript_syn_inits")
180
- if version < 508
181
- let did_javascript_syn_inits = 1
182
- command -nargs=+ HiLink hi link <args>
183
- else
184
- command -nargs=+ HiLink hi def link <args>
185
- endif
186
- HiLink javaScriptComment Comment
187
- HiLink javaScriptLineComment Comment
188
- HiLink javaScriptDocComment Comment
189
- HiLink javaScriptCommentTodo Todo
190
- HiLink javaScriptCvsTag Function
191
- HiLink javaScriptDocTags Special
192
- HiLink javaScriptDocSeeTag Function
193
- HiLink javaScriptDocParam Function
194
- HiLink javaScriptStringS String
195
- HiLink javaScriptStringD String
196
- HiLink javaScriptRegexpString String
197
- HiLink javaScriptCharacter Character
198
- HiLink javaScriptPrototype Type
199
- HiLink javaScriptConditional Conditional
200
- HiLink javaScriptBranch Conditional
201
- HiLink javaScriptRepeat Repeat
202
- HiLink javaScriptStatement Statement
203
- HiLink javaScriptFunction Function
204
- HiLink javaScriptError Error
205
- HiLink javaScriptParensError Error
206
- HiLink javaScriptParensErrA Error
207
- HiLink javaScriptParensErrB Error
208
- HiLink javaScriptParensErrC Error
209
- HiLink javaScriptOperator Operator
210
- HiLink javaScriptType Type
211
- HiLink javaScriptNull Type
212
- HiLink javaScriptNumber Number
213
- HiLink javaScriptFloat Number
214
- HiLink javaScriptBoolean Boolean
215
- HiLink javaScriptLabel Label
216
- HiLink javaScriptSpecial Special
217
- HiLink javaScriptSource Special
218
- HiLink javaScriptGlobalObjects Special
219
- HiLink javaScriptExceptions Special
220
-
221
- HiLink javaScriptDomErrNo Constant
222
- HiLink javaScriptDomNodeConsts Constant
223
- HiLink javaScriptDomElemAttrs Label
224
- HiLink javaScriptDomElemFuncs PreProc
225
-
226
- HiLink javaScriptHtmlEvents Special
227
- HiLink javaScriptHtmlElemAttrs Label
228
- HiLink javaScriptHtmlElemFuncs PreProc
229
-
230
- HiLink javaScriptCssStyles Label
231
-
232
- delcommand HiLink
233
- endif
234
-
235
- " Define the htmlJavaScript for HTML syntax html.vim
236
- "syntax clear htmlJavaScript
237
- "syntax clear javaScriptExpression
238
- syntax cluster htmlJavaScript contains=@javaScriptAll,javaScriptBracket,javaScriptParen,javaScriptBlock,javaScriptParenError
239
- syntax cluster javaScriptExpression contains=@javaScriptAll,javaScriptBracket,javaScriptParen,javaScriptBlock,javaScriptParenError,@htmlPreproc
240
-
241
- let b:current_syntax = "javascript"
242
- if main_syntax == 'javascript'
243
- unlet main_syntax
244
- endif
245
-
246
- " vim: ts=4
@@ -1,165 +0,0 @@
1
- " Vim syntax file
2
- "
3
- " Language: Ragel
4
- " Author: Adrian Thurston
5
-
6
- syntax clear
7
-
8
- "
9
- " Outside code
10
- "
11
-
12
- " Comments
13
- syntax region ocComment start="\/\*" end="\*\/"
14
- syntax match ocComment "\/\/.*$"
15
-
16
- " Anything preprocessor
17
- syntax match ocPreproc "#.*$"
18
-
19
- " Strings
20
- syntax match ocLiteral "'\(\\.\|[^'\\]\)*'"
21
- syntax match ocLiteral "\"\(\\.\|[^\"\\]\)*\""
22
-
23
- " C/C++ Keywords
24
- syntax keyword ocType unsigned signed void char short int long float double bool
25
- syntax keyword ocType inline static extern register const volatile auto
26
- syntax keyword ocType union enum struct class typedef
27
- syntax keyword ocType namespace template typename mutable
28
- syntax keyword ocKeyword break continue default do else for
29
- syntax keyword ocKeyword goto if return switch while
30
- syntax keyword ocKeyword new delete this using friend public private protected sizeof
31
- syntax keyword ocKeyword throw try catch operator typeid
32
- syntax keyword ocKeyword and bitor xor compl bitand and_eq or_eq xor_eq not not_eq
33
- syntax keyword ocKeyword static_cast dynamic_cast
34
-
35
- " D Keywords
36
- syntax keyword ocType wchar dchar bit byte ubyte ushort uint ulong cent ucent
37
- syntax keyword ocType cfloat ifloat cdouble idouble real creal ireal
38
- syntax keyword ocKeyword abstract alias align asm assert body cast debug delegate
39
- syntax keyword ocKeyword deprecated export final finally foreach function import in inout
40
- syntax keyword ocKeyword interface invariant is mixin module out override package pragma
41
- syntax keyword ocKeyword super synchronized typeof unittest version with
42
-
43
- " Java Keywords
44
- syntax keyword ocType byte short char int
45
-
46
- " Objective-C Directives
47
- syntax match ocKeyword "@public\|@private\|@protected"
48
- syntax match ocKeyword "@interface\|@implementation"
49
- syntax match ocKeyword "@class\|@end\|@defs"
50
- syntax match ocKeyword "@encode\|@protocol\|@selector"
51
-
52
- " Numbers
53
- syntax match ocNumber "[0-9][0-9]*"
54
- syntax match ocNumber "0x[0-9a-fA-F][0-9a-fA-F]*"
55
-
56
- " Booleans
57
- syntax keyword ocBoolean true false
58
-
59
- " Identifiers
60
- syntax match anyId "[a-zA-Z_][a-zA-Z_0-9]*"
61
-
62
- " Inline code only
63
- syntax keyword fsmType fpc fc fcurs fbuf fblen ftargs fstack
64
- syntax keyword fsmKeyword fhold fgoto fcall fret fentry fnext fexec fbreak
65
-
66
- syntax cluster rlItems contains=rlComment,rlLiteral,rlAugmentOps,rlOtherOps,rlKeywords,rlWrite,rlCodeCurly,rlCodeSemi,rlNumber,anyId,rlLabelColon,rlExprKeywords
67
-
68
- syntax region machineSpec1 matchgroup=beginRL start="%%{" end="}%%" contains=@rlItems
69
- syntax region machineSpec2 matchgroup=beginRL start="%%[^{]"rs=e-1 end="$" keepend contains=@rlItems
70
- syntax region machineSpec2 matchgroup=beginRL start="%%$" end="$" keepend contains=@rlItems
71
-
72
- " Comments
73
- syntax match rlComment "#.*$" contained
74
-
75
- " Literals
76
- syntax match rlLiteral "'\(\\.\|[^'\\]\)*'[i]*" contained
77
- syntax match rlLiteral "\"\(\\.\|[^\"\\]\)*\"[i]*" contained
78
- syntax match rlLiteral /\/\(\\.\|[^\/\\]\)*\/[i]*/ contained
79
- syntax match rlLiteral "\[\(\\.\|[^\]\\]\)*\]" contained
80
-
81
- " Numbers
82
- syntax match rlNumber "[0-9][0-9]*" contained
83
- syntax match rlNumber "0x[0-9a-fA-F][0-9a-fA-F]*" contained
84
-
85
- " Operators
86
- syntax match rlAugmentOps "[>$%@]" contained
87
- syntax match rlAugmentOps "<>\|<" contained
88
- syntax match rlAugmentOps "[>\<$%@][!\^/*~]" contained
89
- syntax match rlAugmentOps "[>$%]?" contained
90
- syntax match rlAugmentOps "<>[!\^/*~]" contained
91
- syntax match rlAugmentOps "=>" contained
92
- syntax match rlOtherOps "->" contained
93
-
94
- syntax match rlOtherOps ":>" contained
95
- syntax match rlOtherOps ":>>" contained
96
- syntax match rlOtherOps "<:" contained
97
-
98
- " Keywords
99
- " FIXME: Enable the range keyword post 5.17.
100
- " syntax keyword rlKeywords machine action context include range contained
101
- syntax keyword rlKeywords machine action context include contained
102
- syntax keyword rlExprKeywords when err lerr eof from to contained
103
-
104
- " Case Labels
105
- syntax keyword caseLabelKeyword case contained
106
- syntax cluster caseLabelItems contains=ocComment,ocPreproc,ocLiteral,ocType,ocKeyword,caseLabelKeyword,ocNumber,ocBoolean,anyId,fsmType,fsmKeyword
107
- syntax match caseLabelColon "case" contains=@caseLabelItems
108
- syntax match caseLabelColon "case[\t ]\+.*:$" contains=@caseLabelItems
109
- syntax match caseLabelColon "case[\t ]\+.*:[^=:]"me=e-1 contains=@caseLabelItems
110
-
111
- " Labels
112
- syntax match ocLabelColon "^[\t ]*[a-zA-Z_][a-zA-Z_0-9]*[ \t]*:$" contains=anyLabel
113
- syntax match ocLabelColon "^[\t ]*[a-zA-Z_][a-zA-Z_0-9]*[ \t]*:[^=:]"me=e-1 contains=anyLabel
114
-
115
- syntax match rlLabelColon "[a-zA-Z_][a-zA-Z_0-9]*[ \t]*:$" contained contains=anyLabel
116
- syntax match rlLabelColon "[a-zA-Z_][a-zA-Z_0-9]*[ \t]*:[^=:>]"me=e-1 contained contains=anyLabel
117
- syntax match anyLabel "[a-zA-Z_][a-zA-Z_0-9]*" contained
118
-
119
- " All items that can go in a code block.
120
-
121
- syntax cluster inlineItems contains=rlCodeCurly,ocComment,ocPreproc,ocLiteral,ocType,ocKeyword,ocNumber,ocBoolean,ocLabelColon,anyId,fsmType,fsmKeyword,caseLabelColon
122
-
123
- " Blocks of code. rlCodeCurly is recursive.
124
- syntax region rlCodeCurly matchgroup=NONE start="{" end="}" contained contains=@inlineItems
125
- syntax region rlCodeSemi matchgroup=Type start="\<alphtype\>" start="\<getkey\>" start="\<access\>" start="\<variable\>" matchgroup=NONE end=";" contained contains=@inlineItems
126
-
127
- syntax region rlWrite matchgroup=Type start="\<write\>" matchgroup=NONE end=";" contained contains=rlWriteKeywords,rlWriteOptions
128
-
129
- syntax keyword rlWriteKeywords init data exec eof contained
130
- syntax keyword rlWriteOptions noerror nofinal noprefix noend contained
131
-
132
- "
133
- " Sync at the start of machine specs.
134
- "
135
- " Match The ragel delimiters only if there quotes no ahead on the same line.
136
- " On the open marker, use & to consume the leader.
137
- syntax sync match ragelSyncPat grouphere NONE "^[^\'\"%]*%%{&^[^\'\"%]*"
138
- syntax sync match ragelSyncPat grouphere NONE "^[^\'\"%]*%%[^{]&^[^\'\"%]*"
139
- syntax sync match ragelSyncPat grouphere NONE "^[^\'\"]*}%%"
140
-
141
- "
142
- " Specifying Groups
143
- "
144
- hi link ocComment Comment
145
- hi link ocPreproc Macro
146
- hi link ocLiteral String
147
- hi link ocType Type
148
- hi link ocKeyword Keyword
149
- hi link ocNumber Number
150
- hi link ocBoolean Boolean
151
- hi link rlComment Comment
152
- hi link rlNumber Number
153
- hi link rlLiteral String
154
- hi link rlAugmentOps Keyword
155
- hi link rlExprKeywords Keyword
156
- hi link rlWriteKeywords Keyword
157
- hi link rlWriteOptions Keyword
158
- hi link rlKeywords Type
159
- hi link fsmType Type
160
- hi link fsmKeyword Keyword
161
- hi link anyLabel Label
162
- hi link caseLabelKeyword Keyword
163
- hi link beginRL Type
164
-
165
- let b:current_syntax = "ragel"