diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 50395fc..4814a09 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 19
+*quickfix.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 20
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -878,6 +878,7 @@
 	%W		start of a multi-line warning message
 	%I		start of a multi-line informational message
 	%A		start of a multi-line message (unspecified type)
+	%>		for next line start with current pattern again |efm-%>|
 	%C		continuation of a multi-line message
 	%Z		end of a multi-line message
 These can be used with '+' and '-', see |efm-ignore| below.
@@ -929,6 +930,17 @@
 it also hides line 7 which would trigger a separate error message otherwise.
 Error format strings are always parsed pattern by pattern until the first
 match occurs.
+							*efm-%>*
+The %> item can be used to avoid trying patterns that appear earlier in
+'errorformat'.  This is useful for patterns that match just about anything.
+For example, if the error looks like this:
+
+	Error in line 123 of foo.c: ~
+	unknown variable "i" ~
+
+This can be found with: >
+	:set efm=xxx,%E%>Error in line %l of %f:,%Z%m
+Where "xxx" has a pattern that would also match the second line.
 
 Important: There is no memory of what part of the errorformat matched before;
 every line in the error file gets a complete new run through the error format
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 6d2c860..a7e1bb1 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 Mar 19
+*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Mar 20
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -30,15 +30,23 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-'errorformat': Add a flag %? to check for a match with the next item first.
-Helps for continuation lines that may contain just about anything, e.g. an
-error message.
-    error 99 in file foo.c line 1234:
-	something is wrong here
+Links in docs to vimball docs.
 
-Gnome GUI: lots of error messages during startup.  These go away when not
-using the notebook for tab labels.  Still similar error messages when moving
-the toolbar to another location.
+HTML indenting can be slow, find out why.
+Add a function to get the current time in usec.  reltime([start, [end]])
+    reltime().sec == seconds, reltime().usec = microseconds
+    reltime(start) current time relative to [start]
+	echo timestring(reltime(start), 3)  (3 is nr of digits after dot)
+    reltime(start, end) difference between start and end
+
+Include GetLatestVimScripts script?
+
+Adjust src/main.aap for installing manpages like in Makefile.
+    And for generating Vim.app for the Mac.
+    Install spell files with src/main.aap.
+
+Gnome2: When moving the toolbar out of the dock, so that it becomes floating,
+it can no longer be moved.
 
 Win32: Describe how to do debugging. (George Reilly)
 
@@ -51,28 +59,8 @@
 - With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work.
   (Alan Schmitt)
 
-EMBEDDING: Make it possible to run Vim inside a window of another program.
-For GTK Neil Bird has a patch to use Vim like a widget.
-
-Ctags still hasn't included the patch.  Darren is looking for someone to do
-maintenance.  Is there another solution?
-
-HTML indenting can be slow, find out why.
-Add a function to get the current time in usec.  reltime([start, [end]])
-    reltime().sec == seconds, reltime().usec = microseconds
-    reltime(start) current time relative to [start]
-	echo timestring(reltime(start), 3)  (3 is nr of digits after dot)
-    reltime(start, end) difference between start and end
-Profiling:
-    - :profile pause
-    - :profile resume
-
-Adjust src/main.aap for installing manpages like in Makefile.
-    And for generating Vim.app for the Mac.
-    Install spell files with src/main.aap.
-
-Add ":smap", Select mode mapping?  Otherwise: ":sunmap", so that Visual mode
-mappings for normal keys can be removed from Select mode.
+Darren is including the patch in ctags.  Test it when it's ready.  Change
+"typename" to "typeref" in C complete code.
 
 Add more tests for all new functionality in Vim 7.  Especially new functions.
 
@@ -81,7 +69,6 @@
 
 
 Awaiting updated patches:
-7   Updated Ruby interface. (Ryan Paul)
 8   Add ":n" to fnamemodify(): normalize path, remove "../" when possible.
     Aric Blumer has a patch for this.
     He will update the patch for 6.3.
@@ -1446,7 +1433,6 @@
 7   CTRL-] checks the highlight group for finding out what the tag is.
 7   Add an explanation how a list of words can be used to highlight misspelled
     words.
-7   Command line completion for ":find" should search in 'path'.
 8   Add more command line completion for :syntax.
 8   Add more command line completion for :highlight.
 8   Add more command line completion for :sign.
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index a7d39a0..694e5f1 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 Mar 18
+*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 20
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -36,6 +36,7 @@
 Remote file explorer			|new-netrw-explore|
 Define an operator			|new-define-operator|
 Mapping to an expression		|new-map-expression|
+Visual and Select mode mappings		|new-map-select|
 Location list				|new-location-list|
 Various new items			|new-items-7|
 
@@ -143,6 +144,10 @@
 reported, relative to the function start.  This also means that line numbers
 for ":breakadd func" are different.
 
+When defining a user command with |:command| the special items could be
+abbreviated.  This caused unexpected behavior, such as <li> being recognized
+as <line1>.  The items can no longer be abbreviated.
+
 ==============================================================================
 NEW FEATURES						*new-7*
 
@@ -161,8 +166,8 @@
 variable.  Works for Numbers, Strings and composites of them.  Then |eval()|
 can be used to turn the string back into the variable value.
 
-The |:let| command can now use ":let var += expr" like using ":let var = var +
-expr".  "-=" and ".=" works in a similar way.
+The |:let| command can now use "+=".  ":let var += expr" works like
+":let var = var + expr".  "-=" and ".=" works in a similar way.
 
 With the |:profile| command you can find out where your function or script
 wastes its time.
@@ -493,6 +498,20 @@
 Also works for abbreviations.  See |:map-<expr>| for the details.
 
 
+Visual and Select mode mappings				*new-map-select*
+-------------------------------
+
+Previously Visual mode mappings applied both to Visual and Select mode.  With
+a trick to have the mappings work in Select mode like they would in Visual
+mode.
+
+Commands have been added to define mappings for Visual and Select mode
+separately: |:xmap| and |:smap|.  With the associated "noremap" and "unmap"
+commands.
+
+The same is done for menus: |:xmenu|, |:smenu|, etc.
+
+
 Location list						*new-location-list*
 -------------
 
@@ -1103,6 +1122,13 @@
 window.
 
 Added the "%s" item to 'errorformat'. (Yegappan Lakshmanan)
+Added the "%>" item to 'errorformat'.
+
+For 'errorformat' it was not possible to have a file name that contains the
+character that follows after "%f".  For example, in "%f:%l:%m" the file name
+could not contain ":".  Now include the first ":" where the rest of the
+pattern matches.  In the example a ":" not followed by a line number is
+included in the file name. (suggested by Emanuele Giaquinta)
 
 GTK GUI: use the GTK file dialog when it's available.  Mix from patches by
 Grahame Bowland and Evan Webb.
@@ -1133,12 +1159,6 @@
 Win32: Balloons can have multiple lines if common controls supports it.
 (Sergey Khorev)
 
-For 'errorformat' it was not possible to have a file name that contains the
-character that follows after "%f".  For example, in "%f:%l:%m" the file name
-could not contain ":".  Now include the first ":" where the rest of the
-pattern matches.  In the example a ":" not followed by a line number is
-included in the file name. (suggested by Emanuele Giaquinta)
-
 For command-line completion the matches for various types of arguments are now
 sorted: user commands, variables, syntax names, etc.
 
@@ -1233,6 +1253,8 @@
 $VIM if it's set.  Example provided by Mathias Michaelis.
 Also create a vimtutor.bat batch file.
 
+The 'balloonexpr' option is now |global-local|.
+
 ==============================================================================
 COMPILE TIME CHANGES					*compile-changes-7*
 
@@ -1384,9 +1406,6 @@
 VMS: Occasionally CR characters were inserted in the file.  Expansion of
 environment variables was not correct. (Zoltan Arpadffy)
 
-VMS: Improved low level char input (affects just console mode). (Zoltan
-Arpadffy)
-
 UTF-8: When 'delcombine' is set "dw" only deleted the last combining character
 from the first character of the word.
 
@@ -1733,6 +1752,9 @@
 Peek for a character to get any window resize events and fix 'columns' and
 'lines' to undo this.
 
+When using the GTK plug mechanism, resizing and focus was not working
+properly. (Neil Bird)
+
 After deleting files from the argument list a session file generated with
 ":mksession" may contain invalid ":next" commands.
 
diff --git a/runtime/doc/vimball.txt b/runtime/doc/vimball.txt
new file mode 100644
index 0000000..cd5f32f
--- /dev/null
+++ b/runtime/doc/vimball.txt
@@ -0,0 +1,66 @@
+*vimball.txt*	Vimball Archiver				Mar 20, 2006
+Author:  Charles E. Campbell, Jr.  <NdrOchip@ScampbellPfamily.AbizM>
+	  (remove NOSPAM from Campbell's email first)
+Copyright: (c) 2004-2006 by Charles E. Campbell, Jr.	*Vimball-copyright*
+           The VIM LICENSE applies to Vimball.vim, and Vimball.txt
+           (see |copyright|) except use "Vimball" instead of "Vim".
+	   No warranty, express or implied.
+	   Use At-Your-Own-Risk!
+
+==============================================================================
+1. Contents					*vimball* *vimball-contents*
+
+	1. Contents......................................: |vimball-contents|
+	2. Vimball Manual................................: |vimball-manual|
+	3. Vimball History...............................: |vimball-history|
+
+
+==============================================================================
+2. Vimball Manual					*vimball-manual*
+
+							*:MkVimball*
+		:[range]MkVimball[!] filename
+
+	This command takes lines holding a path to files to be included in
+	your vimball; as an example: >
+		plugin/something.vim
+		doc/something.txt
+<	using MkVimball on this range will create a file called
+	"filename.vba" which can be used by Vimball.vim to re-create these
+	files.  If the "filename.vba" file already exists, then MkVimball
+	will issue a warning and not create the file.
+
+	However, if you use the exclamation point (!), then MkVimball will
+	create the "filename.vba" file, overwriting it if it already exists.
+	This behavior resembles that for |:w|.
+
+							*vimball-extract*
+		vim filename.vba
+
+	Simply editing a Vimball will cause Vimball.vim to tell the user to
+	source the file to extract its contents.
+
+	Extraction will only proceed if the first line of a putative vimball
+	file holds the "Vimball Archiver by Charles E.  Campbell, Jr., Ph.D."
+	line.
+
+		:VimballList				*vimball-vimballlist*
+	
+	This command will tell Vimball to list the files in the archive, along
+	with their lengths in lines.
+
+
+==============================================================================
+3. Vimball History					*vimball-history*
+
+	3  : Mar 20, 2006 * removed query, now requires sourcing to be
+	                    extracted (:so %).  Message to that effect
+			    included.
+			  * :VimballList  now shows files that would be
+			    extracted.
+	2  : Mar 20, 2006 * query, :UseVimball included
+	1  : Mar 20, 2006 * initial release
+
+
+==============================================================================
+vim:tw=78:ts=8:ft=help:fdm=marker
