diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index f98bd93..61a22df 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -4683,7 +4683,21 @@
 			{name} can also be a Dictionary entry that is a
 			Funcref: >
 				:function dict.init
-<							*E124* *E125*
+<
+							*:function-verbose*
+When 'verbose' is non-zero, listing a function will also display where it was
+last defined. Example: >
+
+    :verbose function SetFileTypeSH
+	function SetFileTypeSH(name)
+	    Last set from /usr/share/vim/vim-7.0/filetype.vim
+<
+When the function was defined by hand there is no "Last set" message.  When
+the function was defined while executing a function, user command or
+autocommand, the script in which it was defined is reported.
+{not available when compiled without the +eval feature}
+
+ 							*E124* *E125*
 :fu[nction][!] {name}([arguments]) [range] [abort] [dict]
 			Define a new function by the name {name}.  The name
 			must be made of alphanumeric characters and '_', and
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index de29f0f..a135a48 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt*       For Vim version 7.0aa.  Last change: 2005 Jul 21
+*map.txt*       For Vim version 7.0aa.  Last change: 2005 Aug 16
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -868,6 +868,20 @@
 
 :com[mand] {cmd}	List the user-defined commands that start with {cmd}
 
+							*:command-verbose*
+When 'verbose' is non-zero, listing a command will also display where it was
+last defined. Example: >
+
+    :verbose command TOhtml
+	Name        Args Range Complete  Definition
+	TOhtml      0    %               :call Convert2HTML(<line1>, <line2>)
+	    Last set from /usr/share/vim/vim-7.0/plugin/tohtml.vim
+<
+When the command was defined by hand there is no "Last set" message.  When the
+command was defined while executing a function, user command or autocommand,
+the script in which it was defined is reported.
+{not available when compiled without the +eval feature}
+
 							*E174* *E182*
 :com[mand][!] [{attr}...] {cmd} {rep}
 			Define a user command.  The name of the command is
@@ -1069,8 +1083,7 @@
 is a special form <f-args> ("function args").  This splits the command
 arguments at spaces and Tabs, quotes each argument individually, and the
 <f-args> sequence is replaced by the comma-separated list of quoted arguments.
-See the Mycmd example below.  When there is no argument, <f-args> also has no
-argument.
+See the Mycmd example below.  If no arguments are given <f-args> is removed. 
 
 Examples >
 
diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt
index 4cc59c3..0071883 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt*  For Vim version 7.0.  Last change: Aug 11, 2005
+*pi_netrw.txt*  For Vim version 7.0.  Last change: Aug 15, 2005
 
 
 		VIM REFERENCE MANUAL    by Charles E. Campbell, Jr.
@@ -11,6 +11,13 @@
 0. Contents						*netrw-contents*
 
 1.  Netrw Reference......................................|netrw-ref|
+      CONTROLLING EXTERNAL APPLICTIONS...................|netrw-externapp|
+      READING............................................|netrw-read|
+      WRITING............................................|netrw-write|
+      DIRECTORY LISTING..................................|netrw-dirlist|
+      CHANGING THE USERID AND PASSWORD...................|netrw-chgup|
+      VARIABLES..........................................|netrw-variables|
+      PATHS..............................................|netrw-path|
 2.  Network-Oriented File Transfer.......................|netrw-xfer|
       NETRC..............................................|netrw-netrc|
       PASSWORD...........................................|netrw-passwd|
@@ -53,8 +60,10 @@
 10. History..............................................|netrw-history|
 11. Credits..............................................|netrw-credits|
 
-The functionality mentioned here is done via using |standard-plugin|
-techniques.  This plugin is only available if
+The Netrw plugin is generally sourced automatically as it is a
+|standard-plugin|.  That said, to make use of netrw, one must
+have plugins available which can be done with the following
+two lines in your <.vimrc>:
 
 	set nocp                    " 'compatible' is not set
 	filetype plugin on          " plugins are enabled
@@ -69,62 +78,51 @@
 ==============================================================================
 1. Netrw Reference						*netrw-ref*
 
-    OPTIONS
-	let g:netrw_ftp =0 use ftp (default)		     (uid password)
-			=1 use alternate ftp method	(user uid password)
-	  If you're having trouble with ftp, try changing the value
-	  of this variable in your <.vimrc> to change methods
+CONTROLLING EXTERNAL APPLICTIONS			*netrw-externapp*
 
