diff --git a/runtime/autoload/tar.vim b/runtime/autoload/tar.vim
index 66d2eb5..9d8f138 100644
--- a/runtime/autoload/tar.vim
+++ b/runtime/autoload/tar.vim
@@ -1,7 +1,7 @@
 " tar.vim: Handles browsing tarfiles
 "            AUTOLOAD PORTION
-" Date:			Nov 18, 2005
-" Version:		4
+" Date:			Nov 28, 2005
+" Version:		5
 " Maintainer:	Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
 " License:		Vim License  (see vim's :help license)
 "
@@ -24,7 +24,7 @@
 if exists("g:loaded_tar")
  finish
 endif
-let g:loaded_tar= "v4"
+let g:loaded_tar= "v5"
 
 " ---------------------------------------------------------------------
 "  Default Settings: {{{1
@@ -46,11 +46,14 @@
 " tar#Browse: {{{2
 fun! tar#Browse(tarfile)
 "  call Dfunc("tar#Browse(tarfile<".a:tarfile.">)")
+  let repkeep= &report
+  set report=10
 
   " sanity checks
   if !executable("tar")
    echohl Error | echo '***error*** (tar#Browse) "tar" not available on your system'
    call inputsave()|call input("Press <cr> to continue")|call inputrestore()
+   let &report= repkeep
 "   call Dret("tar#Browse")
    return
   endif
@@ -60,6 +63,7 @@
     echohl Error | echo "***error*** (tar#Browse) File not readable<".a:tarfile.">" | echohl None
     call inputsave()|call input("Press <cr> to continue")|call inputrestore()
    endif
+   let &report= repkeep
 "   call Dret("tar#Browse : file<".a:tarfile."> not readable")
    return
   endif
@@ -94,6 +98,7 @@
   setlocal noma nomod ro
   noremap <silent> <buffer> <cr> :call <SID>TarBrowseSelect()<cr>
 
+  let &report= repkeep
 "  call Dret("tar#Browse : w:tarfile<".w:tarfile.">")
 endfun
 
@@ -101,11 +106,14 @@
 " TarBrowseSelect: {{{2
 fun! s:TarBrowseSelect()
 "  call Dfunc("TarBrowseSelect() w:tarfile<".w:tarfile."> curfile<".expand("%").">")
+  let repkeep= &report
+  set report=10
   let fname= getline(".")
 "  call Decho("fname<".fname.">")
 
   " sanity check
   if fname =~ '^"'
+   let &report= repkeep
 "   call Dret("TarBrowseSelect")
    return
   endif
@@ -121,6 +129,7 @@
   exe "e tarfile:".tarfile.':'.fname
   filetype detect
 
+  let &report= repkeep
 "  call Dret("TarBrowseSelect : s:tblfile_".winnr()."<".s:tblfile_{winnr()}.">")
 endfun
 
@@ -128,6 +137,8 @@
 " tar#Read: {{{2
 fun! tar#Read(fname,mode)
 "  call Dfunc("tar#Read(fname<".a:fname.">,mode=".a:mode.")")
+  let repkeep= &report
+  set report=10
   let tarfile = substitute(a:fname,'tarfile:\(.\{-}\):.*$','\1','')
   let fname   = substitute(a:fname,'tarfile:.\{-}:\(.*\)$','\1','')
 "  call Decho("tarfile<".tarfile."> fname<".fname.">")
@@ -149,6 +160,7 @@
   0d
   set nomod
 
+  let &report= repkeep
 "  call Dret("tar#Read : w:tarfile<".w:tarfile.">")
 endfun
 
@@ -156,17 +168,21 @@
 " tar#Write: {{{2
 fun! tar#Write(fname)
 "  call Dfunc("tar#Write(fname<".a:fname.">) w:tarfile<".w:tarfile."> tblfile_".winnr()."<".s:tblfile_{winnr()}.">")
+  let repkeep= &report
+  set report=10
 
   " sanity checks
   if !executable("tar")
    echohl Error | echo '***error*** (tar#Browse) "tar" not available on your system'
    call inputsave()|call input("Press <cr> to continue")|call inputrestore()
+   let &report= repkeep
 "   call Dret("tar#Write")
    return
   endif
   if !exists("*mkdir")
    echohl Error | echo "***error*** (tar#Write) sorry, mkdir() doesn't work on your system" | echohl None
    call inputsave()|call input("Press <cr> to continue")|call inputrestore()
+   let &report= repkeep
 "   call Dret("tar#Write")
    return
   endif
@@ -186,6 +202,7 @@
   catch /^Vim\%((\a\+)\)\=:E344/
    echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
    call inputsave()|call input("Press <cr> to continue")|call inputrestore()
+   let &report= repkeep
 "   call Dret("tar#Write")
    return
   endtry
