Skip to content

Commit

Permalink
first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
skammer committed Jul 14, 2010
0 parents commit e401b8b
Show file tree
Hide file tree
Showing 3 changed files with 317 additions and 0 deletions.
5 changes: 5 additions & 0 deletions README.textile
@@ -0,0 +1,5 @@
h1. VimL (vimscript) syntax highlighting for TextMate

Terribly incomplete. I was too lazy to list all reserved words, built-in functions, etc.

Other than that, it does nice job highlighting vim files.
298 changes: 298 additions & 0 deletions VimL.tmbundle/Syntaxes/VimL.tmLanguage
@@ -0,0 +1,298 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>vim</string>
</array>
<key>foldingStartMarker</key>
<string>^(if|while|for|fu|function|augroup|aug)</string>
<key>foldingStopMarker</key>
<string>(endif|endwhile|endfor|endf|endfunction|augroup\.END|aug\.END)$</string>
<key>name</key>
<string>VimL</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#string_quoted_double</string>
</dict>
<dict>
<key>include</key>
<string>#string_quoted_single</string>
</dict>
<dict>
<key>include</key>
<string>#string_regex</string>
</dict>
<dict>
<key>include</key>
<string>#inline_comment</string>
</dict>
<dict>
<key>include</key>
<string>#number_int</string>
</dict>
<dict>
<key>include</key>
<string>#number_hex</string>
</dict>
<dict>
<key>include</key>
<string>#keyword</string>
</dict>
<dict>
<key>include</key>
<string>#function</string>
</dict>
<dict>
<key>include</key>
<string>#support_function</string>
</dict>
<dict>
<key>include</key>
<string>#support_variable</string>
</dict>
<dict>
<key>include</key>
<string>#support_type</string>
</dict>
<dict>
<key>include</key>
<string>#function_params</string>
</dict>
<dict>
<key>include</key>
<string>#function_definition</string>
</dict>
<dict>
<key>include</key>
<string>#variable</string>
</dict>
<dict>
<key>include</key>
<string>#expr</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>comment</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.vim</string>
</dict>
</dict>
<key>match</key>
<string>^\s*".*$</string>
<key>name</key>
<string>comment.line.quotes.viml</string>
</dict>
</array>
</dict>
<key>expr</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>(\|\||&amp;&amp;|==(\?|#)?|(!|&gt;|&lt;)=(#|\?)?|(=|!)~(#|\?)?|(&gt;|&lt;)(#|\?)is|isnot|\.|\*|\\|%)</string>
<key>name</key>
<string>storage.function.viml</string>
</dict>
</array>
</dict>
<key>function</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b(fu(n|nction)?|end(f|fu|fun|function)?)\b</string>
<key>name</key>
<string>storage.function.viml</string>
</dict>
</array>
</dict>
<key>function_definition</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>(([sSgGbBwWtTlL]|)?:?\w+)(?=\()</string>
<key>name</key>
<string>entity.name.function.viml</string>
</dict>
</array>
</dict>
<key>function_params</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>-\w+=</string>
<key>name</key>
<string>support.type.viml</string>
</dict>
</array>
</dict>
<key>inline_comment</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.vim</string>
</dict>
</dict>
<key>match</key>
<string>(?!\$)(")(?!\{).*$\n?</string>
<key>name</key>
<string>comment.line.quotes.viml</string>
</dict>
</array>
</dict>
<key>keyword</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b(if|while|for|return|end(if|for|while)?|au(g|group)|else(if|)?|do|in|:)\b</string>
<key>name</key>
<string>keyword.control.viml</string>
</dict>
</array>
</dict>
<key>number_hex</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>#[0-9a-f]{6}</string>
<key>name</key>
<string>constant.numeric.hex</string>
</dict>
</array>
</dict>
<key>number_int</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>-?\d+</string>
<key>name</key>
<string>constant.numeric.integer</string>
</dict>
</array>
</dict>
<key>string_quoted_double</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>"(\\\\|\\"|[^\n"])*"</string>
<key>name</key>
<string>string.quoted.double.viml</string>
</dict>
</array>
</dict>
<key>string_quoted_single</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>'(\\|\'|[^\n'])*'</string>
<key>name</key>
<string>string.quoted.single.viml</string>
</dict>
</array>
</dict>
<key>string_regex</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>/(\\\\|\\/|[^\n/])*/</string>
<key>name</key>
<string>string.regexp.viml</string>
</dict>
</array>
</dict>
<key>support_function</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b(set(local|global)?|let|command|filetype|colorscheme|\w*map|syn|exe(c|cute)?|ec(ho|)?|au(tocmd|)?)\b</string>
<key>name</key>
<string>support.function.viml</string>
</dict>
</array>
</dict>
<key>support_type</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>&lt;.*?&gt;</string>
<key>name</key>
<string>support.type.viml</string>
</dict>
</array>
</dict>
<key>support_variable</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b(am(enu|)?|(hl|inc)?search|[Bb]uf([Nn]ew[Ff]ile|[Rr]ead)?|[Ff]ile[Tt]ype)\b</string>
<key>name</key>
<string>support.variable.viml</string>
</dict>
</array>
</dict>
<key>variable</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>([sSgGbBwWlLaAvV]:|@|$|&amp;(?!&amp;))\w*</string>
<key>name</key>
<string>variable.other.viml</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.viml</string>
<key>uuid</key>
<string>0555180C-1AF8-4D94-9937-4434C2AE07E5</string>
</dict>
</plist>
14 changes: 14 additions & 0 deletions VimL.tmbundle/info.plist
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>name</key>
<string>VimL</string>
<key>ordering</key>
<array>
<string>0555180C-1AF8-4D94-9937-4434C2AE07E5</string>
</array>
<key>uuid</key>
<string>949B66F0-DB0F-46CE-B6CE-7A2A5317E7F5</string>
</dict>
</plist>

0 comments on commit e401b8b

Please sign in to comment.