tomkersten-vixploder 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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:
|