tomkersten-vixploder 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +4 -0
- data/Manifest.txt +105 -0
- data/PostInstall.txt +21 -0
- data/README.rdoc +131 -0
- data/Rakefile +21 -0
- data/bin/256colors2.pl +63 -0
- data/bin/colortest +365 -0
- data/bin/vixplode +10 -0
- data/lib/dotfiles/aliases +30 -0
- data/lib/dotfiles/gvimrc +20 -0
- data/lib/dotfiles/vim/.VimballRecord +2 -0
- data/lib/dotfiles/vim/after/ftplugin/actionscript_snippets.vim +9 -0
- data/lib/dotfiles/vim/after/ftplugin/aspvbs_snippets.vim +17 -0
- data/lib/dotfiles/vim/after/ftplugin/c_snippets.vim +58 -0
- data/lib/dotfiles/vim/after/ftplugin/css_snippets.vim +30 -0
- data/lib/dotfiles/vim/after/ftplugin/django_model_snippets.vim +61 -0
- data/lib/dotfiles/vim/after/ftplugin/django_template_snippets.vim +32 -0
- data/lib/dotfiles/vim/after/ftplugin/f-script_snippets.vim +14 -0
- data/lib/dotfiles/vim/after/ftplugin/haskell_snippets.vim +9 -0
- data/lib/dotfiles/vim/after/ftplugin/html_snippets.vim +57 -0
- data/lib/dotfiles/vim/after/ftplugin/java_snippets.vim +52 -0
- data/lib/dotfiles/vim/after/ftplugin/javascript_snippets.vim +10 -0
- data/lib/dotfiles/vim/after/ftplugin/latex_snippets.vim +13 -0
- data/lib/dotfiles/vim/after/ftplugin/logo_snippets.vim +9 -0
- data/lib/dotfiles/vim/after/ftplugin/markdown_snippets.vim +10 -0
- data/lib/dotfiles/vim/after/ftplugin/movable_type_snippets.vim +14 -0
- data/lib/dotfiles/vim/after/ftplugin/objc_snippets.vim +53 -0
- data/lib/dotfiles/vim/after/ftplugin/ocaml_snippets.vim +26 -0
- data/lib/dotfiles/vim/after/ftplugin/perl_snippets.vim +23 -0
- data/lib/dotfiles/vim/after/ftplugin/php_snippets.vim +30 -0
- data/lib/dotfiles/vim/after/ftplugin/phpdoc_snippets.vim +19 -0
- data/lib/dotfiles/vim/after/ftplugin/propel_snippets.vim +14 -0
- data/lib/dotfiles/vim/after/ftplugin/python_snippets.vim +202 -0
- data/lib/dotfiles/vim/after/ftplugin/rails_snippets.vim +54 -0
- data/lib/dotfiles/vim/after/ftplugin/ruby_snippets.vim +32 -0
- data/lib/dotfiles/vim/after/ftplugin/sh_snippets.vim +12 -0
- data/lib/dotfiles/vim/after/ftplugin/slate_snippets.vim +19 -0
- data/lib/dotfiles/vim/after/ftplugin/smarty_snippets.vim +35 -0
- data/lib/dotfiles/vim/after/ftplugin/symfony_snippets.vim +21 -0
- data/lib/dotfiles/vim/after/ftplugin/tcl_snippets.vim +14 -0
- data/lib/dotfiles/vim/after/ftplugin/template_toolkit_snippets.vim +13 -0
- data/lib/dotfiles/vim/after/ftplugin/tex_snippets.vim +13 -0
- data/lib/dotfiles/vim/after/ftplugin/xhtml_snippets.vim +48 -0
- data/lib/dotfiles/vim/autoload/fakeclip.vim +253 -0
- data/lib/dotfiles/vim/autoload/rails.vim +4377 -0
- data/lib/dotfiles/vim/autoload/rubycomplete.vim +802 -0
- data/lib/dotfiles/vim/colors/inkpot.vim +212 -0
- data/lib/dotfiles/vim/colors/ir_black.vim +212 -0
- data/lib/dotfiles/vim/colors/ir_black_mod.vim +213 -0
- data/lib/dotfiles/vim/colors/railscasts.vim +100 -0
- data/lib/dotfiles/vim/colors/rubyblue.vim +74 -0
- data/lib/dotfiles/vim/colors/twilight.vim +75 -0
- data/lib/dotfiles/vim/colors/twilight2.vim +74 -0
- data/lib/dotfiles/vim/colors/wombat256.vim +302 -0
- data/lib/dotfiles/vim/compiler/eruby.vim +41 -0
- data/lib/dotfiles/vim/compiler/ruby.vim +68 -0
- data/lib/dotfiles/vim/compiler/rubyunit.vim +35 -0
- data/lib/dotfiles/vim/doc/NERD_tree.txt +1235 -0
- data/lib/dotfiles/vim/doc/fakeclip.txt +190 -0
- data/lib/dotfiles/vim/doc/matchit.txt +406 -0
- data/lib/dotfiles/vim/doc/project.txt +710 -0
- data/lib/dotfiles/vim/doc/rails.txt +1123 -0
- data/lib/dotfiles/vim/doc/snippets_emu.txt +354 -0
- data/lib/dotfiles/vim/doc/surround.txt +218 -0
- data/lib/dotfiles/vim/doc/tags +433 -0
- data/lib/dotfiles/vim/filetype.vim +13 -0
- data/lib/dotfiles/vim/ftdetect/gist.vim +3 -0
- data/lib/dotfiles/vim/ftdetect/ruby.vim +14 -0
- data/lib/dotfiles/vim/ftplugin/eruby.vim +101 -0
- data/lib/dotfiles/vim/ftplugin/ruby.vim +230 -0
- data/lib/dotfiles/vim/indent/eruby.vim +73 -0
- data/lib/dotfiles/vim/indent/ruby.vim +373 -0
- data/lib/dotfiles/vim/plugin/NERD_tree.vim +3536 -0
- data/lib/dotfiles/vim/plugin/comments.vim +321 -0
- data/lib/dotfiles/vim/plugin/fakeclip.vim +174 -0
- data/lib/dotfiles/vim/plugin/fuzzyfinder.vim +1676 -0
- data/lib/dotfiles/vim/plugin/fuzzyfinder_textmate.vim +150 -0
- data/lib/dotfiles/vim/plugin/gist.vim +241 -0
- data/lib/dotfiles/vim/plugin/gitdiff.vim +141 -0
- data/lib/dotfiles/vim/plugin/matchit.vim +812 -0
- data/lib/dotfiles/vim/plugin/mru.vim +787 -0
- data/lib/dotfiles/vim/plugin/rails.vim +310 -0
- data/lib/dotfiles/vim/plugin/rspec.vim +12 -0
- data/lib/dotfiles/vim/plugin/snippets.vim +17 -0
- data/lib/dotfiles/vim/plugin/snippetsEmu.vim +973 -0
- data/lib/dotfiles/vim/plugin/supertab.vim +531 -0
- data/lib/dotfiles/vim/plugin/surround.vim +632 -0
- data/lib/dotfiles/vim/ref_vimrc +80 -0
- data/lib/dotfiles/vim/ruby/fuzzy_file_finder.rb +353 -0
- data/lib/dotfiles/vim/syntax/eruby.vim +85 -0
- data/lib/dotfiles/vim/syntax/haml.vim +113 -0
- data/lib/dotfiles/vim/syntax/mkd.vim +86 -0
- data/lib/dotfiles/vim/syntax/ruby.vim +324 -0
- data/lib/dotfiles/vim/syntax/sass.vim +93 -0
- data/lib/dotfiles/vimrc +269 -0
- data/lib/vixplode/cli.rb +73 -0
- data/lib/vixploder.rb +6 -0
- data/script/console +10 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/spec/spec.opts +1 -0
- data/spec/spec_helper.rb +10 -0
- data/spec/vixplode_cli_spec.rb +15 -0
- data/spec/vixploder_spec.rb +7 -0
- data/tasks/rspec.rake +21 -0
- metadata +202 -8
@@ -0,0 +1,113 @@
|
|
1
|
+
" Vim syntax file
|
2
|
+
" Language: Haml (XHTML Abstraction Markup Language)
|
3
|
+
" Maintainer: Dmitry A. Ilyashevich <dmitry.ilyashevich@gmail.com>
|
4
|
+
" License: This file can be redistribued and/or modified under the same terms
|
5
|
+
" as Vim itself.
|
6
|
+
"
|
7
|
+
" Version: 0.3
|
8
|
+
" Last Change: 2008-03-16
|
9
|
+
" Notes: Last synced with Haml 1.8
|
10
|
+
" TODO: Support for indented multiline sections
|
11
|
+
"
|
12
|
+
" For version 5.x: Clear all syntax items
|
13
|
+
" For version 6.x: Quit when a syntax file was already loaded
|
14
|
+
"
|
15
|
+
" Changes:
|
16
|
+
" - David Bushong added support for Haml 1.8's == syntax for ruby strings;
|
17
|
+
" - Lasse Jansen make syntax highlighting of multiline ruby commands work
|
18
|
+
" ("|" at the end of the line).
|
19
|
+
"
|
20
|
+
|
21
|
+
if version < 600
|
22
|
+
syntax clear
|
23
|
+
elseif exists("b:current_syntax")
|
24
|
+
finish
|
25
|
+
endif
|
26
|
+
|
27
|
+
if !exists("main_syntax")
|
28
|
+
let main_syntax = 'haml'
|
29
|
+
endif
|
30
|
+
|
31
|
+
if version < 600
|
32
|
+
so <sfile>:p:h/html.vim
|
33
|
+
syn include @rubyTop <sfile>:p:h/ruby.vim
|
34
|
+
else
|
35
|
+
runtime! syntax/html.vim
|
36
|
+
unlet b:current_syntax
|
37
|
+
syn include @rubyTop syntax/ruby.vim
|
38
|
+
endif
|
39
|
+
|
40
|
+
syn region hamlLineTag start="^\s*%[a-zA-Z0-9\-_\:]\+" end="$" oneline keepend contains=hamlHtmlTag,hamlCssClassIncluded,hamlCssIdIncluded,hamlHtmlTagEnd,hamlRubyCodeIncluded,hamlRubyHash,hamlSpecialChar
|
41
|
+
syn region hamlLineTag start="^\s*%[a-zA-Z0-9\-_\:]\+" end="$" oneline keepend contains=hamlHtmlTag,hamlCssClassIncluded,hamlCssIdIncluded,hamlHtmlTagEnd,hamlRubyCodeIncluded,hamlRubyHash,hamlRubyStringIncluded
|
42
|
+
syn match hamlHtmlTagEnd "/$" contained
|
43
|
+
syn match hamlHtmlTag "^\s*%[a-zA-Z0-9\-_\:]\+" contained contains=htmlTagName
|
44
|
+
syn match hamlCssClassIncluded "\.[a-zA-Z0-9\-_\:]\+" contained
|
45
|
+
syn match hamlCssIdIncluded "\#[a-zA-Z0-9\-_\:]\+" contained
|
46
|
+
|
47
|
+
syn region hamlLineClass start="^\s*\.[a-zA-Z0-9\-_\:]*" end="$" oneline keepend contains=hamlCssClass,hamlCssClassIncluded,hamlCssIdIncluded,hamlRubyCodeIncluded,hamlRubyStringIncluded
|
48
|
+
syn region hamlLineId start="^\s*\#[a-zA-Z0-9\-_\:]*" end="$" oneline keepend contains=hamlCssId,hamlCssClassIncluded,hamlCssIdIncluded,hamlRubyCodeIncluded,hamlRubyStringIncluded
|
49
|
+
|
50
|
+
syn match hamlCssId "^\s*#[a-zA-Z0-9\-_\:]*" contained
|
51
|
+
syn match hamlCssClass "^\s*\.[a-zA-Z0-9\-_\:]*" contained
|
52
|
+
|
53
|
+
syn region hamlRubyCodeIncluded matchgroup=Delimiter start="[=~-] " end="$" contained contains=@rubyTop,hamlRubyHash keepend
|
54
|
+
syn region hamlRubyHash matchgroup=Delimiter start="{" end="}" contained contains=@rubyTop keepend
|
55
|
+
syn region hamlRubyCode matchgroup=Delimiter start="^\s*[=~-]" end="$" contains=@rubyTop,hamlRubyHash keepend
|
56
|
+
syn region hamlRubyStringIncluded matchgroup=Delimiter start="== " end="$" contained contains=@rubyStringSpecial keepend
|
57
|
+
syn region hamlRubyString matchgroup=Delimiter start="^\s*==" end="$" contains=@rubyStringSpecial
|
58
|
+
|
59
|
+
|
60
|
+
syn match hamlPreDef "^\s*:[a-zA-Z0-9\-_\:]\+"
|
61
|
+
syn region hamlPreProc start="^\s*\\" end="$"
|
62
|
+
syn match hamlPreProc " |$"
|
63
|
+
|
64
|
+
syn match hamlComment "^!!!.*$"
|
65
|
+
syn match hamlComment "^\s*/.*$" contains=hamlTodo,@Spell
|
66
|
+
syn keyword hamlTodo TODO FIXME XXX contained
|
67
|
+
|
68
|
+
" special characters
|
69
|
+
syn match hamlSpecialChar contained "&#\=[0-9A-Za-z]\{1,8};"
|
70
|
+
|
71
|
+
|
72
|
+
" Define the default highlighting.
|
73
|
+
" For version 5.7 and earlier: only when not done already
|
74
|
+
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
75
|
+
if version >= 508 || !exists("did_haml_syntax_inits")
|
76
|
+
if version < 508
|
77
|
+
let did_haml_syntax_inits = 1
|
78
|
+
command -nargs=+ HiLink hi link <args>
|
79
|
+
else
|
80
|
+
command -nargs=+ HiLink hi def link <args>
|
81
|
+
endif
|
82
|
+
|
83
|
+
HiLink hamlLineClass hamlLineTag
|
84
|
+
HiLink hamlLineId hamlLineTag
|
85
|
+
HiLink hamlCssClassIncluded hamlCssClass
|
86
|
+
HiLink hamlCssIdIncluded Type
|
87
|
+
HiLink hamlCssId Type
|
88
|
+
HiLink hamlHtmlTagEnd hamlHtmlTag
|
89
|
+
HiLink hamlPreDef hamlHtmlTag
|
90
|
+
HiLink hamlRubyHash hamlLineTag
|
91
|
+
HiLink hamlRubyCode hamlLineTag
|
92
|
+
HiLink hamlRubyCodeIncluded hamlLineTag
|
93
|
+
HiLink hamlRubyString hamlLineTag
|
94
|
+
HiLink hamlRubyStringIncluded hamlLineTag
|
95
|
+
|
96
|
+
HiLink hamlLineTag Text
|
97
|
+
HiLink hamlHtmlTag Statement
|
98
|
+
HiLink hamlCssClass Type
|
99
|
+
HiLink hamlPreProc PreProc
|
100
|
+
HiLink hamlComment Comment
|
101
|
+
HiLink hamlTodo Todo
|
102
|
+
|
103
|
+
HiLink hamlSpecialChar Special
|
104
|
+
|
105
|
+
delcommand HiLink
|
106
|
+
endif
|
107
|
+
let b:current_syntax = "haml"
|
108
|
+
|
109
|
+
if main_syntax == 'haml'
|
110
|
+
unlet main_syntax
|
111
|
+
endif
|
112
|
+
|
113
|
+
" vim: nowrap sw=2 sts=2 ts=8 ff=unix:
|
@@ -0,0 +1,86 @@
|
|
1
|
+
" Vim syntax file
|
2
|
+
" Language: Markdown
|
3
|
+
" Maintainer: Ben Williams <benw@plasticboy.com>
|
4
|
+
" URL: http://plasticboy.com/markdown-vim-mode/
|
5
|
+
" Version: 8
|
6
|
+
" Last Change: 2008 April 29
|
7
|
+
" Remark: Uses HTML syntax file
|
8
|
+
" Remark: I don't do anything with angle brackets (<>) because that would too easily
|
9
|
+
" easily conflict with HTML syntax
|
10
|
+
" TODO: Do something appropriate with image syntax
|
11
|
+
" TODO: Handle stuff contained within stuff (e.g. headings within blockquotes)
|
12
|
+
|
13
|
+
|
14
|
+
" Read the HTML syntax to start with
|
15
|
+
if version < 600
|
16
|
+
so <sfile>:p:h/html.vim
|
17
|
+
else
|
18
|
+
runtime! syntax/html.vim
|
19
|
+
unlet b:current_syntax
|
20
|
+
endif
|
21
|
+
|
22
|
+
if version < 600
|
23
|
+
syntax clear
|
24
|
+
elseif exists("b:current_syntax")
|
25
|
+
finish
|
26
|
+
endif
|
27
|
+
|
28
|
+
" don't use standard HiLink, it will not work with included syntax files
|
29
|
+
if version < 508
|
30
|
+
command! -nargs=+ HtmlHiLink hi link <args>
|
31
|
+
else
|
32
|
+
command! -nargs=+ HtmlHiLink hi def link <args>
|
33
|
+
endif
|
34
|
+
|
35
|
+
syn spell toplevel
|
36
|
+
syn case ignore
|
37
|
+
syn sync linebreaks=1
|
38
|
+
|
39
|
+
"additions to HTML groups
|
40
|
+
syn region htmlBold start=/\(^\|\s\)\*\@<!\*\*\*\@!/ end=/\*\@<!\*\*\*\@!\($\|\s\)/ contains=@Spell,htmlItalic
|
41
|
+
syn region htmlItalic start=/\(^\|\s\)\*\@<!\*\*\@!/ end=/\*\@<!\*\*\@!\($\|\s\)/ contains=htmlBold,@Spell
|
42
|
+
syn region htmlBold start=/\(^\|\s\)_\@<!___\@!/ end=/_\@<!___\@!\($\|\s\)/ contains=htmlItalic,@Spell
|
43
|
+
syn region htmlItalic start=/\(^\|\s\)_\@<!__\@!/ end=/_\@<!__\@!\($\|\s\)/ contains=htmlBold,@Spell
|
44
|
+
syn region htmlString start="]("ms=s+2 end=")"me=e-1
|
45
|
+
syn region htmlLink start="\["ms=s+1 end="\]"me=e-1 contains=@Spell
|
46
|
+
syn region htmlString start="\(\[.*]: *\)\@<=.*" end="$"
|
47
|
+
|
48
|
+
"define Markdown groups
|
49
|
+
syn match mkdLineContinue ".$" contained
|
50
|
+
syn match mkdRule /^\s*\*\s\{0,1}\*\s\{0,1}\*$/
|
51
|
+
syn match mkdRule /^\s*-\s\{0,1}-\s\{0,1}-$/
|
52
|
+
syn match mkdRule /^\s*_\s\{0,1}_\s\{0,1}_$/
|
53
|
+
syn match mkdRule /^\s*-\{3,}$/
|
54
|
+
syn match mkdRule /^\s*\*\{3,5}$/
|
55
|
+
syn match mkdListItem "^\s*[-*+]\s\+"
|
56
|
+
syn match mkdListItem "^\s*\d\+\.\s\+"
|
57
|
+
syn match mkdCode /^\s*\n\(\(\s\{4,}\|[\t]\+\)[^*-+ ].*\n\)\+/
|
58
|
+
syn region mkdCode start=/`/ end=/`/
|
59
|
+
syn region mkdCode start=/\s*``[^`]*/ end=/[^`]*``\s*/
|
60
|
+
syn region mkdBlockquote start=/^\s*>/ end=/$/ contains=mkdLineContinue,@Spell
|
61
|
+
syn region mkdCode start="<pre[^>]*>" end="</pre>"
|
62
|
+
syn region mkdCode start="<code[^>]*>" end="</code>"
|
63
|
+
|
64
|
+
"HTML headings
|
65
|
+
syn region htmlH1 start="^\s*#" end="\($\|#\+\)" contains=@Spell
|
66
|
+
syn region htmlH2 start="^\s*##" end="\($\|#\+\)" contains=@Spell
|
67
|
+
syn region htmlH3 start="^\s*###" end="\($\|#\+\)" contains=@Spell
|
68
|
+
syn region htmlH4 start="^\s*####" end="\($\|#\+\)" contains=@Spell
|
69
|
+
syn region htmlH5 start="^\s*#####" end="\($\|#\+\)" contains=@Spell
|
70
|
+
syn region htmlH6 start="^\s*######" end="\($\|#\+\)" contains=@Spell
|
71
|
+
syn match htmlH1 /^.\+\n=\+$/ contains=@Spell
|
72
|
+
syn match htmlH2 /^.\+\n-\+$/ contains=@Spell
|
73
|
+
|
74
|
+
"highlighting for Markdown groups
|
75
|
+
HtmlHiLink mkdString String
|
76
|
+
HtmlHiLink mkdCode String
|
77
|
+
HtmlHiLink mkdBlockquote Comment
|
78
|
+
HtmlHiLink mkdLineContinue Comment
|
79
|
+
HtmlHiLink mkdListItem Identifier
|
80
|
+
HtmlHiLink mkdRule Identifier
|
81
|
+
|
82
|
+
|
83
|
+
let b:current_syntax = "mkd"
|
84
|
+
|
85
|
+
delcommand HtmlHiLink
|
86
|
+
" vim: ts=8
|
@@ -0,0 +1,324 @@
|
|
1
|
+
" Vim syntax file
|
2
|
+
" Language: Ruby
|
3
|
+
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
4
|
+
" Info: $Id: ruby.vim,v 1.134 2007/05/06 17:55:04 tpope Exp $
|
5
|
+
" URL: http://vim-ruby.rubyforge.org
|
6
|
+
" Anon CVS: See above site
|
7
|
+
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
|
8
|
+
" ----------------------------------------------------------------------------
|
9
|
+
"
|
10
|
+
" Previous Maintainer: Mirko Nasato
|
11
|
+
" Thanks to perl.vim authors, and to Reimer Behrends. :-) (MN)
|
12
|
+
" ----------------------------------------------------------------------------
|
13
|
+
|
14
|
+
if exists("b:current_syntax")
|
15
|
+
finish
|
16
|
+
endif
|
17
|
+
|
18
|
+
if has("folding") && exists("ruby_fold")
|
19
|
+
setlocal foldmethod=syntax
|
20
|
+
endif
|
21
|
+
|
22
|
+
if exists("ruby_space_errors")
|
23
|
+
if !exists("ruby_no_trail_space_error")
|
24
|
+
syn match rubySpaceError display excludenl "\s\+$"
|
25
|
+
endif
|
26
|
+
if !exists("ruby_no_tab_space_error")
|
27
|
+
syn match rubySpaceError display " \+\t"me=e-1
|
28
|
+
endif
|
29
|
+
endif
|
30
|
+
|
31
|
+
" Operators
|
32
|
+
if exists("ruby_operators")
|
33
|
+
syn match rubyOperator "\%([~!^&|*/%+-]\|\%(class\s*\)\@<!<<\|<=>\|<=\|\%(<\|\<class\s\+\u\w*\s*\)\@<!<[^<]\@=\|===\|==\|=\~\|>>\|>=\|=\@<!>\|\*\*\|\.\.\.\|\.\.\|::\)"
|
34
|
+
syn match rubyPseudoOperator "\%(-=\|/=\|\*\*=\|\*=\|&&=\|&=\|&&\|||=\||=\|||\|%=\|+=\|!\~\|!=\)"
|
35
|
+
syn region rubyBracketOperator matchgroup=rubyOperator start="\%([_[:lower:]]\w*[?!=]\=\|[})]\)\@<=\[\s*" end="\s*]" contains=TOP
|
36
|
+
endif
|
37
|
+
|
38
|
+
" Expression Substitution and Backslash Notation
|
39
|
+
syn match rubyEscape "\\\\\|\\[abefnrstv]\|\\\o\{1,3}\|\\x\x\{1,2}" contained display
|
40
|
+
syn match rubyEscape "\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)" contained display
|
41
|
+
|
42
|
+
syn region rubyInterpolation matchgroup=rubyInterpolationDelimiter start="#{" end="}" contained contains=TOP
|
43
|
+
syn match rubyInterpolation "#\%(\$\|@@\=\)\w\+" display contained contains=rubyInterpolationDelimiter,rubyInstanceVariable,rubyClassVariable,rubyGlobalVariable,rubyPredefinedVariable
|
44
|
+
syn match rubyInterpolationDelimiter "#\ze\%(\$\|@@\=\)\w\+" display contained
|
45
|
+
syn match rubyInterpolation "#\$\%(-\w\|\W\)" display contained contains=rubyInterpolationDelimiter,rubyPredefinedVariable,rubyInvalidVariable
|
46
|
+
syn match rubyInterpolationDelimiter "#\ze\$\%(-\w\|\W\)" display contained
|
47
|
+
syn region rubyNoInterpolation start="\\#{" end="}" contained
|
48
|
+
syn match rubyNoInterpolation "\\#{" display contained
|
49
|
+
syn match rubyNoInterpolation "\\#\%(\$\|@@\=\)\w\+" display contained
|
50
|
+
syn match rubyNoInterpolation "\\#\$\W" display contained
|
51
|
+
|
52
|
+
syn match rubyDelimEscape "\\[(<{\[)>}\]]" transparent display contained contains=NONE
|
53
|
+
|
54
|
+
syn region rubyNestedParentheses start="(" end=")" skip="\\\\\|\\)" transparent contained contains=@rubyStringSpecial,rubyNestedParentheses,rubyDelimEscape
|
55
|
+
syn region rubyNestedCurlyBraces start="{" end="}" skip="\\\\\|\\}" transparent contained contains=@rubyStringSpecial,rubyNestedCurlyBraces,rubyDelimEscape
|
56
|
+
syn region rubyNestedAngleBrackets start="<" end=">" skip="\\\\\|\\>" transparent contained contains=@rubyStringSpecial,rubyNestedAngleBrackets,rubyDelimEscape
|
57
|
+
if exists("ruby_operators")
|
58
|
+
syn region rubyNestedSquareBrackets start="\[" end="\]" skip="\\\\\|\\\]" transparent contained contains=@rubyStringSpecial,rubyNestedSquareBrackets,rubyDelimEscape
|
59
|
+
else
|
60
|
+
syn region rubyNestedSquareBrackets start="\[" end="\]" skip="\\\\\|\\\]" transparent containedin=rubyArrayLiteral contained contains=@rubyStringSpecial,rubyNestedSquareBrackets,rubyDelimEscape
|
61
|
+
endif
|
62
|
+
|
63
|
+
syn cluster rubyStringSpecial contains=rubyInterpolation,rubyNoInterpolation,rubyEscape
|
64
|
+
syn cluster rubyExtendedStringSpecial contains=@rubyStringSpecial,rubyNestedParentheses,rubyNestedCurlyBraces,rubyNestedAngleBrackets,rubyNestedSquareBrackets
|
65
|
+
|
66
|
+
" Numbers and ASCII Codes
|
67
|
+
syn match rubyASCIICode "\%(\w\|[]})\"'/]\)\@<!\%(?\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\=\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)\)"
|
68
|
+
syn match rubyInteger "\<0[xX]\x\+\%(_\x\+\)*\>" display
|
69
|
+
syn match rubyInteger "\<\%(0[dD]\)\=\%(0\|[1-9]\d*\%(_\d\+\)*\)\>" display
|
70
|
+
syn match rubyInteger "\<0[oO]\=\o\+\%(_\o\+\)*\>" display
|
71
|
+
syn match rubyInteger "\<0[bB][01]\+\%(_[01]\+\)*\>" display
|
72
|
+
syn match rubyFloat "\<\%(0\|[1-9]\d*\%(_\d\+\)*\)\.\d\+\%(_\d\+\)*\>" display
|
73
|
+
syn match rubyFloat "\<\%(0\|[1-9]\d*\%(_\d\+\)*\)\%(\.\d\+\%(_\d\+\)*\)\=\%([eE][-+]\=\d\+\%(_\d\+\)*\)\>" display
|
74
|
+
|
75
|
+
" Identifiers
|
76
|
+
syn match rubyLocalVariableOrMethod "\<[_[:lower:]][_[:alnum:]]*[?!=]\=" contains=NONE display transparent
|
77
|
+
syn match rubyBlockArgument "&[_[:lower:]][_[:alnum:]]" contains=NONE display transparent
|
78
|
+
|
79
|
+
syn match rubyConstant "\%(\%([.@$]\@<!\.\)\@<!\<\|::\)\_s*\zs\u\w*\%(\>\|::\)\@=\%(\s*(\)\@!"
|
80
|
+
syn match rubyClassVariable "@@\h\w*" display
|
81
|
+
syn match rubyInstanceVariable "@\h\w*" display
|
82
|
+
syn match rubyGlobalVariable "$\%(\h\w*\|-.\)"
|
83
|
+
syn match rubySymbol "[]})\"':]\@<!:\%(\^\|\~\|<<\|<=>\|<=\|<\|===\|==\|=\~\|>>\|>=\|>\||\|-@\|-\|/\|\[]=\|\[]\|\*\*\|\*\|&\|%\|+@\|+\|`\)"
|
84
|
+
syn match rubySymbol "[]})\"':]\@<!:\$\%(-.\|[`~<=>_,;:!?/.'"@$*\&+0]\)"
|
85
|
+
syn match rubySymbol "[]})\"':]\@<!:\%(\$\|@@\=\)\=\h\w*"
|
86
|
+
syn match rubySymbol "[]})\"':]\@<!:\h\w*[?!=]\="
|
87
|
+
syn region rubySymbol start="[]})\"':]\@<!:\"" end="\"" skip="\\\\\|\\\""
|
88
|
+
syn region rubySymbol start="[]})\"':]\@<!:\"" end="\"" skip="\\\\\|\\\"" contains=@rubyStringSpecial fold
|
89
|
+
|
90
|
+
syn match rubyBlockParameter "\h\w*" contained
|
91
|
+
syn region rubyBlockParameterList start="\%(\%(\<do\>\|{\)\s*\)\@<=|" end="|" oneline display contains=rubyBlockParameter
|
92
|
+
|
93
|
+
syn match rubyInvalidVariable "$[^ A-Za-z-]"
|
94
|
+
syn match rubyPredefinedVariable #$[!$&"'*+,./0:;<=>?@\`~1-9]#
|
95
|
+
syn match rubyPredefinedVariable "$_\>" display
|
96
|
+
syn match rubyPredefinedVariable "$-[0FIKadilpvw]\>" display
|
97
|
+
syn match rubyPredefinedVariable "$\%(deferr\|defout\|stderr\|stdin\|stdout\)\>" display
|
98
|
+
syn match rubyPredefinedVariable "$\%(DEBUG\|FILENAME\|KCODE\|LOADED_FEATURES\|LOAD_PATH\|PROGRAM_NAME\|SAFE\|VERBOSE\)\>" display
|
99
|
+
syn match rubyPredefinedConstant "\%(\%(\.\@<!\.\)\@<!\|::\)\_s*\zs\%(MatchingData\|ARGF\|ARGV\|ENV\)\>\%(\s*(\)\@!"
|
100
|
+
syn match rubyPredefinedConstant "\%(\%(\.\@<!\.\)\@<!\|::\)\_s*\zs\%(DATA\|FALSE\|NIL\|RUBY_PLATFORM\|RUBY_RELEASE_DATE\)\>\%(\s*(\)\@!"
|
101
|
+
syn match rubyPredefinedConstant "\%(\%(\.\@<!\.\)\@<!\|::\)\_s*\zs\%(RUBY_VERSION\|STDERR\|STDIN\|STDOUT\|TOPLEVEL_BINDING\|TRUE\)\>\%(\s*(\)\@!"
|
102
|
+
"Obsolete Global Constants
|
103
|
+
"syn match rubyPredefinedConstant "\%(::\)\=\zs\%(PLATFORM\|RELEASE_DATE\|VERSION\)\>"
|
104
|
+
"syn match rubyPredefinedConstant "\%(::\)\=\zs\%(NotImplementError\)\>"
|
105
|
+
|
106
|
+
" Normal Regular Expression
|
107
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="\%(\%(^\|\<\%(and\|or\|while\|until\|unless\|if\|elsif\|when\|not\|then\|else\)\|[;\~=!|&(,[>]\)\s*\)\@<=/" end="/[iomxneus]*" skip="\\\\\|\\/" contains=@rubyStringSpecial fold
|
108
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="\%(\<\%(split\|scan\|gsub\|sub\)\s*\)\@<=/" end="/[iomxneus]*" skip="\\\\\|\\/" contains=@rubyStringSpecial fold
|
109
|
+
|
110
|
+
" Normal String and Shell Command Output
|
111
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="\"" end="\"" skip="\\\\\|\\\"" contains=@rubyStringSpecial fold
|
112
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="'" end="'" skip="\\\\\|\\'" fold
|
113
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="`" end="`" skip="\\\\\|\\`" contains=@rubyStringSpecial fold
|
114
|
+
|
115
|
+
" Generalized Regular Expression
|
116
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="%r\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1[iomxneus]*" skip="\\\\\|\\\z1" contains=@rubyStringSpecial fold
|
117
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="%r{" end="}[iomxneus]*" skip="\\\\\|\\}" contains=@rubyStringSpecial,rubyNestedCurlyBraces,rubyDelimEscape fold
|
118
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="%r<" end=">[iomxneus]*" skip="\\\\\|\\>" contains=@rubyStringSpecial,rubyNestedAngleBrackets,rubyDelimEscape fold
|
119
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="%r\[" end="\][iomxneus]*" skip="\\\\\|\\\]" contains=@rubyStringSpecial,rubyNestedSquareBrackets,rubyDelimEscape fold
|
120
|
+
syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="%r(" end=")[iomxneus]*" skip="\\\\\|\\)" contains=@rubyStringSpecial,rubyNestedParentheses,rubyDelimEscape fold
|
121
|
+
|
122
|
+
" Generalized Single Quoted String, Symbol and Array of Strings
|
123
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[qw]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
|
124
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[qw]{" end="}" skip="\\\\\|\\}" fold contains=rubyNestedCurlyBraces,rubyDelimEscape
|
125
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[qw]<" end=">" skip="\\\\\|\\>" fold contains=rubyNestedAngleBrackets,rubyDelimEscape
|
126
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[qw]\[" end="\]" skip="\\\\\|\\\]" fold contains=rubyNestedSquareBrackets,rubyDelimEscape
|
127
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[qw](" end=")" skip="\\\\\|\\)" fold contains=rubyNestedParentheses,rubyDelimEscape
|
128
|
+
syn region rubySymbol start="%[s]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
|
129
|
+
syn region rubySymbol start="%[s]{" end="}" skip="\\\\\|\\}" fold contains=rubyNestedCurlyBraces,rubyDelimEscape
|
130
|
+
syn region rubySymbol start="%[s]<" end=">" skip="\\\\\|\\>" fold contains=rubyNestedAngleBrackets,rubyDelimEscape
|
131
|
+
syn region rubySymbol start="%[s]\[" end="\]" skip="\\\\\|\\\]" fold contains=rubyNestedSquareBrackets,rubyDelimEscape
|
132
|
+
syn region rubySymbol start="%[s](" end=")" skip="\\\\\|\\)" fold contains=rubyNestedParentheses,rubyDelimEscape
|
133
|
+
|
134
|
+
" Generalized Double Quoted String and Array of Strings and Shell Command Output
|
135
|
+
" Note: %= is not matched here as the beginning of a double quoted string
|
136
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%\z([~`!@#$%^&*_\-+|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" contains=@rubyStringSpecial fold
|
137
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[QWx]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" contains=@rubyStringSpecial fold
|
138
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[QWx]\={" end="}" skip="\\\\\|\\}" contains=@rubyStringSpecial,rubyNestedCurlyBraces,rubyDelimEscape fold
|
139
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[QWx]\=<" end=">" skip="\\\\\|\\>" contains=@rubyStringSpecial,rubyNestedAngleBrackets,rubyDelimEscape fold
|
140
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[QWx]\=\[" end="\]" skip="\\\\\|\\\]" contains=@rubyStringSpecial,rubyNestedSquareBrackets,rubyDelimEscape fold
|
141
|
+
syn region rubyString matchgroup=rubyStringDelimiter start="%[QWx]\=(" end=")" skip="\\\\\|\\)" contains=@rubyStringSpecial,rubyNestedParentheses,rubyDelimEscape fold
|
142
|
+
|
143
|
+
" Here Document
|
144
|
+
syn region rubyHeredocStart matchgroup=rubyStringDelimiter start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<-\=\zs\%(\h\w*\)+ end=+$+ oneline contains=TOP
|
145
|
+
syn region rubyHeredocStart matchgroup=rubyStringDelimiter start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<-\=\zs"\%([^"]*\)"+ end=+$+ oneline contains=TOP
|
146
|
+
syn region rubyHeredocStart matchgroup=rubyStringDelimiter start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<-\=\zs'\%([^']*\)'+ end=+$+ oneline contains=TOP
|
147
|
+
syn region rubyHeredocStart matchgroup=rubyStringDelimiter start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<-\=\zs`\%([^`]*\)`+ end=+$+ oneline contains=TOP
|
148
|
+
|
149
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<\z(\h\w*\)\ze+hs=s+2 matchgroup=rubyStringDelimiter end=+^\z1$+ contains=rubyHeredocStart,@rubyStringSpecial fold keepend
|
150
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<"\z([^"]*\)"\ze+hs=s+2 matchgroup=rubyStringDelimiter end=+^\z1$+ contains=rubyHeredocStart,@rubyStringSpecial fold keepend
|
151
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<'\z([^']*\)'\ze+hs=s+2 matchgroup=rubyStringDelimiter end=+^\z1$+ contains=rubyHeredocStart fold keepend
|
152
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<`\z([^`]*\)`\ze+hs=s+2 matchgroup=rubyStringDelimiter end=+^\z1$+ contains=rubyHeredocStart,@rubyStringSpecial fold keepend
|
153
|
+
|
154
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-\z(\h\w*\)\ze+hs=s+3 matchgroup=rubyStringDelimiter end=+^\s*\zs\z1$+ contains=rubyHeredocStart,@rubyStringSpecial fold keepend
|
155
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-"\z([^"]*\)"\ze+hs=s+3 matchgroup=rubyStringDelimiter end=+^\s*\zs\z1$+ contains=rubyHeredocStart,@rubyStringSpecial fold keepend
|
156
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-'\z([^']*\)'\ze+hs=s+3 matchgroup=rubyStringDelimiter end=+^\s*\zs\z1$+ contains=rubyHeredocStart fold keepend
|
157
|
+
syn region rubyString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-`\z([^`]*\)`\ze+hs=s+3 matchgroup=rubyStringDelimiter end=+^\s*\zs\z1$+ contains=rubyHeredocStart,@rubyStringSpecial fold keepend
|
158
|
+
|
159
|
+
if exists('main_syntax') && main_syntax == 'eruby'
|
160
|
+
let b:ruby_no_expensive = 1
|
161
|
+
end
|
162
|
+
|
163
|
+
syn match rubyAliasDeclaration "[^[:space:];#.()]\+" contained contains=rubySymbol,rubyGlobalVariable,rubyPredefinedVariable nextgroup=rubyAliasDeclaration2 skipwhite
|
164
|
+
syn match rubyAliasDeclaration2 "[^[:space:];#.()]\+" contained contains=rubySymbol,rubyGlobalVariable,rubyPredefinedVariable
|
165
|
+
syn match rubyMethodDeclaration "[^[:space:];#(]\+" contained contains=rubyConstant,rubyBoolean,rubyPseudoVariable,rubyInstanceVariable,rubyClassVariable,rubyGlobalVariable
|
166
|
+
syn match rubyClassDeclaration "[^[:space:];#<]\+" contained contains=rubyConstant
|
167
|
+
syn match rubyModuleDeclaration "[^[:space:];#]\+" contained contains=rubyConstant
|
168
|
+
syn match rubyFunction "\<[_[:alpha:]][_[:alnum:]]*[?!=]\=[[:alnum:].:?!=]\@!" contained containedin=rubyMethodDeclaration
|
169
|
+
syn match rubyFunction "\%(\s\|^\)\@<=[_[:alpha:]][_[:alnum:]]*[?!=]\=\%(\s\|$\)\@=" contained containedin=rubyAliasDeclaration,rubyAliasDeclaration2
|
170
|
+
syn match rubyFunction "\%([[:space:].]\|^\)\@<=\%(\[\]=\=\|\*\*\|[+-]@\=\|[*/%|&^~]\|<<\|>>\|[<>]=\=\|<=>\|===\|==\|=\~\|`\)\%([[:space:];#(]\|$\)\@=" contained containedin=rubyAliasDeclaration,rubyAliasDeclaration2,rubyMethodDeclaration
|
171
|
+
|
172
|
+
" Expensive Mode - match 'end' with the appropriate opening keyword for syntax
|
173
|
+
" based folding and special highlighting of module/class/method definitions
|
174
|
+
if !exists("b:ruby_no_expensive") && !exists("ruby_no_expensive")
|
175
|
+
syn match rubyDefine "\<alias\>" nextgroup=rubyAliasDeclaration skipwhite skipnl
|
176
|
+
syn match rubyDefine "\<def\>" nextgroup=rubyMethodDeclaration skipwhite skipnl
|
177
|
+
syn match rubyClass "\<class\>" nextgroup=rubyClassDeclaration skipwhite skipnl
|
178
|
+
syn match rubyModule "\<module\>" nextgroup=rubyModuleDeclaration skipwhite skipnl
|
179
|
+
syn region rubyBlock start="\<def\>" matchgroup=rubyDefine end="\%(\<def\_s\+\)\@<!\<end\>" contains=TOP fold
|
180
|
+
syn region rubyBlock start="\<class\>" matchgroup=rubyClass end="\<end\>" contains=TOP fold
|
181
|
+
syn region rubyBlock start="\<module\>" matchgroup=rubyModule end="\<end\>" contains=TOP fold
|
182
|
+
|
183
|
+
" modifiers
|
184
|
+
syn match rubyConditionalModifier "\<\%(if\|unless\)\>" display
|
185
|
+
syn match rubyRepeatModifier "\<\%(while\|until\)\>" display
|
186
|
+
|
187
|
+
syn region rubyDoBlock matchgroup=rubyControl start="\<do\>" end="\<end\>" contains=TOP fold
|
188
|
+
" curly bracket block or hash literal
|
189
|
+
syn region rubyCurlyBlock start="{" end="}" contains=TOP fold
|
190
|
+
syn region rubyArrayLiteral matchgroup=rubyArrayDelimiter start="\%(\w\|[\]})]\)\@<!\[" end="]" contains=TOP fold
|
191
|
+
|
192
|
+
" statements without 'do'
|
193
|
+
syn region rubyBlockExpression matchgroup=rubyControl start="\<begin\>" end="\<end\>" contains=TOP fold
|
194
|
+
syn region rubyCaseExpression matchgroup=rubyConditional start="\<case\>" end="\<end\>" contains=TOP fold
|
195
|
+
syn region rubyConditionalExpression matchgroup=rubyConditional start="\%(\%(^\|\.\.\.\=\|[{:,;([<>~\*/%&^|+=-]\|\%(\<[_[:lower:]][_[:alnum:]]*\)\@<![!?]\)\s*\)\@<=\%(if\|unless\)\>" end="\<end\>" contains=TOP fold
|
196
|
+
|
197
|
+
syn keyword rubyConditional then else when contained containedin=rubyCaseExpression
|
198
|
+
syn keyword rubyConditional then else elsif contained containedin=rubyConditionalExpression
|
199
|
+
|
200
|
+
" statements with optional 'do'
|
201
|
+
syn region rubyOptionalDoLine matchgroup=rubyRepeat start="\<for\>" start="\%(\%(^\|\.\.\.\=\|[{:,;([<>~\*/%&^|+-]\|\%(\<[_[:lower:]][_[:alnum:]]*\)\@<![!=?]\)\s*\)\@<=\<\%(until\|while\)\>" matchgroup=rubyOptionalDo end="\%(\<do\>\)" end="\ze\%(;\|$\)" oneline contains=TOP
|
202
|
+
syn region rubyRepeatExpression start="\<for\>" start="\%(\%(^\|\.\.\.\=\|[{:,;([<>~\*/%&^|+-]\|\%(\<[_[:lower:]][_[:alnum:]]*\)\@<![!=?]\)\s*\)\@<=\<\%(until\|while\)\>" matchgroup=rubyRepeat end="\<end\>" contains=TOP nextgroup=rubyOptionalDoLine fold
|
203
|
+
|
204
|
+
if !exists("ruby_minlines")
|
205
|
+
let ruby_minlines = 50
|
206
|
+
endif
|
207
|
+
exec "syn sync minlines=" . ruby_minlines
|
208
|
+
|
209
|
+
else
|
210
|
+
syn match rubyControl "\<def\>" nextgroup=rubyMethodDeclaration skipwhite skipnl
|
211
|
+
syn match rubyControl "\<class\>" nextgroup=rubyClassDeclaration skipwhite skipnl
|
212
|
+
syn match rubyControl "\<module\>" nextgroup=rubyModuleDeclaration skipwhite skipnl
|
213
|
+
syn keyword rubyControl case begin do for if unless while until else elsif then when end
|
214
|
+
syn keyword rubyKeyword alias
|
215
|
+
endif
|
216
|
+
|
217
|
+
" Keywords
|
218
|
+
" Note: the following keywords have already been defined:
|
219
|
+
" begin case class def do end for if module unless until while
|
220
|
+
syn keyword rubyControl and break ensure in next not or redo rescue retry return
|
221
|
+
syn match rubyOperator "\<defined?" display
|
222
|
+
syn keyword rubyKeyword super undef yield
|
223
|
+
syn keyword rubyBoolean true false
|
224
|
+
syn keyword rubyPseudoVariable nil self __FILE__ __LINE__
|
225
|
+
syn keyword rubyBeginEnd BEGIN END
|
226
|
+
|
227
|
+
" Special Methods
|
228
|
+
if !exists("ruby_no_special_methods")
|
229
|
+
syn keyword rubyAccess public protected private
|
230
|
+
syn keyword rubyAttribute attr attr_accessor attr_reader attr_writer
|
231
|
+
syn match rubyControl "\<\%(exit!\|\%(abort\|at_exit\|exit\|fork\|loop\|trap\)\>\)"
|
232
|
+
syn keyword rubyEval eval class_eval instance_eval module_eval
|
233
|
+
syn keyword rubyException raise fail catch throw
|
234
|
+
syn keyword rubyInclude autoload extend include load require
|
235
|
+
syn keyword rubyKeyword callcc caller lambda proc
|
236
|
+
endif
|
237
|
+
|
238
|
+
" Comments and Documentation
|
239
|
+
syn match rubySharpBang "\%^#!.*" display
|
240
|
+
syn keyword rubyTodo FIXME NOTE TODO OPTIMIZE XXX contained
|
241
|
+
syn match rubyComment "#.*" contains=rubySharpBang,rubySpaceError,rubyTodo,@Spell
|
242
|
+
if !exists("ruby_no_comment_fold")
|
243
|
+
syn region rubyMultilineComment start="\%(\%(^\s*#.*\n\)\@<!\%(^\s*#.*\n\)\)\%(\(^\s*#.*\n\)\{1,}\)\@=" end="\%(^\s*#.*\n\)\@<=\%(^\s*#.*\n\)\%(^\s*#\)\@!" contains=rubyComment transparent fold keepend
|
244
|
+
syn region rubyDocumentation start="^=begin\ze\%(\s.*\)\=$" end="^=end\s*$" contains=rubySpaceError,rubyTodo,@Spell fold
|
245
|
+
else
|
246
|
+
syn region rubyDocumentation start="^=begin\s*$" end="^=end\s*$" contains=rubySpaceError,rubyTodo,@Spell
|
247
|
+
endif
|
248
|
+
|
249
|
+
" Note: this is a hack to prevent 'keywords' being highlighted as such when called as methods with an explicit receiver
|
250
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(alias\|and\|begin\|break\|case\|class\|def\|defined\|do\|else\)\>" transparent contains=NONE
|
251
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(elsif\|end\|ensure\|false\|for\|if\|in\|module\|next\|nil\)\>" transparent contains=NONE
|
252
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(not\|or\|redo\|rescue\|retry\|return\|self\|super\|then\|true\)\>" transparent contains=NONE
|
253
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(undef\|unless\|until\|when\|while\|yield\|BEGIN\|END\|__FILE__\|__LINE__\)\>" transparent contains=NONE
|
254
|
+
|
255
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(abort\|at_exit\|attr\|attr_accessor\|attr_reader\)\>" transparent contains=NONE
|
256
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(attr_writer\|autoload\|callcc\|catch\|caller\)\>" transparent contains=NONE
|
257
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(eval\|class_eval\|instance_eval\|module_eval\|exit\)\>" transparent contains=NONE
|
258
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(extend\|fail\|fork\|include\|lambda\)\>" transparent contains=NONE
|
259
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(load\|loop\|private\|proc\|protected\)\>" transparent contains=NONE
|
260
|
+
syn match rubyKeywordAsMethod "\%(\%(\.\@<!\.\)\|::\)\_s*\%(public\|require\|raise\|throw\|trap\)\>" transparent contains=NONE
|
261
|
+
|
262
|
+
" __END__ Directive
|
263
|
+
syn region rubyData matchgroup=rubyDataDirective start="^__END__$" end="\%$" fold
|
264
|
+
|
265
|
+
hi def link rubyClass rubyDefine
|
266
|
+
hi def link rubyModule rubyDefine
|
267
|
+
hi def link rubyDefine Define
|
268
|
+
hi def link rubyFunction Function
|
269
|
+
hi def link rubyConditional Conditional
|
270
|
+
hi def link rubyConditionalModifier rubyConditional
|
271
|
+
hi def link rubyRepeat Repeat
|
272
|
+
hi def link rubyRepeatModifier rubyRepeat
|
273
|
+
hi def link rubyOptionalDo rubyRepeat
|
274
|
+
hi def link rubyControl Statement
|
275
|
+
hi def link rubyInclude Include
|
276
|
+
hi def link rubyInteger Number
|
277
|
+
hi def link rubyASCIICode Character
|
278
|
+
hi def link rubyFloat Float
|
279
|
+
hi def link rubyBoolean Boolean
|
280
|
+
hi def link rubyException Exception
|
281
|
+
if !exists("ruby_no_identifiers")
|
282
|
+
hi def link rubyIdentifier Identifier
|
283
|
+
else
|
284
|
+
hi def link rubyIdentifier NONE
|
285
|
+
endif
|
286
|
+
hi def link rubyClassVariable rubyIdentifier
|
287
|
+
hi def link rubyConstant Type
|
288
|
+
hi def link rubyGlobalVariable rubyIdentifier
|
289
|
+
hi def link rubyBlockParameter rubyIdentifier
|
290
|
+
hi def link rubyInstanceVariable rubyIdentifier
|
291
|
+
hi def link rubyPredefinedIdentifier rubyIdentifier
|
292
|
+
hi def link rubyPredefinedConstant rubyPredefinedIdentifier
|
293
|
+
hi def link rubyPredefinedVariable rubyPredefinedIdentifier
|
294
|
+
hi def link rubySymbol Constant
|
295
|
+
hi def link rubyKeyword Keyword
|
296
|
+
hi def link rubyOperator Operator
|
297
|
+
hi def link rubyPseudoOperator rubyOperator
|
298
|
+
hi def link rubyBeginEnd Statement
|
299
|
+
hi def link rubyAccess Statement
|
300
|
+
hi def link rubyAttribute Statement
|
301
|
+
hi def link rubyEval Statement
|
302
|
+
hi def link rubyPseudoVariable Constant
|
303
|
+
|
304
|
+
hi def link rubyComment Comment
|
305
|
+
hi def link rubyData Comment
|
306
|
+
hi def link rubyDataDirective Delimiter
|
307
|
+
hi def link rubyDocumentation Comment
|
308
|
+
hi def link rubyEscape Special
|
309
|
+
hi def link rubyInterpolationDelimiter Delimiter
|
310
|
+
hi def link rubyNoInterpolation rubyString
|
311
|
+
hi def link rubySharpBang PreProc
|
312
|
+
hi def link rubyRegexpDelimiter rubyStringDelimiter
|
313
|
+
hi def link rubyStringDelimiter Delimiter
|
314
|
+
hi def link rubyRegexp rubyString
|
315
|
+
hi def link rubyString String
|
316
|
+
hi def link rubyTodo Todo
|
317
|
+
|
318
|
+
hi def link rubyInvalidVariable Error
|
319
|
+
hi def link rubyError Error
|
320
|
+
hi def link rubySpaceError rubyError
|
321
|
+
|
322
|
+
let b:current_syntax = "ruby"
|
323
|
+
|
324
|
+
" vim: nowrap sw=2 sts=2 ts=8 noet ff=unix:
|