-	let g:netrw_ignorenetrc= 1
-	  If you have a <.netrc> file but it doesn't work and you
-	  want it ignored, then set this variable as shown.  Its mere
-	  existence is enough to cause <.netrc> to be ignored.
+	Protocol  Variable	    Default Value
+	--------  ----------------  -------------
+	   dav:    *g:netrw_dav_cmd*  = "cadaver"
+	 fetch:  *g:netrw_fetch_cmd*  = "fetch -o"
+	   ftp:    *g:netrw_ftp_cmd*  = "ftp"
+          http:   *g:netrw_http_cmd*  = "fetch -o"    if fetch is available
+	  http:    g:netrw_http_cmd   = "wget -q -O"  If wget  is available
+	   rcp:    *g:netrw_rcp_cmd*  = "rcp"
+	 rsync:  *g:netrw_rsync_cmd*  = "rsync -a"
+	   scp:    *g:netrw_scp_cmd*  = "scp -q"
+	  sftp:   *g:netrw_sftp_cmd*  = "sftp"
 
-	Controlling External Applications		*netrw-externapp*
-
-	 Protocol  Variable	     Default Value
-	 --------  ----------------  -------------
-	    dav:    *g:netrw_dav_cmd*  = "cadaver"
-	  fetch:  *g:netrw_fetch_cmd*  = "fetch -o"
-	    ftp:    *g:netrw_ftp_cmd*  = "ftp"
-           http:   *g:netrw_http_cmd*  = "fetch -o"    if fetch is available
-	   http:    g:netrw_http_cmd   = "wget -q -O"  If wget  is available
-	    rcp:    *g:netrw_rcp_cmd*  = "rcp"
-	  rsync:  *g:netrw_rsync_cmd*  = "rsync -a"
-	    scp:    *g:netrw_scp_cmd*  = "scp -q"
-	   sftp:   *g:netrw_sftp_cmd*  = "sftp"
-
-    READING					*netrw-read* *netrw-nread*
+READING						*netrw-read* *netrw-nread*
 	:Nread ?					give help
 	:Nread "machine:path"				uses rcp
-	:Nread "machine path"				uses ftp   with <.netrc>
+	:Nread "machine path"				uses ftp w/ <.netrc>
 	:Nread "machine id password path"		uses ftp
 	:Nread "dav://machine[:port]/path"		uses cadaver
 	:Nread "fetch://[user@]machine/path"		uses fetch
-	:Nread "ftp://[user@]machine[[:#]port]/path"	uses ftp   autodetects <.netrc>
+	:Nread "ftp://[user@]machine[[:#]port]/path"	uses ftp w/ <.netrc>
 	:Nread "http://[user@]machine/path"		uses http  uses wget
 	:Nread "rcp://[user@]machine/path"		uses rcp
 	:Nread "rsync://[user@]machine[:port]/path"	uses rsync
 	:Nread "scp://[user@]machine[[:#]port]/path"	uses scp
 	:Nread "sftp://[user@]machine/path"		uses sftp
 
-    WRITING					*netrw-write* *netrw-nwrite*
+WRITING						*netrw-write* *netrw-nwrite*
 	:Nwrite ?    					give help
 	:Nwrite "machine:path"				uses rcp
-	:Nwrite "machine path"				uses ftp   with <.netrc>
+	:Nwrite "machine path"				uses ftp w/ <.netrc>
 	:Nwrite "machine id password path"		uses ftp
 	:Nwrite "dav://machine[:port]/path"		uses cadaver
-	:Nwrite "ftp://[user@]machine[[:#]port]/path"	uses ftp   autodetects <.netrc>
+	:Nwrite "ftp://[user@]machine[[:#]port]/path"	uses ftp w/ <.netrc>
 	:Nwrite "rcp://[user@]machine/path"		uses rcp
 	:Nwrite "rsync://[user@]machine[:port]/path"	uses rsync
 	:Nwrite "scp://[user@]machine[[:#]port]/path"	uses scp
 	:Nwrite "sftp://[user@]machine/path"		uses sftp
 	http: not supported!
 
-    DIRECTORY LISTING
+DIRECTORY LISTING					*netrw-dirlist*
 	:Nread [protocol]://[user]@hostname/path/
 
-    USER AND PASSWORD CHANGING
+ CHANGING USERID AND PASSWORD				*netrw-chgup*
 	Attempts to use ftp will prompt you for a user-id and a password.
 	These will be saved in g:netrw_uid and g:netrw_passwd Subsequent uses
 	of ftp will re-use those.  If you need to use a different user id
@@ -135,59 +133,61 @@
 	:call NetUserPass("uid")		-- prompts for password
 	:call NetUserPass("uid","password")	-- sets global uid and password
 
-    VARIABLES						*netrw-variables*
-	*b:netrw_lastfile*
-	                  last file Network-read/written retained on
-			  a per-buffer basis		(supports plain :Nw )
-	*s:netrw_line*
-	                  during :Nw/NetWrite, holds current line number
-	*s:netrw_col*
-	                  during :Nw/NetWrite, holds current column number
-			  s:netrw_line and s:netrw_col are used to
-			  restore the cursor position on writes
-	*g:netrw_ftp*
-	                     if it doesn't exist, use default ftp
-			  =0 use default ftp		       (uid password)
-			  =1 use alternate ftp method	  (user uid password)
-	*g:netrw_ftpmode*
-	                  ="binary"				    (default)
-			  ="ascii"
-	*g:netrw_uid*
-	                     (ftp) user-id,      retained on a per-session basis
-	*g:netrw_passwd*
-	                     (ftp) password,     retained on a per-session basis
-	*g:netrw_win95ftp*
-	                  =1 if using Win95, will remove four trailing blank
-	                     lines that o/s's ftp "provides" on transfers
-			  =0 force normal ftp behavior (no trailing line
-			     removal)
-	*g:netrw_cygwin*
-	                  =1 assume scp under windows is from cygwin
-	                     Also permits network browsing to use
-			     ls with time and size sorting
-							 (default if windows)
-			  =0 assume Windows' scp accepts windows-style paths
-			     Network browsing uses dir instead of ls
-			  This option is ignored if you're using unix
-	*g:netrw_use_nt_rcp*
-	                  =0 don't use the rcp of WinNT, Win2000 and WinXP
-			  =1 use WinNT's rcp in binary mode         (default)
+VARIABLES						*netrw-variables*
+ *b:netrw_lastfile*	last file Network-read/written retained on a per-buffer
+			basis		(supports plain :Nw )
 
-    PATHS							*netrw-path*
+ *s:netrw_line*		during :Nw/NetWrite, holds current line number
+ *s:netrw_col*		during :Nw/NetWrite, holds current column number
+			s:netrw_line and s:netrw_col are used to
+			restore the cursor position on writes
 
-	Paths to files are generally user-directory relative for most protocols.
-	It is possible that some protocol will make paths relative to some
-	associated directory, however.
+ *g:netrw_ftp*		if it doesn't exist, use default ftp
+			=0 use default ftp		       (uid password)
+			=1 use alternate ftp method	  (user uid password)
+			If you're having trouble with ftp, try changing the
+			value of this variable to see if the alternate ftp
+			method works for your setup.
 
-		example:  vim scp://user@host/somefile
-		example:  vim scp://user@host/subdir1/subdir2/somefile
+ *g:netrw_ftpmode*	="binary"				    (default)
+			="ascii"
 
-	where "somefile" is the "user"'s home directory.  If you wish to get a
-	file using root-relative paths, use the full path:
+ *g:netrw_ignorenetrc*	=0 (default)
+ 			=1 If you have a <.netrc> file but it doesn't work and
+			   you want it ignored, then set this variable as shown.
 
-		example:  vim scp://user@host//somefile
-		example:  vim scp://user@host//subdir1/subdir2/somefile
+ *g:netrw_uid*		(ftp) user-id,      retained on a per-session basis
+ *g:netrw_passwd*	(ftp) password,     retained on a per-session basis
 
