diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt
index 71c752a..f242430 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1085,8 +1085,8 @@
 	 <c-tab> Shrink/expand a netrw/explore window                |netrw-c-tab|
 	   -	Makes Netrw go up one directory                      |netrw--|
 	   a	Cycles between normal display,                       |netrw-a|
-	    	hiding (suppress display of files matching g:netrw_list_hide)
-	    	and showing (display only files which match g:netrw_list_hide)
+		hiding (suppress display of files matching g:netrw_list_hide)
+		and showing (display only files which match g:netrw_list_hide)
 	   cd	Make browsing directory the current directory        |netrw-cd|
 	   C	Setting the editing window                           |netrw-C|
 	   d	Make a directory                                     |netrw-d|
@@ -1118,7 +1118,7 @@
 	   mX	Apply arbitrary shell command to marked files en bloc|netrw-mX|
 	   mz	Compress/decompress marked files                     |netrw-mz|
 	   o	Enter the file/directory under the cursor in a new   |netrw-o|
-	    	browser window.  A horizontal split is used.
+		browser window.  A horizontal split is used.
 	   O	Obtain a file specified by cursor                    |netrw-O|
 	   p	Preview the file                                     |netrw-p|
 	   P	Browse in the previously used window                 |netrw-P|
@@ -1134,7 +1134,7 @@
 	   u	Change to recently-visited directory                 |netrw-u|
 	   U	Change to subsequently-visited directory             |netrw-U|
 	   v	Enter the file/directory under the cursor in a new   |netrw-v|
-	    	browser window.  A vertical split is used.
+		browser window.  A vertical split is used.
 	   x	View file with an associated program                 |netrw-x|
 	   X	Execute filename under cursor via |system()|           |netrw-X|
 
@@ -2271,7 +2271,7 @@
 	...
 
 
-MARKED FILES, ARBITRARY SHELL COMMAND, EN BLOC 			*netrw-mX* {{{2
+MARKED FILES, ARBITRARY SHELL COMMAND, EN BLOC			*netrw-mX* {{{2
 	    (See |netrw-mf| and |netrw-mr| for how to mark files)
 		      (uses the global marked-file list)
 
@@ -2620,7 +2620,7 @@
 				Used to change access permission for a file.
 
   *g:netrw_clipboard*		=1
-  				By default, netrw will attempt to insure that
+				By default, netrw will attempt to insure that
 				the clipboard's values will remain unchanged.
 				However, some users report that they have
 				speed problems with this; consequently, this
@@ -2768,7 +2768,7 @@
 				escaped before applying glob()
 
   *g:netrw_gx*			="<cfile>"
- 				This option controls how gx (|netrw-gx|) picks
+				This option controls how gx (|netrw-gx|) picks
 				up the text under the cursor.  See |expand()|
 				for possibilities.
 
@@ -2834,11 +2834,11 @@
 				directory (|netrw-mt|, |netrw-mc|)
 
   *g:netrw_localcopycmdopt*	=''             Linux/Unix/MacOS/Cygwin
-  				=' \c copy'                     Windows
+				=' \c copy'                     Windows
 				Options for the |g:netrw_localcopycmd|
 
   *g:netrw_localcopydircmd*	="cp"           Linux/Unix/MacOS/Cygwin
- 				=expand("$COMSPEC")             Windows
+				=expand("$COMSPEC")             Windows
 				Copies directories to target directory.
 				(|netrw-mc|, |netrw-mt|)
 
@@ -2864,7 +2864,7 @@
 				Options for |g:netrw_localmovecmd|
 
   *g:netrw_localrmdir*		="rmdir"        Linux/Unix/MacOS/Cygwin
- 				=expand("$COMSPEC")             Windows
+				=expand("$COMSPEC")             Windows
 				Remove directory command (rmdir)
 				This variable is only used if your vim is
 				earlier than 7.4 or if your vim doesn't
@@ -2900,10 +2900,10 @@
 				(see |'ballooneval'|)
 
  *g:netrw_sizestyle*		not defined: actual bytes (default)
- 				="b" : actual bytes       (default)
- 				="h" : human-readable (ex. 5k, 4m, 3g)
+				="b" : actual bytes       (default)
+				="h" : human-readable (ex. 5k, 4m, 3g)
 				       uses 1000 base
- 				="H" : human-readable (ex. 5K, 4M, 3G)
+				="H" : human-readable (ex. 5K, 4M, 3G)
 				       uses 1024 base
 				The long listing (|netrw-i|) and query-file
 				maps (|netrw-qf|) will display file size
@@ -2951,7 +2951,7 @@
 				 default: "NETRWSERVER"
 
   *g:netrw_sort_by*		sort by "name", "time", "size", or
-  				"exten".
+				"exten".
 				 default: "name"
 
   *g:netrw_sort_direction*	sorting direction: "normal" or "reverse"
@@ -3008,7 +3008,7 @@
 					.vim/after/syntax/netrw.vim.
 <				 The netrwGray highlighting is set up by
 				netrw when >
-	       				* netrwGray has not been previously
+					* netrwGray has not been previously
 					  defined
 					* the gui is running
 <				 As an example, I myself use a dark-background
@@ -3266,7 +3266,7 @@
     name, applying that substitute, and renaming each file to the result.
     As an example : >
 
-    	mr  [query: reply with *.c]
+	mr  [query: reply with *.c]
 	R   [query: reply with s/^\(.*\)\.c$/\1.cpp/]
 <
     This example will mark all *.c files and then rename them to *.cpp
@@ -3275,7 +3275,7 @@
 
     The ctrl-X character has special meaning for renaming files: >
 
-    	<c-x>      : a single ctrl-x tells netrw to ignore the portion of the response
+	<c-x>      : a single ctrl-x tells netrw to ignore the portion of the response
 	             lying between the last '/' and the ctrl-x.
 
 	<c-x><c-x> : a pair of contiguous ctrl-x's tells netrw to ignore any
@@ -3843,7 +3843,7 @@
 	  Decho.vim is provided as a "vimball"; see |vimball-intro|.  You
 	  should edit the Decho.vba.gz file and source it in: >
 
-	  	vim Decho.vba.gz
+		vim Decho.vba.gz
 		:so %
 		:q
 <
@@ -3885,7 +3885,7 @@
 	   To save the file: under linux, the output will be in a separate
 	   remote server window; in it, just save the file with >
 
-	   	:w! DBG
+		:w! DBG
 
 <	   Under a vim that doesn't support clientserver, your debugging
 	   output will appear in another tab: >
