I've attached a patch to add a "vroom" filetype into vim, with syntax 
highlighting and filetype configuration. Could you integrate it into the vim 
repository?

It's merged from https://github.com/google/vim-ft.vroom, which is itself under 
Apache license, but I have approval to license this patch under the Vim license.

David

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.
diff -r d8d7de0a150b runtime/filetype.vim
--- a/runtime/filetype.vim	Wed Jul 09 17:51:51 2014 +0200
+++ b/runtime/filetype.vim	Thu Jul 10 10:11:44 2014 -0700
@@ -2297,6 +2297,9 @@
 " VRML V1.0c
 au BufNewFile,BufRead *.wrl			setf vrml
 
+" Vroom (vim testing and executable documentation)
+au BufNewFile,BufRead *.vroom			setf vroom
+
 " Webmacro
 au BufNewFile,BufRead *.wm			setf webmacro
 
diff -r d8d7de0a150b runtime/ftplugin/vroom.vim
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/runtime/ftplugin/vroom.vim	Thu Jul 10 10:11:44 2014 -0700
@@ -0,0 +1,35 @@
+" Vim filetype plugin file
+" Language:	Vroom (vim testing and executable documentation)
+" Maintainer:	David Barnett (https://github.com/google/vim-ft.vroom)
+" Last Change:	2014 Jul 7
+
+if exists('b:did_ftplugin')
+  finish
+endif
+let b:did_ftplugin = 1
+
+let s:cpo_save = &cpo
+set cpo-=C
+
+
+let b:undo_ftplugin = 'setlocal formatoptions< shiftwidth< softtabstop<' .
+    \ ' expandtab< iskeyword< comments< commentstring<'
+
+setlocal formatoptions-=t
+
+" The vroom interpreter doesn't accept anything but 2-space indent.
+setlocal shiftwidth=2
+setlocal softtabstop=2
+setlocal expandtab
+
+" To allow tag lookup and autocomplete for whole autoload functions, '#' must be
+" a keyword character. This also conforms to the behavior of ftplugin/vim.vim.
+setlocal iskeyword+=#
+
+" Vroom files have no comments (text is inert documentation unless indented).
+setlocal comments=
+setlocal commentstring=
+
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff -r d8d7de0a150b runtime/indent/vroom.vim
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/runtime/indent/vroom.vim	Thu Jul 10 10:11:44 2014 -0700
@@ -0,0 +1,21 @@
+" Vim indent file
+" Language:	Vroom (vim testing and executable documentation)
+" Maintainer:	David Barnett (https://github.com/google/vim-ft.vroom)
+" Last Change:	2014 Jul 7
+
+if exists('b:did_indent')
+  finish
+endif
+let b:did_indent = 1
+
+let s:cpo_save = &cpo
+set cpo-=C
+
+
+let b:undo_indent = 'setlocal autoindent<'
+
+setlocal autoindent
+
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff -r d8d7de0a150b runtime/syntax/vroom.vim
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/runtime/syntax/vroom.vim	Thu Jul 10 10:11:44 2014 -0700
@@ -0,0 +1,113 @@
+" Vim syntax file
+" Language:	Vroom (vim testing and executable documentation)
+" Maintainer:	David Barnett (https://github.com/google/vim-ft.vroom)
+" Last Change:	2014 July 7
+
+" For version 5.x: Clear all syntax items.
+" For version 6.x and later: Quit when a syntax file was already loaded.
+if v:version < 600
+  syntax clear
+elseif exists('b:current_syntax')
+  finish
+endif
+
+let s:cpo_save = &cpo
+set cpo-=C
+
+
+syn include @vroomVim syntax/vim.vim
+syn include @vroomShell syntax/sh.vim
+
+syntax region vroomAction
+    \ matchgroup=vroomOutput
+    \ start='\m^  ' end='\m$' keepend
+    \ contains=vroomControlBlock
+
+syntax region vroomAction
+    \ matchgroup=vroomOutput
+    \ start='\m^  & ' end='\m$' keepend
+    \ contains=vroomControlBlock
+
+syntax match vroomOutput '\m^  &$'
+
+syntax region vroomMessageBody
+    \ matchgroup=vroomMessage
+    \ start='\m^  \~ ' end='\m$' keepend
+    \ contains=vroomControlBlock
+
+syntax region vroomColoredAction
+    \ matchgroup=vroomInput
+    \ start='\m^  > ' end='\m$' keepend
+    \ contains=vimNotation,vroomControlBlock
+syntax region vroomAction
+    \ matchgroup=vroomInput
+    \ start='\m^  % ' end='\m$' keepend
+    \ contains=vimNotation,vroomControlBlock
+
+syntax region vroomAction
+    \ matchgroup=vroomContinuation
+    \ start='\m^  |' end='\m$' keepend
+
+syntax region vroomAction
+    \ start='\m^  \ze:' end='\m$' keepend
+    \ contains=@vroomVim,vroomControlBlock
+
+syntax region vroomAction
+    \ matchgroup=vroomDirective
+    \ start='\m^  @\i\+' end='\m$' keepend
+    \ contains=vroomControlBlock
+
+syntax region vroomSystemAction
+    \ matchgroup=vroomSystem
+    \ start='\m^  ! ' end='\m$' keepend
+    \ contains=@vroomShell,vroomControlBlock
+
+syntax region vroomHijackAction
+    \ matchgroup=vroomHijack
+    \ start='\m^  \$ ' end='\m$' keepend
+    \ contains=vroomControlBlock
+
+syntax match vroomControlBlock contains=vroomControlEscape,@vroomControls
+    \ '\v \([^&()][^()]*\)$'
+
+syntax match vroomControlEscape '\m&' contained
+
+syntax cluster vroomControls
+    \ contains=vroomDelay,vroomMode,vroomBuffer,vroomRange
+    \,vroomChannel,vroomBind,vroomStrictness
+syntax match vroomRange '\v\.(,\+?(\d+|\$)?)?' contained
+syntax match vroomRange '\v\d*,\+?(\d+|\$)?' contained
+syntax match vroomBuffer '\v\d+,@!' contained
+syntax match vroomDelay '\v\d+(\.\d+)?s' contained
+syntax match vroomMode '\v<%(regex|glob|verbatim)' contained
+syntax match vroomChannel '\v<%(stderr|stdout|command|status)>' contained
+syntax match vroomBind '\v<bind>' contained
+syntax match vroomStrictness '\v\<%(STRICT|RELAXED|GUESS-ERRORS)\>' contained
+
+highlight default link vroomInput Identifier
+highlight default link vroomDirective vroomInput
+highlight default link vroomControlBlock vroomInput
+highlight default link vroomSystem vroomInput
+highlight default link vroomOutput Statement
+highlight default link vroomContinuation Constant
+highlight default link vroomHijack Special
+highlight default link vroomColoredAction Statement
+highlight default link vroomSystemAction vroomSystem
+highlight default link vroomHijackAction vroomHijack
+highlight default link vroomMessage vroomOutput
+highlight default link vroomMessageBody Constant
+
+highlight default link vroomControlEscape Special
+highlight default link vroomBuffer vroomInput
+highlight default link vroomRange Include
+highlight default link vroomMode Constant
+highlight default link vroomDelay Type
+highlight default link vroomStrictness vroomMode
+highlight default link vroomChannel vroomMode
+highlight default link vroomBind vroomMode
+
+let b:current_syntax = 'vroom'
+
+
+let &cpo = s:cpo_save
+unlet s:cpo_save

Raspunde prin e-mail lui