+ *g:netrw_win95ftp*	=1 if using Win95, will remove four trailing blank
+			   lines that o/s's ftp "provides" on transfers
+			=0 force normal ftp behavior (no trailing line removal)
+
+ *g:netrw_cygwin*	=1 assume scp under windows is from cygwin. Also
+			   permits network browsing to use ls with time and
+			   size sorting (default if windows)
+			=0 assume Windows' scp accepts windows-style paths
+			   Network browsing uses dir instead of ls
+			This option is ignored if you're using unix
+
+ *g:netrw_use_nt_rcp*	=0 don't use the rcp of WinNT, Win2000 and WinXP
+			=1 use WinNT's rcp in binary mode         (default)
+
+PATHS								*netrw-path*
+
+Paths to files are generally user-directory relative for most protocols.
+It is possible that some protocol will make paths relative to some
+associated directory, however.
+>
+	example:  vim scp://user@host/somefile
+	example:  vim scp://user@host/subdir1/subdir2/somefile
+<
+where "somefile" is the "user"'s home directory.  If you wish to get a
+file using root-relative paths, use the full path:
+>
+	example:  vim scp://user@host//somefile
+	example:  vim scp://user@host//subdir1/subdir2/somefile
+<
 
 ==============================================================================
 2. Network-Oriented File Transfer				*netrw-xfer*
@@ -391,6 +391,9 @@
 		effectively remove the user-id and password by using ""
 		strings.
 
+:NetrwSettings  This command is desribed in |netrw-settings| -- used to
+                display netrw settings and change netrw behavior
+
 
 ==============================================================================
 6. Variables and Options       			*netrw-options* *netrw-var*
@@ -596,6 +599,7 @@
      :Vexplore[!] [dir] Vertical Split & Explore.................|netrw-explore|
      :Pexplore[!] [dir] Vertical Split & Explore.................|netrw-explore|
      :Nexplore[!] [dir] Vertical Split & Explore.................|netrw-explore|
+     :NetrwSettings.............................................|netrw-settings|
 
 QUICK REFERENCE COMMANDS TABLE     			*netrw-browse-cmds*
 >
@@ -627,107 +631,102 @@
 
 NETRW BROWSER VARIABLES					*netrw-browse-var*
 >
-	---				-----------
-	Var				Explanation
-	---				-----------
-<	*g:netrw_alto*			change from above splitting to
-					below splitting by setting this
-					variable (see |netrw-o|)
-					 default: =0
+   ---				-----------
+   Var				Explanation
+   ---				-----------
+< *g:netrw_alto*		change from above splitting to below splitting
+				by setting this variable (see |netrw-o|)
+				 default: =0
 
-	*g:netrw_altv*			change from left splitting to
-					right splitting by setting this
-					variable (see |netrw-v|)
-					 default: =0
+  *g:netrw_altv*		change from left splitting to right splitting
+ 				by setting this variable (see |netrw-v|)
+				 default: =0
 
-	*g:netrw_ftp_browse_reject*	ftp can produce a number of errors
-					and warnings that can show up as
-					"directories" and "files" in the
-					listing.  This pattern is used to
-					remove such embedded messages.  By
-					default its value is:
-					 '^total\s\+\d\+$\|
-					 ^Trying\s\+\d\+.*$\|
-					 ^KERBEROS_V\d rejected\|
-					 ^Security extensions not\|
-					 No such file\|
-					 : connect to address [0-9a-fA-F:]*
-					 : No route to host$'
+  *g:netrw_ftp_browse_reject*	ftp can produce a number of errors and warnings
+				that can show up as "directories" and "files"
+				in the listing.  This pattern is used to
+				remove such embedded messages.  By default its
+				value is:
+				 '^total\s\+\d\+$\|
+				 ^Trying\s\+\d\+.*$\|
+				 ^KERBEROS_V\d rejected\|
+				 ^Security extensions not\|
+				 No such file\|
+				 : connect to address [0-9a-fA-F:]*
+				 : No route to host$'
 
-	*g:netrw_ssh_browse_reject*	ssh can sometimes produce unwanted
-					lines/messages/banners/and whatnot
-					that one doesn't want masquerading
-					as "directories" and "files".  Use
-					this pattern to remove such embedded
-					messages.  By default its value is:
+  *g:netrw_ssh_browse_reject*	ssh can sometimes produce unwanted lines,
+				messages, banners, and whatnot that one doesn't
+				want masquerading as "directories" and "files".
+				Use this pattern to remove such embedded
+				messages.  By default its value is:
  					 '^total\s\+\d\+$'
 
-	*g:netrw_keepdir*		=1 (default) keep current directory
-					immune from the browsing directory.
-					=0 keep the current directory the
-					same as the browsing directory.
-					The browsing directory is contained in
-					b:netrw_curdir
+  *g:netrw_keepdir*		=1 (default) keep current directory immune from
+				   the browsing directory.
+				=0 keep the current directory the same as the
+				   browsing directory.
+				The current browsing directory is contained in
+				b:netrw_curdir
 
