updated for version 7.0001
diff --git a/runtime/syntax/eterm.vim b/runtime/syntax/eterm.vim
new file mode 100644
index 0000000..9cf38fe
--- /dev/null
+++ b/runtime/syntax/eterm.vim
@@ -0,0 +1,200 @@
+" Vim syntax file
+" Language:	    Eterm configuration file
+" Maintainer:	    Nikolai Weibull <source@pcppopper.org>
+" URL:		    http://www.pcppopper.org/vim/syntax/pcp/eterm/
+" Latest Revision:  2004-05-06
+" arch-tag:	    f4c58caf-2b91-4fc4-96af-e3cad7c70e6b
+
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+" magic number
+syn match   etermMagic		display "^<Eterm-[0-9.]\+>$"
+
+" comments
+syn region  etermComment	matchgroup=etermComment start="^#" end="$" contains=etermTodo
+
+" todo
+syn keyword etermTodo		contained TODO FIXME XXX NOTE
+
+" numbers
+syn match   etermNumber		contained display "\<\(\d\+\|0x\x\{1,2}\)\>"
+
+" strings
+syn region  etermString		contained display oneline start=+"+ skip=+\\"+ end=+"+
+
+" booleans
+syn keyword etermBoolean	contained on off true false yes no
+
+" colors (not pretty, but can't figure out better way...)
+syn match   etermColor		contained display "\s\+#\x\{6}\>"
+syn keyword etermColor		contained white black
+
+" preproc
+syn match   etermPreProc	contained "%\(appname\|exec\|get\|put\|random\|version\|include\|preproc\)("he=e-1
+
+" functions
+syn match   etermFunctions	contained "\<\(copy\|exit\|kill\|nop\|paste\|save\|scroll\|search\|spawn\)("
+
+" and make it easy to refer to the above...
+syn cluster etermGeneral	contains=etermComment,etermNumber,etermString,etermBoolean,etermColor,etermFunction,etermPreProc
+
+" key modifiers
+syn keyword etermKeyMod		contained ctrl shift lock mod1 mod2 mod3 mod4 mod5 alt meta anymod
+syn keyword etermKeyMod		contained button1 button2 button3 button4 button5
+
+" color context
+syn region  etermColorOptions	contained oneline matchgroup=etermOption start="^\s*video\>" matchgroup=etermType end="\<\(normal\|reverse\)\>"
+syn region  etermColorOptions	contained oneline matchgroup=etermOption start="^\s*color\>" matchgroup=etermType end="\<\(bd\|ul\|[0-9]\|1[0-5]\)\>"
+syn keyword etermColorOptions	contained foreground background cursor cursor_text pointer
+
+syn region  etermColorContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+color\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermColorOptions
+
+" attributes context
+syn region  etermAttrOptions	contained oneline matchgroup=etermOption start="^\s*geometry\>" matchgroup=etermType end="\<\d\+x\d\++\d\++\d\+\>"
+syn region  etermAttrOptions	contained oneline matchgroup=etermOption start="^\s*scrollbar_type\>" matchgroup=etermType end="\<\(motif\|xterm\|next\)\>"
+syn region  etermAttrOptions	contained oneline matchgroup=etermOption start="^\s*font\>" matchgroup=etermType end="\<\(bold\|default\|proportional\|fx\|[0-5]\)\>"
+syn keyword etermAttrOptions	contained title name iconname desktop scrollbar_width
+
+syn region  etermAttrContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+attributes\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermAttrOptions
+
+" image context
+" image types
+syn keyword etermImageTypes	contained background trough anchor up_arrow
+syn keyword etermImageTypes	contained left_arrow right_arrow menu menuitem
+syn keyword etermImageTypes	contained submenu button buttonbar down_arrow
+syn region  etermImageOptions	contained transparent oneline matchgroup=etermOption start="^\s*type\>" end="$" contains=etermImageTypes
+" image modes
+syn keyword etermImageModes	contained image trans viewport auto solid
+syn keyword etermImageModesAllow contained allow
+syn region  etermImageOptions	contained transparent oneline matchgroup=etermOption start="^\s*mode\>" end="$" contains=etermImageModes,etermImageModesAllow
+" image states
+syn region  etermImageOptions	contained transparent oneline matchgroup=etermOption start="^\s*state\>" matchgroup=etermType end="\<\(normal\|selected\|clicked\|disabled\)\>"
+" image geometry
+syn region  etermImageOptions	contained transparent oneline matchgroup=etermOption start="^\s*geom\>" matchgroup=etermType end="\s\+\(\d\+x\d\++\d\++\d\+\)\=:\(\(tile\|scale\|hscale\|vscale\|propscale\)d\=\)\="
+" image color modification
+syn region  etermImageOptions	contained transparent oneline matchgroup=etermOption start="^\s*\(cmod\|colormod\)\>" matchgroup=etermType end="\<\(image\|red\|green\|blue\)\>"
+" other keywords
+syn keyword etermImageOptions	contained file padding border bevel color
+
+syn region  etermImageContext	contained transparent fold matchgroup=etermContext start="^\s*begin\s\+image\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermImageOptions
+
+" imageclasses context
+syn keyword etermIClassOptions	contained icon cache path anim
+
+syn region  etermIClassContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+imageclasses\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermImageContext,etermIClassOptions
+
+" menuitem context
+syn region  etermMenuItemOptions contained transparent oneline matchgroup=etermOption start="^\s*action\>" matchgroup=etermType end="\<string\|echo\|submenu\|script\|separator\>"
+syn keyword etermMenuItemOptions contained text rtext
+
+syn region  etermMenuItemContext fold transparent matchgroup=etermContext start="^\s*begin\s\+menuitem\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermMenuItemOptions
+
+" menu context (should contain - as well, but no...)
+syn keyword etermMenuOptions    contained title font_name sep
+
+syn region  etermMenuContext    fold transparent  matchgroup=etermContext start="^\s*begin\s\+menu\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermMenuOptions,etermMenuItemContext
+
+" action context
+syn match   etermActionDef	contained "\<\(to\|string\|echo\|menu\|script\)\>"
+syn region  etermActionsOptions	contained transparent oneline matchgroup=etermOption start="^\s*bind\>" end="$" contains=etermActionDef,etermKeyMod
+
+syn region  etermActionsContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+actions\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermActionsOptions
+
+" button bar context
+syn match   etermButtonDef	contained "\<\(action\|string\|echo\|menu\|scrupt\)\>"
+syn region  etermButtonOptions	contained transparent oneline matchgroup=etermOption start="^\s*button\>" end="$" contains=etermButtonDef
+syn keyword etermButtonOptions	contained font visible dock
+
+syn region  etermButtonContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+button_bar\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermButtonOptions
+
+" multichar context
+syn keyword etermMultiOptions	contained encoding font
+
+syn region  etermMultiContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+multichar\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermMultiOptions
+
+" xim context
+syn keyword etermXimOptions     contained input_method preedit_type
+
+syn region  etermXimContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+xim\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermXimOptions
+
+" toggles context
+syn keyword etermTogOptions	contained map_alert visual_bell login_shell scrollbar utmp_logging meta8 iconic no_input
+syn keyword etermTogOptions	contained home_on_output home_on_input scrollbar_floating scrollbar_right scrollbar_popup
+syn keyword etermTogOptions	contained borderless double_buffer no_cursor pause xterm_select select_line
+syn keyword etermTogOptions	contained select_trailing_spaces report_as_keysyms itrans immotile_trans buttonbar
+syn keyword etermTogOptions	contained resize_gravity
+
+syn region  etermTogContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+toggles\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermTogOptions
+
+" keyboard context
+syn keyword etermKeyboardOptions contained smallfont_key bigfont_key keysym meta_mod alt_mod
+syn keyword etermKeyboardOptions contained greek numlock_mod app_keypad app_cursor
+
+syn region  etermKeyboardContext fold transparent  matchgroup=etermContext start="^\s*begin\s\+keyboard\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermKeyboardOptions
+
+" misc context
+syn keyword etermMiscOptions	contained print_pipe save_lines cut_chars min_anchor_size
+syn keyword etermMiscOptions	contained border_width line_space finished_title term_name
+syn keyword etermMiscOptions	contained finished_text exec
+
+syn region  etermMiscContext	fold transparent  matchgroup=etermContext start="^\s*begin\s\+misc\s*$" end="^\s*end\>\(\s\+.\{-0,}\)\=$" contains=@etermGeneral,etermMiscOptions
+
+if exists("eterm_minlines")
+  let b:eterm_minlines = eterm_minlines
+else
+  let b:eterm_minlines = 30
+endif
+exec "syn sync minlines=" . b:eterm_minlines
+
+" 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_eterm_syn_inits")
+  if version < 508
+    let did_eterm_syn_inits = 1
+    command -nargs=+ HiLink hi link <args>
+  else
+    command -nargs=+ HiLink hi def link <args>
+  endif
+
+  HiLink etermMagic		Special
+  HiLink etermComment		Comment
+  HiLink etermTodo		Todo
+  HiLink etermNumber		Number
+  HiLink etermString		String
+  HiLink etermBoolean		Boolean
+  HiLink etermColor		Number
+  HiLink etermPreProc		PreProc
+  HiLink etermFunctions    	Function
+  HiLink etermKeyMod		Special
+  HiLink etermContext		Keyword
+  HiLink etermOption		Keyword
+  HiLink etermType		Type
+  HiLink etermColorOptions	Keyword
+  HiLink etermAttrOptions	Keyword
+  HiLink etermIClassOptions	Keyword
+  HiLink etermImageTypes	Type
+  HiLink etermImageModes	Type
+  HiLink etermImageModesAllow	Keyword
+  HiLink etermImageOptions	Keyword
+  HiLink etermMenuOptions	Keyword
+  HiLink etermMenuItemOptions	Keyword
+  HiLink etermActionDef	Type
+  HiLink etermActionsOptions	Keyword
+  HiLink etermButtonDef	Type
+  HiLink etermButtonOptions	Keyword
+  HiLink etermMultiOptions	Keyword
+  HiLink etermXimOptions	Keyword
+  HiLink etermTogOptions	Keyword
+  HiLink etermKeyboardOptions	Keyword
+  HiLink etermMiscOptions	Keyword
+  delcommand HiLink
+endif
+
+let b:current_syntax = "eterm"
+
+" vim: set sts=2 sw=2: