summaryrefslogtreecommitdiffstats
path: root/after
diff options
context:
space:
mode:
Diffstat (limited to 'after')
-rw-r--r--after/indent/html.vim33
-rw-r--r--after/syntax/coffee.vim21
-rw-r--r--after/syntax/haml.vim13
-rw-r--r--after/syntax/html.vim11
-rw-r--r--after/syntax/ruby.vim20
5 files changed, 98 insertions, 0 deletions
diff --git a/after/indent/html.vim b/after/indent/html.vim
new file mode 100644
index 00000000..10ca6ce5
--- /dev/null
+++ b/after/indent/html.vim
@@ -0,0 +1,33 @@
+" Language: CoffeeScript
+" Maintainer: Mick Koch <kchmck@gmail.com>
+" URL: http://github.com/kchmck/vim-coffee-script
+" License: WTFPL
+
+" Load the coffee and html indent functions.
+unlet b:did_indent
+runtime indent/coffee.vim
+let s:coffeeIndentExpr = &l:indentexpr
+
+" Load html last so it can overwrite coffee settings.
+unlet b:did_indent
+runtime indent/html.vim
+let s:htmlIndentExpr = &l:indentexpr
+
+" Inject our wrapper indent function.
+setlocal indentexpr=GetCoffeeHtmlIndent(v:lnum)
+
+function! GetCoffeeHtmlIndent(curlinenum)
+ " See if we're inside a coffeescript block.
+ let scriptlnum = searchpair('<script [^>]*type="text/coffeescript"[^>]*>', '',
+ \ '</script>', 'bWn')
+ let prevlnum = prevnonblank(a:curlinenum)
+
+ " If we're in the script block and the previous line isn't the script tag
+ " itself, use coffee indenting.
+ if scriptlnum && scriptlnum != prevlnum
+ exec 'return ' s:coffeeIndentExpr
+ endif
+
+ " Otherwise use html indenting.
+ exec 'return ' s:htmlIndentExpr
+endfunction
diff --git a/after/syntax/coffee.vim b/after/syntax/coffee.vim
new file mode 100644
index 00000000..92b83596
--- /dev/null
+++ b/after/syntax/coffee.vim
@@ -0,0 +1,21 @@
+" This file describes a very basic syntax for TomDoc comments in a
+" CoffeeScript file.
+"
+" For more information on TomDoc, check it out here: http://tomdoc.org/
+"
+
+syn keyword tomdocKeywords Returns containedin=coffeeComment contained
+syn keyword tomdocKeywords Yields containedin=coffeeComment contained
+syn keyword tomdocKeywords Raises containedin=coffeeComment contained
+syn keyword tomdocKeywords Examples containedin=coffeeComment contained
+syn keyword tomdocKeywords Signature containedin=coffeeComment contained
+
+syn match tomdocArguments +\s*[A-Za-z0-9_\-&\*:]*\(\s*- \)+he=e-3 containedin=coffeeComment contained
+
+syn match tomdocDescriptions +\s*Public:+he=e-1 containedin=coffeeComment contained
+syn match tomdocDescriptions +\s*Internal:+he=e-1 containedin=coffeeComment contained
+syn match tomdocDescriptions +\s*Deprecated:+he=e-1 containedin=coffeeComment contained
+
+hi default link tomdocDescriptions TODO
+hi default link tomdocKeywords TODO
+hi default link tomdocArguments HELP
diff --git a/after/syntax/haml.vim b/after/syntax/haml.vim
new file mode 100644
index 00000000..4c517ebb
--- /dev/null
+++ b/after/syntax/haml.vim
@@ -0,0 +1,13 @@
+" Language: CoffeeScript
+" Maintainer: Sven Felix Oberquelle <Svelix.Github@gmail.com>
+" URL: http://github.com/kchmck/vim-coffee-script
+" License: WTFPL
+
+" Inherit coffee from html so coffeeComment isn't redefined and given higher
+" priority than hamlInterpolation.
+syn cluster hamlCoffeescript contains=@htmlCoffeeScript
+syn region hamlCoffeescriptFilter matchgroup=hamlFilter
+\ start="^\z(\s*\):coffee\z(script\)\?\s*$"
+\ end="^\%(\z1 \| *$\)\@!"
+\ contains=@hamlCoffeeScript,hamlInterpolation
+\ keepend
diff --git a/after/syntax/html.vim b/after/syntax/html.vim
new file mode 100644
index 00000000..9e2eb3a1
--- /dev/null
+++ b/after/syntax/html.vim
@@ -0,0 +1,11 @@
+" Language: CoffeeScript
+" Maintainer: Mick Koch <kchmck@gmail.com>
+" URL: http://github.com/kchmck/vim-coffee-script
+" License: WTFPL
+
+" Syntax highlighting for text/coffeescript script tags
+syn include @htmlCoffeeScript syntax/coffee.vim
+syn region coffeeScript start=#<script [^>]*type="text/coffeescript"[^>]*>#
+\ end=#</script>#me=s-1 keepend
+\ contains=@htmlCoffeeScript,htmlScriptTag,@htmlPreproc
+\ containedin=htmlHead
diff --git a/after/syntax/ruby.vim b/after/syntax/ruby.vim
new file mode 100644
index 00000000..1d164fdf
--- /dev/null
+++ b/after/syntax/ruby.vim
@@ -0,0 +1,20 @@
+" This file describes a very basic syntax for TomDoc comments in a Ruby file.
+"
+" For more information on TomDoc, check it out here: http://tomdoc.org/
+"
+
+syn keyword tomdocKeywords Returns containedin=rubyComment contained
+syn keyword tomdocKeywords Yields containedin=rubyComment contained
+syn keyword tomdocKeywords Raises containedin=rubyComment contained
+syn keyword tomdocKeywords Examples containedin=rubyComment contained
+syn keyword tomdocKeywords Signature containedin=rubyComment contained
+
+syn match tomdocArguments +\s*[A-Za-z0-9_\-&\*:]*\(\s*- \)+he=e-3 containedin=rubyComment contained
+
+syn match tomdocDescriptions +\s*Public:+he=e-1 containedin=rubyComment contained
+syn match tomdocDescriptions +\s*Internal:+he=e-1 containedin=rubyComment contained
+syn match tomdocDescriptions +\s*Deprecated:+he=e-1 containedin=rubyComment contained
+
+hi default link tomdocDescriptions TODO
+hi default link tomdocKeywords TODO
+hi default link tomdocArguments HELP