Update runtime files.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index db0a756..25873f8 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.0.  Last change: 2017 Mar 21
+*eval.txt*	For Vim version 8.0.  Last change: 2017 Mar 27
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -7874,6 +7874,7 @@
 
 		name	     effect when {val} is non-zero ~
 		redraw       disable the redrawing() function
+		silent_mode  enable silent mode (like using |-s| after |-e|)
 		char_avail   disable the char_avail() function
 		ALL	     clear all overrides ({val} is not used)
 
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index 8f58d76..795b259 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt*  For Vim version 8.0.  Last change: 2017 Mar 21
+*filetype.txt*  For Vim version 8.0.  Last change: 2017 Mar 28
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -353,12 +353,12 @@
    You need to define your own mapping before the plugin is loaded (before
    editing a file of that type).  The plugin will then skip installing the
    default mapping.
-
+						*no_mail_maps*
 3. Disable defining mappings for a specific filetype by setting a variable,
    which contains the name of the filetype.  For the "mail" filetype this
    would be: >
 	:let no_mail_maps = 1
-
+<						*no_plugin_maps*
 4. Disable defining mappings for all filetypes by setting a variable: >
 	:let no_plugin_maps = 1
 <
diff --git a/runtime/doc/ft_rust.txt b/runtime/doc/ft_rust.txt
index b6e974e..c2e21e4 100644
--- a/runtime/doc/ft_rust.txt
+++ b/runtime/doc/ft_rust.txt
@@ -1,7 +1,7 @@
 *ft_rust.txt*      Filetype plugin for Rust
 
 ==============================================================================
-CONTENTS                                                      *rust* *ft-rust*
+CONTENTS                                                      *rust*
 
 1. Introduction                                                   |rust-intro|
 2. Settings                                                    |rust-settings|
diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt
index b2d0578..5eeba0c 100644
--- a/runtime/doc/message.txt
+++ b/runtime/doc/message.txt
@@ -1,4 +1,4 @@
-*message.txt*   For Vim version 8.0.  Last change: 2017 Jan 02
+*message.txt*   For Vim version 8.0.  Last change: 2017 Mar 25
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -768,6 +768,13 @@
 You tried to execute a command that is neither an Ex command nor
 a user-defined command.
 
+							*E943*  >
+  Command table needs to be updated, run 'make cmdidxs'
+
+This can only happen when changing the source code, when adding a command in
+src/ex_cmds.h.  The lookup table then needs to be updated, by running: >
+	make cmdidxs
+
 ==============================================================================
 3. Messages						*messages*
 
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 9a88edb..b4ee717 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.0.  Last change: 2017 Mar 09
+*options.txt*	For Vim version 8.0.  Last change: 2017 Mar 22
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -6489,8 +6489,7 @@
 	Flag passed to the shell to execute "!" and ":!" commands; e.g.,
 	"bash.exe -c ls" or "command.com /c dir".  For the MS-DOS-like
 	systems, the default is set according to the value of 'shell', to
-	reduce the need to set this option by the user.  It's not used for
-	OS/2 (EMX figures this out itself).
+	reduce the need to set this option by the user.
 	On Unix it can have more than one flag.  Each white space separated
 	part is passed as an argument to the shell command.
 	See |option-backslash| about including spaces and backslashes.
diff --git a/runtime/doc/os_mac.txt b/runtime/doc/os_mac.txt
index 82e4d75..53010b1 100644
--- a/runtime/doc/os_mac.txt
+++ b/runtime/doc/os_mac.txt
@@ -12,11 +12,12 @@
 	http://macvim.org/
 
 1. Filename Convention		|mac-filename|
-2. .vimrc an .vim files		|mac-vimfile|
-3. FAQ				|mac-faq|
-4. Known Lack			|mac-lack|
-5. Mac Bug Report		|mac-bug|
-6. Compiling Vim		|mac-compile|
+2. .vimrc and .vim files	|mac-vimfile|
+3. Standard mappings		|mac-standard-mappings|
+4. FAQ				|mac-faq|
+5. Known Lack			|mac-lack|
+6. Mac Bug Report		|mac-bug|
+7. Compiling Vim		|mac-compile|
 
 There was a Mac port for version 3.0 of Vim.  Here are the first few lines
 from the old file:
