updated for version 7.0203
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 53b9899..53411ad 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.0aa.  Last change: 2006 Feb 20
+*options.txt*	For Vim version 7.0aa.  Last change: 2006 Feb 21
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -6002,6 +6002,14 @@
 	All fields except the {item} is optional.  A single percent sign can
 	be given as "%%".  Up to 80 items can be specified.
 
+	When the option starts with "%!" then it is used as an expression,
+	evaluated and the result is used as the option value.  Example: >
+		:set statusline=%!MyStatusLine()
+<	The result can contain %{} items that will be evaluated too.
+
+	When there is error while evaluating the option then it will be made
+	empty to avoid further errors.  Otherwise screen updating would loop.
+
 	Note that the only effect of 'ruler' when this option is set (and
 	'laststatus' is 2) is controlling the output of |CTRL-G|.
 
@@ -6060,7 +6068,7 @@
 	      percentage described for 'ruler'.  Always 3 in length.
 	a S   Argument list status as in default title.  ({current} of {max})
 	      Empty if the argument file count is zero or one.
-	{ NF  Evaluate expression between '{' and '}' and substitute result.
+	{ NF  Evaluate expression between '%{' and '}' and substitute result.
 	      Note that there is no '%' before the closing '}'.
 	( -   Start of item group.  Can be used for setting the width and
 	      alignment of a section.  Must be followed by %) somewhere.
@@ -6069,6 +6077,10 @@
 	      No width fields allowed.
 	= -   Separation point between left and right aligned items.
 	      No width fields allowed.
+	# -   Set highlight group.  The name must follow and then a # again.
+	      Thus use %#HLname# for highlight group HLname.  The same
+	      highlighting is used, also for the statusline of non-current
+	      windows.
 	* -   Set highlight group to User{N}, where {N} is taken from the
 	      minwid field, e.g. %1*.  Restore normal highlight with %* or %0*.
 	      The difference between User{N} and StatusLine  will be applied
@@ -6264,7 +6276,7 @@
 
 	The value is evaluated like with 'statusline'.  You can use
 	|tabpagenr()|, |tabpagewinnr()| and |tabpagebuflist()| to figure out
-	the text to be displayed.
+	the text to be displayed.  See |setting-tabline| for more info.
 
 	Keep in mind that only one of the tab pages is the current one, others
 	are invisible and you can't jump to their windows.
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 517c4dd..630e0f8 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6582,6 +6582,7 @@
 setqflist()	eval.txt	/*setqflist()*
 setreg()	eval.txt	/*setreg()*
 setting-guifont	gui.txt	/*setting-guifont*
+setting-tabline	tabpage.txt	/*setting-tabline*
 setwinvar()	eval.txt	/*setwinvar()*
 sftp	pi_netrw.txt	/*sftp*
 sgml.vim	syntax.txt	/*sgml.vim*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 94218ec..230ec6e 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Feb 20
+*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Feb 21
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -30,7 +30,10 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-'tabline' documentation with an example; esp for the highlighting
+Remove resetting "bold" from screen_start_highlight()?
+
+Using 'tabline' breaks using mouse to select a tab.  How to do that?
+See suggestion from Tony Mechelynck.
 
 P_INSECURE should be remembered for local option values separately.
 
@@ -63,6 +66,7 @@
     ":tab!" to open it at the end, ":0tab" to open at the start.
     ":tab split" opens tab with window same as current window.
     ":tpsplit" would split the tab with all its windows.
+In GUI: right click can popup menu to close a specific tab.
 Option to put tab line at the left or right?  Need an option to specify its
 witdh.  It's like a separate window with ":tabs" output.
     :tabdo    ":tabdo windo cmd" should also work
@@ -85,6 +89,8 @@
 
 Crash with X command server (Ciaran McCreesh).
 
+"dip" in end empty lines at end of file leaves one line. (Matt Mzyzik)
+
 Ctags still hasn't included the patch.  Darren is looking for someone to do
 maintanance.
 
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 7f93bcf..4d9fd51 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Feb 18
+*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Feb 21
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -654,6 +654,8 @@
 
 Sinhala (Sri Lanka) (Harshula Jayasuriya)
 
+Tamil in TSCII encoding (Yegappan Lakshmanan)
+
 
 New message translations: ~
 
@@ -1016,6 +1018,12 @@
 The colortest.vim script can now be invoked directly with ":source" or
 ":runtime".
 
+The 'statusline' option and other options that support the same format can now
+use these new features:
+- When it starts with "%!" the value is first evaluated as an expression
+  before parsing the value.
+- "%#HLname#" can be used to start highlighting with HLname.
+
 ==============================================================================
 COMPILE TIME CHANGES					*compile-changes-7*
 
@@ -1710,4 +1718,8 @@
 Motif: In diff mode dragging one scrollbar didn't update the scrollbar of the
 other diff'ed window.
 
+When editing in an xterm with a different number of colors than expected the
+screen would be cleared and redrawn, causing the message about the edited file
+to be cleared.  Now set "keep_msg" to redraw the last message.
+
  vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/syntax/mgl.vim b/runtime/syntax/mgl.vim
new file mode 100644
index 0000000..6049e8a
--- /dev/null
+++ b/runtime/syntax/mgl.vim
@@ -0,0 +1,128 @@
+" Vim syntax file
+" Language:	MGL
+" Version: 1.0
+" Last Change:	2006 Feb 21
+" Maintainer:  Gero Kuhlmann <gero@gkminix.han.de>
+"
+" $Id$
+"
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+
+syn sync lines=250
+
+syn keyword mglBoolean		true false
+syn keyword mglConditional	if else then
+syn keyword mglConstant		nil
+syn keyword mglPredefined	maxint
+syn keyword mglLabel		case goto label
+syn keyword mglOperator		to downto in of with
+syn keyword mglOperator		and not or xor div mod
+syn keyword mglRepeat		do for repeat while to until
+syn keyword mglStatement	procedure function break continue return restart
+syn keyword mglStatement	program begin end const var type
+syn keyword mglStruct		record
+syn keyword mglType		integer string char boolean char ipaddr array
+
+
+" String
+if !exists("mgl_one_line_string")
+  syn region  mglString matchgroup=mglString start=+'+ end=+'+ contains=mglStringEscape
+  syn region  mglString matchgroup=mglString start=+"+ end=+"+ contains=mglStringEscapeGPC
+else
+  "wrong strings
+  syn region  mglStringError matchgroup=mglStringError start=+'+ end=+'+ end=+$+ contains=mglStringEscape
+  syn region  mglStringError matchgroup=mglStringError start=+"+ end=+"+ end=+$+ contains=mglStringEscapeGPC
+  "right strings
+  syn region  mglString matchgroup=mglString start=+'+ end=+'+ oneline contains=mglStringEscape
+  syn region  mglString matchgroup=mglString start=+"+ end=+"+ oneline contains=mglStringEscapeGPC
+end
+syn match   mglStringEscape	contained "''"
+syn match   mglStringEscapeGPC	contained '""'
+
+
+if exists("mgl_symbol_operator")
+  syn match   mglSymbolOperator		"[+\-/*=\%]"
+  syn match   mglSymbolOperator		"[<>]=\="
+  syn match   mglSymbolOperator		"<>"
+  syn match   mglSymbolOperator		":="
+  syn match   mglSymbolOperator		"[()]"
+  syn match   mglSymbolOperator		"\.\."
+  syn match   mglMatrixDelimiter	"(."
+  syn match   mglMatrixDelimiter	".)"
+  syn match   mglMatrixDelimiter	"[][]"
+endif
+
+syn match  mglNumber	"-\=\<\d\+\>"
+syn match  mglHexNumber	"\$[0-9a-fA-F]\+\>"
+syn match  mglCharacter	"\#[0-9]\+\>"
+syn match  mglIpAddr	"[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\>"
+
+syn region mglComment	start="(\*"  end="\*)"
+syn region mglComment	start="{"  end="}"
+syn region mglComment	start="//"  end="$"
+
+if !exists("mgl_no_functions")
+  syn keyword mglFunction	dispose new
+  syn keyword mglFunction	get load print select
+  syn keyword mglFunction	odd pred succ
+  syn keyword mglFunction	chr ord abs sqr
+  syn keyword mglFunction	exit
+  syn keyword mglOperator	at timeout
+endif
+
+
+syn region mglPreProc	start="(\*\$"  end="\*)"
+syn region mglPreProc	start="{\$"  end="}"
+
+syn keyword mglException	try except raise
+syn keyword mglPredefined	exception
+
+
+" 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_mgl_syn_inits")
+  if version < 508
+    let did_mgl_syn_inits = 1
+    command -nargs=+ HiLink hi link <args>
+  else
+    command -nargs=+ HiLink hi def link <args>
+  endif
+
+  HiLink mglBoolean		Boolean
+  HiLink mglComment		Comment
+  HiLink mglConditional		Conditional
+  HiLink mglConstant		Constant
+  HiLink mglException		Exception
+  HiLink mglFunction		Function
+  HiLink mglLabel		Label
+  HiLink mglMatrixDelimiter	Identifier
+  HiLink mglNumber		Number
+  HiLink mglHexNumber		Number
+  HiLink mglCharacter		Number
+  HiLink mglIpAddr		Number
+  HiLink mglOperator		Operator
+  HiLink mglPredefined		mglFunction
+  HiLink mglPreProc		PreProc
+  HiLink mglRepeat		Repeat
+  HiLink mglStatement		Statement
+  HiLink mglString		String
+  HiLink mglStringEscape	Special
+  HiLink mglStringEscapeGPC	Special
+  HiLink mglStringError		Error
+  HiLink mglStruct		mglStatement
+  HiLink mglSymbolOperator	mglOperator
+  HiLink mglType		Type
+
+  delcommand HiLink
+endif
+
+
+let b:current_syntax = "mgl"
+
+" vim: ts=8 sw=2