-	*g:netrw_list_cmd*		command for listing remote directories
-					 default: (if ssh is executable)
-					          "ssh HOSTNAME ls -FLa"
+  *g:netrw_list_cmd*		command for listing remote directories
+				 default: (if ssh is executable)
+				          "ssh HOSTNAME ls -FLa"
 
-	*g:netrw_longlist*		if =1, then long listing will be default
+  *g:netrw_longlist*		if =1, then long listing will be default
 
-	*g:netrw_ftp_list_cmd*		options for passing along to ftp for
-					directory listing.  Defaults:
-					 unix or g:netrw_cygwin set: : "ls -lF"
-					 otherwise                     "dir"
+  *g:netrw_ftp_list_cmd*	options for passing along to ftp for directory
+				listing.  Defaults:
+				 unix or g:netrw_cygwin set: : "ls -lF"
+				 otherwise                     "dir"
 
-	*g:netrw_list_hide*		comma separated list of patterns for
-					hiding files
-					 default: ""
+  *g:netrw_list_hide*		comma separated pattern list for hiding files
+				 default: ""
 
-	*g:netrw_local_mkdir*		command for making a local directory
-					 default: "ssh HOSTNAME mkdir"
+  *g:netrw_local_mkdir*		command for making a local directory
+				 default: "ssh HOSTNAME mkdir"
 
-	*g:netrw_local_rmdir*		remove directory command (rmdir)
-					 default: "rmdir"
+  *g:netrw_local_rmdir*		remove directory command (rmdir)
+				 default: "rmdir"
 
-	*g:netrw_maxfilenamelen*	=32 by default, selected so as to make
-					long listings fit on 80 column displays.
-					If your screen is wider, and you have
-					file/directory names longer than 32 bytes,
-					you may set this option to keep listings
-					columnar.
+  *g:netrw_maxfilenamelen*	=32 by default, selected so as to make long
+				    listings fit on 80 column displays.
+				If your screen is wider, and you have file
+				or directory names longer than 32 bytes,
+				you may set this option to keep listings
+				columnar.
 
-	*g:netrw_mkdir_cmd*		command for making a remote directory
-					 default: "ssh HOSTNAME mkdir"
+  *g:netrw_mkdir_cmd*		command for making a remote directory
+				 default: "ssh HOSTNAME mkdir"
 
-	*g:netrw_rm_cmd*		command for removing files
-					 default: "ssh HOSTNAME rm"
+  *g:netrw_rm_cmd*		command for removing files
+				 default: "ssh HOSTNAME rm"
 
-	*g:netrw_rmdir_cmd*		command for removing directories
-					 default: "ssh HOSTNAME rmdir"
+  *g:netrw_rmdir_cmd*		command for removing directories
+				 default: "ssh HOSTNAME rmdir"
 
-	*g:netrw_rmf_cmd*		 command for removing softlinks
-					 default: "ssh HOSTNAME rm -f"
+  *g:netrw_rmf_cmd*		 command for removing softlinks
+				 default: "ssh HOSTNAME rm -f"
 
-	*g:netrw_hide*			if true, the hiding list is used
-					 default: =0
+  *g:netrw_hide*			if true, the hiding list is used
+				 default: =0
 
-	*g:netrw_sort_by*		sort by "name", "time", or "size"
-					 default: "name"
+  *g:netrw_sort_by*		sort by "name", "time", or "size"
+				 default: "name"
 
-	*g:netrw_sort_direction*	sorting direction: "normal" or "reverse"
-					 default: "normal"
+  *g:netrw_sort_direction*	sorting direction: "normal" or "reverse"
+				 default: "normal"
 
-	*g:netrw_sort_sequence*		when sorting by name, first sort by the
-					comma-separated pattern sequence
-					 default: '[\/]$,*,\.bak$,\.o$,\.h$,
-					           \.info$,\.swp$,\.obj$'
+  *g:netrw_sort_sequence*	when sorting by name, first sort by the
+				comma-separated pattern sequence
+				 default: '[\/]$,*,\.bak$,\.o$,\.h$,
+				           \.info$,\.swp$,\.obj$'
 
-	*g:netrw_timefmt*		specify format string to strftime() (%c)
-					 default: "%c"
+  *g:netrw_timefmt*		specify format string to strftime() (%c)
+				 default: "%c"
 
