diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt
index e527086..bfb62f5 100644
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 7.4.  Last change: 2016 May 19
+*channel.txt*      For Vim version 7.4.  Last change: 2016 May 24
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -61,7 +61,7 @@
   crosss-refrences in a database.
 
 ==============================================================================
-2. Channel demo						*channel-demo*
+2. Channel demo				*channel-demo* *demoserver.py*
 
 This requires Python.  The demo program can be found in
 $VIMRUNTIME/tools/demoserver.py
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index cc1e53c..995a049 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt*  For Vim version 7.4.  Last change: 2016 Apr 30
+*filetype.txt*  For Vim version 7.4.  Last change: 2016 May 24
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -585,6 +585,10 @@
 folding style instead.  For example: >
         autocmd FileType man setlocal foldmethod=indent foldenable
 
+You may also want to set 'keywordprg' to make the |K| command open a manual
+page in a Vim window: >
+	set keywordprg=:Man
+
 
 MANPAGER				      *manpager.vim*
 
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 3f37649..a836e53 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.4.  Last change: 2016 May 10
+*options.txt*	For Vim version 7.4.  Last change: 2016 May 24
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -6065,6 +6065,7 @@
 	  keymap/	key mapping files |mbyte-keymap|
 	  lang/		menu translations |:menutrans|
 	  menu.vim	GUI menus |menu.vim|
+	  pack/		packages |:packadd|
 	  plugin/	plugin scripts |write-plugin|
 	  print/	files for printing |postscript-print-encoding|
 	  spell/	spell checking files |spell|
@@ -6086,6 +6087,8 @@
 	   personal preferences to overrule or add to the distributed defaults
 	   or system-wide settings (rarely needed).
 
+	More entries are added when using |packages|.
+
 	Note that, unlike 'path', no wildcards like "**" are allowed.  Normal
 	wildcards are allowed, but can significantly slow down searching for
 	runtime files.  For speed, use as few items as possible and avoid
diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt
index 92ab585..791e7a5 100644
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 7.4.  Last change: 2016 Apr 05
+*repeat.txt*    For Vim version 7.4.  Last change: 2016 May 24
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -232,6 +232,8 @@
 				pack/*/opt/{name} ~
 			The directory is added to 'runtimepath' if it wasn't
 			there yet.
+			If the directory pack/*/opt/{name}/after exists it is
+			added at the end of 'runtimepath'.
 
 			Note that {name} is the directory name, not the name
 			of the .vim file.  All the files matching the pattern
@@ -507,6 +509,9 @@
 This also works when loading plugins is disabled.  The automatic loading will
 only happen once.
 
+If the package has an "after" directory, that directory is added to the end of
+'runtimepath', so that anything there will be loaded later.
+
 
 Using a single plugin and loading it automatically ~
 
diff --git a/runtime/doc/tags b/runtime/doc/tags
index a249d2c..f181b50 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4589,6 +4589,7 @@
 PHP_outdentphpescape	indent.txt	/*PHP_outdentphpescape*
 PHP_removeCRwhenUnix	indent.txt	/*PHP_removeCRwhenUnix*
 PHP_vintage_case_default_indent	indent.txt	/*PHP_vintage_case_default_indent*
+Partial	eval.txt	/*Partial*
 Pattern	pattern.txt	/*Pattern*
 Perl	if_perl.txt	/*Perl*
 Posix	intro.txt	/*Posix*
@@ -5562,6 +5563,7 @@
 delete-insert	change.txt	/*delete-insert*
 delete-menus	gui.txt	/*delete-menus*
 deleting	change.txt	/*deleting*
+demoserver.py	channel.txt	/*demoserver.py*
 design-assumptions	develop.txt	/*design-assumptions*
 design-compatible	develop.txt	/*design-compatible*
 design-decisions	develop.txt	/*design-decisions*
@@ -6351,7 +6353,6 @@
 g`a	motion.txt	/*g`a*
 ga	various.txt	/*ga*
 garbagecollect()	eval.txt	/*garbagecollect()*
-garbagecollect_for_testing()	eval.txt	/*garbagecollect_for_testing()*
 gd	pattern.txt	/*gd*
 gdb	debug.txt	/*gdb*
 ge	motion.txt	/*ge*
@@ -8611,6 +8612,13 @@
 terminfo	term.txt	/*terminfo*
 termresponse-variable	eval.txt	/*termresponse-variable*
 test-functions	usr_41.txt	/*test-functions*
+test_garbagecollect_now()	eval.txt	/*test_garbagecollect_now()*
+test_null_channel()	eval.txt	/*test_null_channel()*
+test_null_dict()	eval.txt	/*test_null_dict()*
+test_null_job()	eval.txt	/*test_null_job()*
+test_null_list()	eval.txt	/*test_null_list()*
+test_null_partial()	eval.txt	/*test_null_partial()*
+test_null_string()	eval.txt	/*test_null_string()*
 testing-variable	eval.txt	/*testing-variable*
 tex-cchar	syntax.txt	/*tex-cchar*
 tex-cole	syntax.txt	/*tex-cole*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 6377a76..1a118a1 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.4.  Last change: 2016 May 20
+*todo.txt*      For Vim version 7.4.  Last change: 2016 May 24
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -42,41 +42,26 @@
 
 If removing buffer that's being read from, close channel?
 
-problem with "Ignore" after adding 'guicolors'. (Charles Campbell, 2016 Apr
+Problem with "Ignore" after adding 'guicolors'. (Charles Campbell, 2016 Apr
 27)
 
-In test_partial when start_job() has a non-existing command memory leaks.
-
-Rename garbagecollect_for_testing() to test_garbagecollect_now().
-Add test_get_null_list(), use in test_expr.
+In test_partial when start_job() has a non-existing command memory (a dict
+item) leaks.
 
 Memory leak in test49
 Memory leak in test_alot, with matchstrpos()
 
 Packages:
-- Add the "after" directory to 'runtimepath' only if it exists.
+- Add the "after" directory to 'runtimepath', only if it exists.
   (Greg Hurrell, May 1)
 - Also keep a list of loaded plugins, skip when encountered again?
 
 Vim.org: when a user already has a homepage, do show the field so that it can
 be deleted.
 
-Patch to fix memory leak (Justin Keyes, 2016 May 16, #811)
-Instead free before assigning, set to NULL after free.
-
 Comparing partials doesn't work well. (Nikolai Pavlov, 2016 May 17, #813)
 Examples in the form of a test (May 19)
 
-Documentation for partials is lacking.
-- Add "partial" and "partials" tag.
-- Assigning to a dict member creates a partial.
-    How to store a partial associated with dictA in dictB? Add help for this.
-    See comments on #812.
-- using dict.Func for function() is broken: not true (Nikolai Pavlov, May 20)
-
-Patch to fix that BufUnload is triggered twice. (Hirohito Higashi, 2016 May
-14)
-
 +channel:
 - Feedback from Ramel Eshed, May 7.  Occasional crashes.
 - Close_cb isn't invoked when output goes to a buffer. (Luc Hermitte)
@@ -153,15 +138,14 @@
 
 Using freed memory in quickfix code. (Dominique, 2016 Mar 21)
 
+User commands: add a <> item to pass on command modifiers, such as ":tab".
+
 jsonencode(): should convert to utf-8. (Nikolai Pavlov, 2016 Jan 23)
 What if there is an invalid character?
 
 Once .exe with updated installer is available: Add remark to download page
 about /S and /D options (Ken Takata, 2016 Apr 13)
 
-Patch to avoid reallocating buffer for quickfix lines three times.
-(Yegappan Lakshmanan, 2016 May 7)
-
 Patch to make cursor blinking work better with GTK3. (Kazunobu Kuriyama, 2016
 Apr 19)  Need to check this works on Linux.
 Alternative:
@@ -180,14 +164,22 @@
 Patch to fix using CTRL-] on "{address}." in help. (Hirohito Higashi, 2016 May
 18, #814)
 
+Patch to reduce number of memory allocations for quickfix lines.
+(Yegappan Lakshmanan, 2016 May 22, #831)
+
+Patch to fix greying popup menu items. (Shane Harper, 2016 May 23, #834)
+
 &t_ut not used with 'termguicolors' is set. (Jacob Niehus, 2016 May 14, #804)
 Patch to fix this, Jacob Niehus, 2016 May 14, #805)
 
 For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11)
 5)
 
+Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807)
+
 When 'autochdir' is set, writing  new file does not change the current dir.
 (Dan Church, issue #777)
+Patch to fix this. (mister fish (Allen Haim), 2016 May 14, #803)
 
 ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19)
 Also with latest version.
@@ -420,7 +412,7 @@
 inconsistent with the documentation.
 
 Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
-13, last version)  Update Mar 21., Apr 2.
+13, last version)  Update May 22, #830.
 
 Can we cache the syntax attributes, so that updates for 'relativenumber' and
 'cursorline'/'cursorcolumn' are a lot faster?
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 7510210..067ae6e 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 7.4.  Last change: 2016 May 05
+*various.txt*   For Vim version 7.4.  Last change: 2016 May 24
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -607,13 +607,16 @@
 			directory of Vim.  It is called 'ref' and does a
 			simple spelling check.
 			Special cases:
+			- If 'keywordprg' begins with ":" it is invoked as
+			  a Vim Ex command with [count].
 			- If 'keywordprg' is empty, the ":help" command is
 			  used.  It's a good idea to include more characters
 			  in 'iskeyword' then, to be able to find more help.
-			- When 'keywordprg' is equal to "man", a count before
-			  "K" is inserted after the "man" command and before
-			  the keyword.  For example, using "2K" while the
-			  cursor is on "mkdir", results in: >
+			- When 'keywordprg' is equal to "man" or starts with
+			  ":", a [count] before "K" is inserted after
+			  keywordprg and before the keyword.  For example,
+			  using "2K" while the cursor is on "mkdir", results
+			  in: >
 				!man 2 mkdir
 <			- When 'keywordprg' is equal to "man -s", a count
 			  before "K" is inserted after the "-s".  If there is
diff --git a/runtime/ftplugin/groovy.vim b/runtime/ftplugin/groovy.vim
new file mode 100644
index 0000000..cc7d6e3
--- /dev/null
+++ b/runtime/ftplugin/groovy.vim
@@ -0,0 +1,19 @@
+" Vim filetype plugin file
+" Language:	groovy
+" Maintainer:	Justin M. Keyes <justinkz@gmail.com>
+" Last Change:	2016 May 22
+
+if exists('b:did_ftplugin')
+  finish
+endif
+let b:did_ftplugin = 1
+
+let s:cpo_save = &cpo
+set cpo-=C
+
+let b:undo_ftplugin = 'setlocal commentstring<'
+
+setlocal commentstring=//%s
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/scripts.vim b/runtime/scripts.vim
index 5c136ab..2763828 100644
--- a/runtime/scripts.vim
+++ b/runtime/scripts.vim
@@ -1,7 +1,7 @@
 " Vim support file to detect file types in scripts
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last change:	2014 Aug 24
+" Last change:	2016 May 21
 
 " This file is called by an autocommand for every file that has just been
 " loaded into a buffer.  It checks if the type of file can be recognized by
@@ -245,7 +245,8 @@
     set ft=xhtml
 
     " HTML (e.g.: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN")
-  elseif s:line1 =~? '\<DOCTYPE\s\+html\>'
+    " Avoid "doctype html", used by slim.
+  elseif s:line1 =~? '<!DOCTYPE\s\+html\>'
     set ft=html
 
     " PDF
diff --git a/runtime/syntax/groovy.vim b/runtime/syntax/groovy.vim
index 42fcf4a..dc39677 100644
--- a/runtime/syntax/groovy.vim
+++ b/runtime/syntax/groovy.vim
@@ -2,9 +2,9 @@
 " Language:	Groovy
 " Original Author:	Alessio Pace <billy.corgan@tiscali.it>
 " Maintainer:	Tobias Rapp <yahuxo@gmx.de>
-" Version: 	0.1.14
+" Version: 	0.1.16
 " URL:	  http://www.vim.org/scripts/script.php?script_id=945
-" Last Change:	2015 Apr 21
+" Last Change:	2016 May 23
 
 " THE ORIGINAL AUTHOR'S NOTES:
 "
@@ -255,8 +255,11 @@
 syn region  groovyString          start=+'+ end=+'+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell
 syn region  groovyString          start=+"""+ end=+"""+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr
 syn region  groovyString          start=+'''+ end=+'''+ contains=groovySpecialChar,groovySpecialError,@Spell
-" regex string
-syn region groovyString           start='/[^/]'  end='/' contains=groovySpecialChar,groovyRegexChar,groovyELExpr
+if exists("groovy_regex_strings")
+  " regex strings interfere with the division operator and thus are disabled
+  " by default
+  syn region groovyString         start='/[^/*]' end='/' contains=groovySpecialChar,groovyRegexChar,groovyELExpr
+endif
 " syn region groovyELExpr start=+${+ end=+}+ keepend contained
 syn match groovyELExpr /\${.\{-}}/ contained
 syn match groovyELExpr /\$[a-zA-Z_][a-zA-Z0-9_.]*/ contained
diff --git a/runtime/syntax/scheme.vim b/runtime/syntax/scheme.vim
index a210b0c..c59e09c 100644
--- a/runtime/syntax/scheme.vim
+++ b/runtime/syntax/scheme.vim
@@ -1,6 +1,6 @@
 " Vim syntax file
 " Language:	Scheme (R5RS + some R6RS extras)
-" Last Change:	2012 May 13
+" Last Change:	2016 May 23
 " Maintainer:	Sergey Khorev <sergey.khorev@gmail.com>
 " Original author:	Dirk van Deun <dirk@igwe.vub.ac.be>
 
@@ -245,6 +245,18 @@
     syn region schemeUnquote matchgroup=Delimiter start="#,@\[" end="\]" contains=ALL
     syn region schemeQuoted matchgroup=Delimiter start="#['`]" end=![ \t()\[\]";]!me=e-1 contains=ALL
     syn region schemeQuoted matchgroup=Delimiter start="#['`](" matchgroup=Delimiter end=")" contains=ALL
+
+    " Identifiers are very liberal in MzScheme/Racket
+    syn match schemeOther ![^()[\]{}",'`;#|\\ ]\+!
+
+    " Language setting
+    syn match schemeLang "#lang [-+_/A-Za-z0-9]\+\>"
+
+    " Various number forms
+    syn match schemeNumber "[-+]\=[0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\>"
+    syn match schemeNumber "[-+]\=\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>"
+    syn match schemeNumber "[-+]\=[0-9]\+/[0-9]\+\>"
+    syn match schemeNumber "\([-+]\=\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\)\=[-+]\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\=i\>"
 endif
 
 
@@ -321,6 +333,9 @@
 
   HiLink schemeExtSyntax	Type
   HiLink schemeExtFunc		PreProc
+
+  HiLink schemeLang		PreProc
+
   delcommand HiLink
 endif
 
