diff --git a/runtime/syntax/form.vim b/runtime/syntax/form.vim
new file mode 100644
index 0000000..726bf47
--- /dev/null
+++ b/runtime/syntax/form.vim
@@ -0,0 +1,101 @@
+" Vim syntax file
+" Language:	FORM
+" Maintainer:	Michael M. Tung <michael.tung@uni-mainz.de>
+" Last Change:	2001 May 10
+
+" First public release based on 'Symbolic Manipulation with FORM'
+" by J.A.M. Vermaseren, CAN, Netherlands, 1991.
+" This syntax file is still in development. Please send suggestions
+" to the maintainer.
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+syn case ignore
+
+" A bunch of useful FORM keywords
+syn keyword formType		global local
+syn keyword formHeaderStatement	symbol symbols cfunction cfunctions
+syn keyword formHeaderStatement	function functions vector vectors
+syn keyword formHeaderStatement	set sets index indices
+syn keyword formHeaderStatement	dimension dimensions unittrace
+syn keyword formStatement	id identify drop skip
+syn keyword formStatement	write nwrite
+syn keyword formStatement	format print nprint load save
+syn keyword formStatement	bracket brackets
+syn keyword formStatement	multiply count match only discard
+syn keyword formStatement	trace4 traceN contract symmetrize antisymmetrize
+syn keyword formConditional	if else endif while
+syn keyword formConditional	repeat endrepeat label goto
+
+" some special functions
+syn keyword formStatement	g_ gi_ g5_ g6_ g7_ 5_ 6_ 7_
+syn keyword formStatement	e_ d_ delta_ theta_ sum_ sump_
+
+" pattern matching for keywords
+syn match   formComment		"^\ *\*.*$"
+syn match   formComment		"\;\ *\*.*$"
+syn region  formString		start=+"+  end=+"+
+syn region  formString		start=+'+  end=+'+
+syn match   formPreProc		"^\=\#[a-zA-z][a-zA-Z0-9]*\>"
+syn match   formNumber		"\<\d\+\>"
+syn match   formNumber		"\<\d\+\.\d*\>"
+syn match   formNumber		"\.\d\+\>"
+syn match   formNumber		"-\d" contains=Number
+syn match   formNumber		"-\.\d" contains=Number
+syn match   formNumber		"i_\+\>"
+syn match   formNumber		"fac_\+\>"
+syn match   formDirective	"^\=\.[a-zA-z][a-zA-Z0-9]*\>"
+
+" hi User Labels
+syn sync ccomment formComment minlines=10
+
+" Define the default highlighting.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if version >= 508 || !exists("did_form_syn_inits")
+  if version < 508
+    let did_form_syn_inits = 1
+    command -nargs=+ HiLink hi link <args>
+  else
+    command -nargs=+ HiLink hi def link <args>
+  endif
+
+  HiLink formConditional	Conditional
+  HiLink formNumber		Number
+  HiLink formStatement		Statement
+  HiLink formComment		Comment
+  HiLink formPreProc		PreProc
+  HiLink formDirective		PreProc
+  HiLink formType		Type
+  HiLink formString		String
+
+  if !exists("form_enhanced_color")
+    HiLink formHeaderStatement	Statement
+  else
+  " enhanced color mode
+    HiLink formHeaderStatement	HeaderStatement
+    " dark and a light background for local types
+    if &background == "dark"
+      hi HeaderStatement term=underline ctermfg=LightGreen guifg=LightGreen gui=bold
+    else
+      hi HeaderStatement term=underline ctermfg=DarkGreen guifg=SeaGreen gui=bold
+    endif
+    " change slightly the default for dark gvim
+    if has("gui_running") && &background == "dark"
+      hi Conditional guifg=LightBlue gui=bold
+      hi Statement guifg=LightYellow
+    endif
+  endif
+
+  delcommand HiLink
+endif
+
+  let b:current_syntax = "form"
+
+" vim: ts=8