-	*g:netrw_winsize*		specify initial size of new o/v windows
-					 default: ""
+  *g:netrw_winsize*		specify initial size of new o/v windows
+				 default: ""
 
 INTRODUCTION TO DIRECTORY BROWSING			*netrw-browse-intro*
 
@@ -1011,12 +1010,20 @@
 CUSTOMIZING BROWSING WITH A USER FUNCTION		*netrw-x* *netrw-handler*
 
 One may "enter" a file with a special handler, thereby firing up a browser or
-other application, for example, on a file by hitting the "x" key.  Presumably
-one could write handlers that would start OpenOffice programs (oowriter), etc,
-based on the file's extension coupled with the user's hitting the "x" key atop
-the file.
+other application, for example, on a file by hitting the "x" key.  The special
+handler varies:
 
-The Netrw executor applies a user-defined function to a file, based on its
+  * for Windows 32 or 64, the url and FileProtocolHandler dlls are used.  
+  * for KDE (with kfmclient): kfmclient is used.
+  * for Gnome (with gnome-open): gnome-open is used.
+  * otherwise the NetrwFileHandler plugin is used.
+
+The file's suffix is used by these various approaches to determine an
+appropriate application to use to "handle" these files.  Such things
+as OpenOffice (*.sfx), visualization (*.jpg, *.gif, etc), and PostScript
+(*.ps, *.eps) can be handled.
+
+The NetrwFileHandler applies a user-defined function to a file, based on its
 extension.  Of course, the handler function must exist for it to be called!
 >
  Ex. mypgm.html   x ->
@@ -1025,6 +1032,11 @@
 See the <plugin/NetrwFileHandlers.vim> for an example of how to handle an html
 file with mozilla.
 
+One may write custom NetrwFileHandlers; please look at the
+plugin/NetrwFileHandlers.vim script for examples.  If its likely to be
+generally useful, please feel free to forward a copy to me for future
+inclusion in the distribution.
+
 
 MAKING THE BROWSING DIRECTORY THE CURRENT DIRECTORY	*netrw-c* *netrw-curdir*
 
@@ -1078,6 +1090,16 @@
 the associated security issues.
 
 
+NETRW SETTINGS						*netrw-settings*
+
+With the NetrwSettings.vim plugin, >
+	:NetrwSettings
+will bring up a window with the many variables that netrw uses for its
+settings.  You may change any of their values; when you save the file,
+the settings therein will be used.  One may also press "?" on any of
+the lines for help on what each of the variables do.
+
+
 ==============================================================================
 8. Problems and Fixes						*netrw-problems*
 
@@ -1195,6 +1217,13 @@
 ==============================================================================
 10. History						*netrw-history*
 
+	v63: * netrw now takes advantage of autoload (and requires 7.0)
+	     * Bugfix - using r (to reverse sort) working again
+	v62: * Bugfix - spaces allowed again in directory names with
+	       g:netrw_keepdir=0.  In fact, I've tested netrw (again)
+	       with most ANSI punctuation marks for directory names.
+	     * Bugfix - NetrwSettings gave errors when g:netrw_silent
+	       had not be set.
 	v61: * document upgrade -- netrw variable-based settings all should
 	       have tags.  Supports NetrwSettings command.
 	     * several important variables are window-oriented.  Netrw has
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 0525291..929c106 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt*	For Vim version 7.0aa.  Last change: 2005 Aug 15
+*spell.txt*	For Vim version 7.0aa.  Last change: 2005 Aug 16
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -195,6 +195,7 @@
 'spellfile' are only used when all entries in "spelllang" specify the same
 region (not counting files specified by their .spl name).
 
+							*spell-german*
 Specific exception: For German these special regions are used:
 	de		all German words accepted
 	de_de		old and new spelling
@@ -203,6 +204,16 @@
 	de_at		Austria
 	de_ch		Switzerland
 
+							*spell-yiddish*
+Yiddish requires using "utf-8" encoding, because of the special characters
+used.  If you are using latin1 Vim will use transliterated (romanized) Yiddish
+instead.  If you want to use transliterated Yiddish with utf-8 use "yi-tr".
+In a table:
+	'encoding'	'spelllang'
+	utf-8		yi		Yiddish
+	latin1		yi		transliterated Yiddish
+	utf-8		yi-tr		transliterated Yiddish
+
 
 SPELL FILES						*spell-load*
 