@@ -285,6 +302,7 @@
   exe "cd ".escape(curdir,' \')
   setlocal nomod
 
+  let &report= repkeep
 "  call Dret("tar#Write")
 endfun
 
diff --git a/runtime/doc/tar.txt b/runtime/doc/tar.txt
deleted file mode 100644
index f43140d..0000000
--- a/runtime/doc/tar.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-*tar.txt*	Tar File Interface				Nov 03, 2005
-
-Author:  Charles E. Campbell, Jr.  <NdrOchip@ScampbellPfamily.AbizM>
-	  (remove NOSPAM from Campbell's email first)
-Copyright: The GPL (gnu public license) applies to	*tar-copyright*
-	   tarPlugin.vim, and tar.txt.
-	   No warranty, express or implied.  Use At-Your-Own-Risk.
-
-==============================================================================
-1. Contents					*tar* *tar-contents*
-   1. Contents..................................................|tar-contents|
-   2. Usage.....................................................|tar-usage|
-   3. History...................................................|tar-history|
-
-==============================================================================
-2. Usage					*tar-usage* *tar-manual*
-
-   When one edits a *.tar file, this plugin will handle displaying a
-   contents page.  Select a file to edit by moving the cursor atop
-   the desired file, then hit the <return> key.  After editing, one may
-   also write to the file.  Currently, one may not make a new file in
-   tar archives via the plugin.
-
-==============================================================================
-3. History						*tar-history*
-   v3 Sep 16, 2005       * handles writing files in an archive back to the
-                           archive
-      Oct 18, 2005       * <amatch> used instead of <afile> in autocmds
-      Oct 18, 2005       * handles writing to compressed archives
-      Nov 03, 2005       * handles writing tarfiles across a network using
-                           netrw#NetWrite()
-   v2                    * converted to use Vim7's new autoload feature by
-                           Bram Moolenaar
-   v1 (original release) * Michael Toren (see http://michael.toren.net/code/)
-
-==============================================================================
-vim:tw=78:ts=8:ft=help
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 29ce4e3..bd037fe 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.0aa.  Last change: 2005 Nov 26
+*todo.txt*      For Vim version 7.0aa.  Last change: 2005 Nov 28
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -37,6 +37,9 @@
 
 Go over all changes between 6.3 and 6.4 and make sure they are included in 7.
 
+Using ":read" in an empty buffer in Ex mode, then undo leaves a line behind.
+(Servatius Brandt).
+
 'statusline' is drawn over the Omni menu.
 
 Cygwin and Mac OS/X may preserve case for file names but ignore case
@@ -60,6 +63,12 @@
 
 Win32: preserve the hidden attribute of the viminfo file.
 
+Add ":startgreplace" to do "gR", like ":startreplace" does "R".
+
+When 'delcombine' is set in Select mode before a character with a combining
+char the combinging char is deleted when it shouldn't. (Tony Mechelynck, Nov
+27)
+
 ccomplete:
 - When an option is set: In completion mode and the user types (identifier)
   characters, advance to the first match instead of removing the popup menu.
@@ -72,6 +81,8 @@
 - page-up / page-down
 
 spelling:
+- "z?" was to be used for searching in folded text.  Use something else for
+  suggestions.  "zu"?
 - When a recognized word ends in a . don't have 'spellcapcheck" match it.
 - Use KEEPCASE instead of "KEP".  It applies to the word including affixes
   Hunspell also uses it.
@@ -109,8 +120,8 @@
 - With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work.
   (Alan Schmitt)
 
-Mac: drop support for OS 9?  Most people are now using OS/X and Vim 6.4 can be
-used for others.
+Mac: drop support for OS 9.  Most people are now using OS/X and Vim 6.4 can be
+used for others.  Will make maintaining the code simpler.
 
 Patch to add a few flags to search(). (Benji Fisher, Nov 22)
 
@@ -1483,8 +1494,8 @@
 
 
 Folding:
-    (commands still available: zg zG zI zJ zK zp zP zq zQ zV zw zW zy zY;
-    secondary: zB zS zT zZ)
+    (commands still available: zI zJ zK zp zP zq zQ zV zy zY;
+    secondary: zB zS zT zZ, z=)
 8   Add "z/" and "z?" for searching in not folded text only.
 8   Add different highlighting for a fold line depending on the fold level.
     (Noel Henson)
diff --git a/runtime/doc/zip.txt b/runtime/doc/zip.txt
deleted file mode 100644
index 3ca3683..0000000
--- a/runtime/doc/zip.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-*zip.txt*	Zip File Interface				Nov 03, 2005
-
-Author:  Charles E. Campbell, Jr.  <NdrOchip@ScampbellPfamily.AbizM>
-	  (remove NOSPAM from Campbell's email first)
-Copyright:    Copyright (C) 2005 Charles E. Campbell, Jr. {{{1 *zip-copyright*
-              Permission is hereby granted to use and distribute this code,
-	      with or without modifications, provided that this copyright
-	      notice is copied with it. Like anything else that's free,
-	      zip.vim and zipPlugin.vim are provided *as is* and comes with no
-	      warranty of any kind, either expressed or implied. By using this
-	      plugin, you agree that in no event will the copyright holder be
-	      liable for any damages resulting from the use of this software.
-
-==============================================================================
-1. Contents					*zip* *zip-contents*
-   1. Contents..................................................|zip-contents|
-   2. Usage.....................................................|zip-usage|
-   3. History...................................................|zip-history|
-
-==============================================================================
-2. Usage					*zip-usage* *zip-manual*
-
-   When one edits a *.zip file, this plugin will handle displaying a
-   contents page.  Select a file to edit by moving the cursor atop
-   the desired file, then hit the <return> key.  After editing, one may
-   also write to the file.  Currently, one may not make a new file in
-   zip archives via the plugin.
-
-==============================================================================
-3. History					*zip-history*
-   v3 Oct 18, 2005 * <amatch> used instead of <afile> in autocmds
-   v2 Sep 16, 2005 * silenced some commands (avoiding hit-enter prompt)
-                   * began testing under Windows; works thus far
-		   * filetype detection fixed
-      Nov 03, 2005 * handles writing zipfiles across a network using
-                     netrw#NetWrite()
-   v1 Sep 15, 2005 * Initial release, had browsing, reading, and writing
-
-==============================================================================
-vim:tw=78:ts=8:ft=help