@@ -72,7 +73,18 @@
 files.
 
 ==============================================================================
-3. Mac FAQ						*mac-faq*
+3. Standard mappings				*mac-standard-mappings*
+
+The following mappings are available for cut/copy/paste from/to clipboard.
+
+key		Normal	Visual	  Insert	Description ~
+Command-v	"*P	"-d"*P    <C-R>*	paste text       *<D-v>*
+Command-c		"*y			copy Visual text *<D-c>*
+Command-x		"*d			cut Visual text  *<D-x>*
+Backspace		"*d			cut Visual text
+
+==============================================================================
+4. Mac FAQ						*mac-faq*
 
 On the internet:  http://macvim.org/OSX/index.php#FAQ
 
@@ -95,13 +107,13 @@
 	let $PATH = matchstr(s:path, 'VIMPATH\zs.\{-}\ze\n')
 
 ==============================================================================
-4. Mac Lack						*mac-lack*
+5. Mac Lack						*mac-lack*
 
 In a terminal CTRL-^ needs to be entered as Shift-Control-6.  CTRL-@ as
 Shift-Control-2.
 
 ==============================================================================
-5. Mac Bug Report					*mac-bug*
+6. Mac Bug Report					*mac-bug*
 
 When reporting any Mac specific bug or feature change, please use the vim-mac
 maillist |vim-mac|.  However, you need to be subscribed.  An alternative is to
@@ -110,7 +122,7 @@
 	mac@vim.org
 
 ==============================================================================
-6. Compiling Vim					*mac-compile*
+7. Compiling Vim					*mac-compile*
 
 See the file "src/INSTALLmac.txt" that comes with the source files.
 
diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt
index 663087b..98b37d0 100644
--- a/runtime/doc/os_win32.txt
+++ b/runtime/doc/os_win32.txt
@@ -1,4 +1,4 @@
-*os_win32.txt*  For Vim version 8.0.  Last change: 2016 Oct 12
+*os_win32.txt*  For Vim version 8.0.  Last change: 2017 Mar 21
 
 
 		  VIM REFERENCE MANUAL    by George Reilly
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 6e74c66..4f449e4 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -3277,6 +3277,9 @@
 <Char>	map.txt	/*<Char>*
 <CursorHold>	autocmd.txt	/*<CursorHold>*
 <D-	intro.txt	/*<D-*
+<D-c>	os_mac.txt	/*<D-c>*
+<D-v>	os_mac.txt	/*<D-v>*
+<D-x>	os_mac.txt	/*<D-x>*
 <Del>	change.txt	/*<Del>*
 <Down>	motion.txt	/*<Down>*
 <Drop>	change.txt	/*<Drop>*
@@ -4514,6 +4517,7 @@
 E940	eval.txt	/*E940*
 E941	eval.txt	/*E941*
 E942	eval.txt	/*E942*
+E943	message.txt	/*E943*
 E95	message.txt	/*E95*
 E96	diff.txt	/*E96*
 E97	diff.txt	/*E97*
@@ -6139,7 +6143,6 @@
 ft-ruby-omni	insert.txt	/*ft-ruby-omni*
 ft-ruby-syntax	syntax.txt	/*ft-ruby-syntax*
 ft-rust	filetype.txt	/*ft-rust*
-ft-rust	ft_rust.txt	/*ft-rust*
 ft-scheme-syntax	syntax.txt	/*ft-scheme-syntax*
 ft-sdl-syntax	syntax.txt	/*ft-sdl-syntax*
 ft-sed-syntax	syntax.txt	/*ft-sed-syntax*
@@ -7179,6 +7182,7 @@
 mac-faq	os_mac.txt	/*mac-faq*
 mac-filename	os_mac.txt	/*mac-filename*
 mac-lack	os_mac.txt	/*mac-lack*
+mac-standard-mappings	os_mac.txt	/*mac-standard-mappings*
 mac-vimfile	os_mac.txt	/*mac-vimfile*
 macintosh	os_mac.txt	/*macintosh*
 macro	map.txt	/*macro*
@@ -7689,6 +7693,8 @@
 no-eval-feature	eval.txt	/*no-eval-feature*
 no-type-checking	eval.txt	/*no-type-checking*
 no_buffers_menu	gui.txt	/*no_buffers_menu*
+no_mail_maps	filetype.txt	/*no_mail_maps*
+no_plugin_maps	filetype.txt	/*no_plugin_maps*
 non-greedy	pattern.txt	/*non-greedy*
 non-zero-arg	eval.txt	/*non-zero-arg*
 none-variable	eval.txt	/*none-variable*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 281cbc0..6f917d1 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2017 Mar 21
+*todo.txt*      For Vim version 8.0.  Last change: 2017 Mar 29
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -110,8 +110,8 @@
 
 Memory leak in test97?  The string is actually freed.  Weird.
 
-Patch to make "start" work better: Use ShellExecute in !start (Katsuya Hino,
-#1570)
+Patch for deleting the quickfix lists and a test for it. (Yegappan, 2017 Mar
+21)
 
 Add a toolbar in the terminal.  Can be global, above all windows, or specific
 for one window.
@@ -122,6 +122,8 @@
 json_encode(): should convert to utf-8. (Nikolai Pavlov, 2016 Jan 23)
 What if there is an invalid character?
 
+Patch for broken foldtext. (Christian 2017 Mar 22, #1567, 2nd one)
+
 Json string with trailing \u should be an error. (Lcd)
 
 On MS-Windows with 'clipboard' set to "unnamed" this doesn't work to double
@@ -148,6 +150,9 @@
 Patch to change all use of &sw to shiftwidth(). (Tyru, 2017 Feb 19)
 Wait until maintainers integrate it.
 
+Patch to change mb_char2len() to utf_char2len(c) when known to use UTF.
+(Dominique, 2017 Mar 21, #1582)
+
 Completion for user-defined commands does not work if a few characters were
 already typed. (Dominique, 2017 Jan 26)
 
@@ -157,6 +162,9 @@
 Suggestion to improve pt-br spell checking. (Marcelo D Montu, 2016 Dec 15,
 #1330)
 
+Patch to Modernize GtkForm Implmentation. (Kazuki Kuriyama, 2017 Mar 26)
+Any objections?
+
 Error in test_startup_utf8 on Solaris. (Danek Duvall, 2016 Aug 17)
 
 Completion for :!cmd shows each match twice. #1435
@@ -341,14 +349,6 @@
 Patch to fix wrong encoding of error message on Cygwin/MSYS terminal.
 (Ken Takata, 2016 Oct 4)
 
-Patch to introduce 'cmdencoding'. (Ken Takata, Aug 18?)
-Better help Aug 19.
-Problem: applies to too many commands, such as :cbuffer.
-Updated patch with three options, 2016 Sep 8.
-    Win32: When running ":make" and 'encoding' differs from the system locale,
-    the output should be converted.  Esp. when 'encoding' is "utf-8". (Yongwei
-    Wu) Should we use 'termencoding' for this?
-
 Patch to add 'systemencoding', convert between 'encoding' and this for file
 names, shell commands and the like.  (Kikuchan, 2010 Oct 14)
 Assume the system converts between the actual encoding of the filesystem to
@@ -421,7 +421,7 @@
 Because of using the initial buffer? (Dun Peal, 2016 May 12)
 
 Patch to add the :bvimgrep command.  (Christian Brabandt, 2014 Nov 12)
-Updated 2016 Jun 10, #858
+Updated 2016 Jun 10, #858  Update 2017 Mar 28: use <buffer>
 
 Add redrawtabline command. (Naruhiko Nishino, 2016 Jun 11)
 
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 5bf855c..d675c5e 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt*	For Vim version 8.0.  Last change: 2017 Mar 18
+*usr_41.txt*	For Vim version 8.0.  Last change: 2017 Mar 28
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -2277,8 +2277,8 @@
 	endif
 
 Two global variables are used:
-no_plugin_maps		disables mappings for all filetype plugins
-no_mail_maps		disables mappings for a specific filetype
+|no_plugin_maps|	disables mappings for all filetype plugins
+|no_mail_maps|		disables mappings for the "mail" filetype
 
 
 USER COMMANDS