@@ -901,9 +912,11 @@
 by removing a few letters, inserting something or both.  It can also be useful
 to restrict concatenation to words that match a pattern.  For this purpose CMP
 items can be used.  They look like this:
-	CMP {flag} {strip} {add} {cond} {cond2}
+	CMP {flag} {flags} {strip} {add} {cond} {cond2}
 
 	{flag}		the flag, as used in COMPOUNDFLAGS for the lead word
+	{flags}		accepted flags for the following word ('.' to accept
+			all)
 	{strip}		text to remove from the end of the lead word (zero
 			for no stripping)
 	{add}		text to insert between the words (zero for no
@@ -911,9 +924,9 @@
 	{cond}		condition to match at the end of the lead word
 	{cond2}		condition to match at the start of the following word
 
-This is exactly the same as what is used for SFX and PFX items, except there
-is an extra condition.  Example:
-	CMP f 0 - . . ~
+This is the same as what is used for SFX and PFX items, with the extra {flags}
+and {cond2} fields.  Example:
+	CMP f mrt 0 - . . ~
 
 When used with the food and dish word list above, this means that a dash is
 inserted after each food item.  Thus you get "onion-soup" and
@@ -924,7 +937,7 @@
 
 When there are no CMP items for a compound flag, then all words will be
 concatenated, as if there was an item:
-	CMP {flag} 0 0 . .
+	CMP {flag} . 0 0 . .
 
 
 REPLACEMENTS						*spell-affix-REP*
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 18f6088..118e324 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -1827,6 +1827,7 @@
 :command	map.txt	/*:command*
 :command-completion	map.txt	/*:command-completion*
 :command-completion-custom	map.txt	/*:command-completion-custom*
+:command-verbose	map.txt	/*:command-verbose*
 :comment	eval.txt	/*:comment*
 :comp	quickfix.txt	/*:comp*
 :compiler	quickfix.txt	/*:compiler*
@@ -1982,6 +1983,7 @@
 :for	eval.txt	/*:for*
 :fu	eval.txt	/*:fu*
 :function	eval.txt	/*:function*
+:function-verbose	eval.txt	/*:function-verbose*
 :g	repeat.txt	/*:g*
 :global	repeat.txt	/*:global*
 :go	motion.txt	/*:go*
@@ -5006,6 +5008,7 @@
 g:netrw_ftpmode	pi_netrw.txt	/*g:netrw_ftpmode*
 g:netrw_hide	pi_netrw.txt	/*g:netrw_hide*
 g:netrw_http_cmd	pi_netrw.txt	/*g:netrw_http_cmd*
+g:netrw_ignorenetrc	pi_netrw.txt	/*g:netrw_ignorenetrc*
 g:netrw_keepdir	pi_netrw.txt	/*g:netrw_keepdir*
 g:netrw_list_cmd	pi_netrw.txt	/*g:netrw_list_cmd*
 g:netrw_list_hide	pi_netrw.txt	/*g:netrw_list_hide*
@@ -5208,6 +5211,7 @@
 hebrew.txt	hebrew.txt	/*hebrew.txt*
 help	various.txt	/*help*
 help-context	help.txt	/*help-context*
+help-tags	tags	1
 help-translated	various.txt	/*help-translated*
 help-xterm-window	various.txt	/*help-xterm-window*
 help.txt	help.txt	/*help.txt*
@@ -5790,6 +5794,7 @@
 netrw-browse-var	pi_netrw.txt	/*netrw-browse-var*
 netrw-c	pi_netrw.txt	/*netrw-c*
 netrw-cadaver	pi_netrw.txt	/*netrw-cadaver*
+netrw-chgup	pi_netrw.txt	/*netrw-chgup*
 netrw-contents	pi_netrw.txt	/*netrw-contents*
 netrw-cr	pi_netrw.txt	/*netrw-cr*
 netrw-credits	pi_netrw.txt	/*netrw-credits*
@@ -5799,6 +5804,7 @@
 netrw-debug	pi_netrw.txt	/*netrw-debug*
 netrw-delete	pi_netrw.txt	/*netrw-delete*
 netrw-dir	pi_netrw.txt	/*netrw-dir*
+netrw-dirlist	pi_netrw.txt	/*netrw-dirlist*
 netrw-downdir	pi_netrw.txt	/*netrw-downdir*
 netrw-edithide	pi_netrw.txt	/*netrw-edithide*
 netrw-ex	pi_netrw.txt	/*netrw-ex*
@@ -5846,6 +5852,7 @@
 netrw-rename	pi_netrw.txt	/*netrw-rename*
 netrw-reverse	pi_netrw.txt	/*netrw-reverse*
 netrw-s	pi_netrw.txt	/*netrw-s*
+netrw-settings	pi_netrw.txt	/*netrw-settings*
 netrw-sexplore	pi_netrw.txt	/*netrw-sexplore*
 netrw-sort	pi_netrw.txt	/*netrw-sort*
 netrw-sortsequence	pi_netrw.txt	/*netrw-sortsequence*
@@ -6375,6 +6382,7 @@
 special-buffers	windows.txt	/*special-buffers*
 speed-up	tips.txt	/*speed-up*
 spell	spell.txt	/*spell*
+spell-CMP	spell.txt	/*spell-CMP*
 spell-COMPOUNDFLAG	spell.txt	/*spell-COMPOUNDFLAG*
 spell-COMPOUNDFLAGS	spell.txt	/*spell-COMPOUNDFLAGS*
 spell-COMPOUNDMIN	spell.txt	/*spell-COMPOUNDMIN*
@@ -6398,7 +6406,9 @@
 spell-affix-mbyte	spell.txt	/*spell-affix-mbyte*
 spell-affix-vim	spell.txt	/*spell-affix-vim*
 spell-dic-format	spell.txt	/*spell-dic-format*
+spell-double-scoring	spell.txt	/*spell-double-scoring*
 spell-file-format	spell.txt	/*spell-file-format*
+spell-german	spell.txt	/*spell-german*
 spell-load	spell.txt	/*spell-load*
 spell-midword	spell.txt	/*spell-midword*
 spell-mkspell	spell.txt	/*spell-mkspell*
@@ -6406,6 +6416,7 @@
 spell-remarks	spell.txt	/*spell-remarks*
 spell-syntax	spell.txt	/*spell-syntax*
 spell-wordlist-format	spell.txt	/*spell-wordlist-format*
+spell-yiddish	spell.txt	/*spell-yiddish*
 spell.txt	spell.txt	/*spell.txt*
 spellbadword()	eval.txt	/*spellbadword()*
 spellsuggest()	eval.txt	/*spellsuggest()*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 1f82ecc..2434923 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 Aug 15
+*todo.txt*      For Vim version 7.0aa.  Last change: 2005 Aug 16
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -31,9 +31,11 @@
 -------------------- Known bugs and current work -----------------------
 
 Spelling:
-- suggestions for compound words.
-- Implement multiple flags for compound words.  Await comments from other
-  spell checking authors.
+- Prefer SpellBad over SpellCap highlighting.
+- Add limit for number of suggestions to 'spellsuggest'?
+- CTRL-X s in Insert mode: move cursor back to after badly spelled word?
+- Implement multiple flags for compound words and CMP item.
+  Await comments from other spell checking authors.
 
 Mac unicode patch (Da Woon Jung):
 - selecting proportional font breaks display
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index a1c537f..dce51bd 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 7.0aa.  Last change: 2005 Aug 15
+*version7.txt*  For Vim version 7.0aa.  Last change: 2005 Aug 16
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -561,8 +561,8 @@
 
 When 'verbose' is set the output of ":highlight" will show where a highlight
 item was last set.
-When 'verbose' is set the output of ":map" will show where a key map was
-last defined. (Yegappan Lakshmanan)
+When 'verbose' is set the output of ":map", ":command" and ":function"
+commands will show where it was last defined. (Yegappan Lakshmanan)
 
 ==============================================================================
 IMPROVEMENTS						*improvements-7*
@@ -1292,4 +1292,9 @@
 and 'encoding' is "utf-8" would match the pattern just before it incorrectly.
 Affected searchpair('/\*', '', '\*/').
 
+For the Find/Replace dialog it was possible that not finding the text resulted
+in an error message while redrawing, which cleared the syntax highlighting
+while it was being used, resulting in a crash.  Now don't clear syntax
+highlighting, disable it with b_syn_error.
+
  vim:tw=78:ts=8:ft=help:norl:
