diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 67f548d..8a4a54c 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.1.  Last change: 2019 Apr 04
+*eval.txt*	For Vim version 8.1.  Last change: 2019 Apr 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1044,7 +1044,7 @@
 expr7 / expr7  Number division					*expr-/*
 expr7 % expr7  Number modulo					*expr-%*
 
-For all, except ".", Strings are converted to Numbers.
+For all, except "." and "..", Strings are converted to Numbers.
 For bitwise operators see |and()|, |or()| and |xor()|.
 
 Note the difference between "+" and ".":
@@ -2508,9 +2508,7 @@
 pyxeval({expr})			any	evaluate |python_x| expression
 range({expr} [, {max} [, {stride}]])
 				List	items from {expr} to {max}
-readdir({directory} [, {expr}])
-				List	file names on {dir} with evalating
-					{expr}
+readdir({dir} [, {expr}])	List	file names in {dir} selected by {expr}
 readfile({fname} [, {type} [, {max}]])
 				List	get list of lines from file {fname}
 reg_executing()			String	get the executing register name
@@ -5398,6 +5396,9 @@
 
 		If the expansion fails, the result is an empty String or List.
 
+		You can also use |readdir()| if you need to do complicated
+		things, such as limiting the number of matches.
+
 		A name for a non-existing file is not included.  A symbolic
 		link is only included if it points to an existing file.
 		However, when the {alllinks} argument is present and it is
@@ -7279,6 +7280,8 @@
 							*readdir()*
 readdir({directory} [, {expr}])
 		Return a list with file and directory names in {directory}.
+		You can also use |glob()| if you don't need to do complicated
+		things, such as limiting the number of matches.
 
 		When {expr} is omitted all entries are included.
 		When {expr} is given, it is evaluated to check what to do:
@@ -7344,7 +7347,7 @@
 
 reg_recording()						*reg_recording()*
 		Returns the single letter name of the register being recorded.
-		Returns an empty string string when not recording.  See |q|.
+		Returns an empty string when not recording.  See |q|.
 
 reltime([{start} [, {end}]])				*reltime()*
 		Return an item that represents a time value.  The format of
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index ca52a34..577510b 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1,4 +1,4 @@
-*index.txt*     For Vim version 8.1.  Last change: 2019 Mar 21
+*index.txt*     For Vim version 8.1.  Last change: 2019 Apr 05
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1547,7 +1547,8 @@
 |:sbrewind|	:sbr[ewind]	split window and go to first file in the
 				buffer list
 |:scriptnames|	:scr[iptnames]	list names of all sourced Vim scripts
-|:scriptencoding| :scripte[ncoding]	encoding used in sourced Vim script
+|:scriptencoding| :scripte[ncoding]  encoding used in sourced Vim script
+|:scriptversion|  :scriptv[ersion]   version of Vim script used
 |:scscope|	:scs[cope]	split window and execute cscope command
 |:set|		:se[t]		show or set options
 |:setfiletype|	:setf[iletype]	set 'filetype', unless it was set already
diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt
index cf02e91..9d7e4ce 100644
--- a/runtime/doc/insert.txt
+++ b/runtime/doc/insert.txt
@@ -1,4 +1,4 @@
-*insert.txt*    For Vim version 8.1.  Last change: 2019 Mar 30
+*insert.txt*    For Vim version 8.1.  Last change: 2019 Apr 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt
index 638d7c7..65cd8df 100644
--- a/runtime/doc/message.txt
+++ b/runtime/doc/message.txt
@@ -1,4 +1,4 @@
-*message.txt*   For Vim version 8.1.  Last change: 2018 Dec 30
+*message.txt*   For Vim version 8.1.  Last change: 2019 Apr 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -703,11 +703,13 @@
 This happens when an Ex command with mandatory argument(s) was executed, but
 no argument has been specified.
 
-							*E474* *E475*  >
+							*E474* *E475* *E983*  >
   Invalid argument
   Invalid argument: {arg}
+  Duplicate argument: {arg}
 
-An Ex command has been executed, but an invalid argument has been specified.
+An Ex command or function has been executed, but an invalid argument has been
+specified.
 
 							*E488*  >
   Trailing characters
diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt
index dc441d3..27afb94 100644
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 8.1.  Last change: 2019 Apr 04
+*repeat.txt*    For Vim version 8.1.  Last change: 2019 Apr 05
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -327,8 +327,9 @@
 
 :scriptv[ersion] {version}		*:scriptv* *:scriptversion*
 								*E999* *E984*
-			Specify the version of Vim for the lines that follow.
-			Does not apply to sourced scripts.
+			Specify the version of Vim for the lines that follow
+			in the same file.  Only applies at the toplevel of
+			sourced scripts, not inside functions.
 
 			If {version} is higher than what the current Vim
 			version supports E999 will be given.  You either need
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 4b5a1ef..1dd10b7 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2531,6 +2531,7 @@
 :let-option	eval.txt	/*:let-option*
 :let-register	eval.txt	/*:let-register*
 :let-unpack	eval.txt	/*:let-unpack*
+:let..=	eval.txt	/*:let..=*
 :let.=	eval.txt	/*:let.=*
 :let/=	eval.txt	/*:let\/=*
 :letstar=	eval.txt	/*:letstar=*
@@ -2936,6 +2937,8 @@
 :scripte	repeat.txt	/*:scripte*
 :scriptencoding	repeat.txt	/*:scriptencoding*
 :scriptnames	repeat.txt	/*:scriptnames*
+:scriptv	repeat.txt	/*:scriptv*
+:scriptversion	repeat.txt	/*:scriptversion*
 :scs	if_cscop.txt	/*:scs*
 :scscope	if_cscop.txt	/*:scscope*
 :se	options.txt	/*:se*
@@ -4692,7 +4695,11 @@
 E980	eval.txt	/*E980*
 E981	starting.txt	/*E981*
 E982	terminal.txt	/*E982*
+E983	message.txt	/*E983*
+E984	repeat.txt	/*E984*
+E985	eval.txt	/*E985*
 E99	diff.txt	/*E99*
+E999	repeat.txt	/*E999*
 EX	intro.txt	/*EX*
 EXINIT	starting.txt	/*EXINIT*
 Elvis	intro.txt	/*Elvis*
@@ -5242,6 +5249,7 @@
 autocmd-intro	autocmd.txt	/*autocmd-intro*
 autocmd-list	autocmd.txt	/*autocmd-list*
 autocmd-nested	autocmd.txt	/*autocmd-nested*
+autocmd-once	autocmd.txt	/*autocmd-once*
 autocmd-osfiletypes	filetype.txt	/*autocmd-osfiletypes*
 autocmd-patterns	autocmd.txt	/*autocmd-patterns*
 autocmd-remove	autocmd.txt	/*autocmd-remove*
@@ -6071,6 +6079,7 @@
 expr-+	eval.txt	/*expr-+*
 expr--	eval.txt	/*expr--*
 expr-.	eval.txt	/*expr-.*
+expr-..	eval.txt	/*expr-..*
 expr-/	eval.txt	/*expr-\/*
 expr-<	eval.txt	/*expr-<*
 expr-<#	eval.txt	/*expr-<#*
@@ -7240,6 +7249,7 @@
 iquote	motion.txt	/*iquote*
 is	motion.txt	/*is*
 isdirectory()	eval.txt	/*isdirectory()*
+isinf()	eval.txt	/*isinf()*
 islocked()	eval.txt	/*islocked()*
 isnan()	eval.txt	/*isnan()*
 it	motion.txt	/*it*
@@ -7367,6 +7377,7 @@
 list-index	eval.txt	/*list-index*
 list-modification	eval.txt	/*list-modification*
 list-repeat	windows.txt	/*list-repeat*
+list2str()	eval.txt	/*list2str()*
 lite.vim	syntax.txt	/*lite.vim*
 literal-string	eval.txt	/*literal-string*
 lnum-variable	eval.txt	/*lnum-variable*
@@ -8316,6 +8327,7 @@
 read-messages	insert.txt	/*read-messages*
 read-only-share	editing.txt	/*read-only-share*
 read-stdin	version5.txt	/*read-stdin*
+readdir()	eval.txt	/*readdir()*
 readfile()	eval.txt	/*readfile()*
 readline.vim	syntax.txt	/*readline.vim*
 recording	repeat.txt	/*recording*
@@ -8734,6 +8746,7 @@
 status-line	windows.txt	/*status-line*
 statusmsg-variable	eval.txt	/*statusmsg-variable*
 str2float()	eval.txt	/*str2float()*
+str2list()	eval.txt	/*str2list()*
 str2nr()	eval.txt	/*str2nr()*
 strcasestr()	eval.txt	/*strcasestr()*
 strcharpart()	eval.txt	/*strcharpart()*
@@ -9679,6 +9692,8 @@
 vimrc-intro	usr_05.txt	/*vimrc-intro*
 vimrc-option-example	starting.txt	/*vimrc-option-example*
 vimrc_example.vim	usr_05.txt	/*vimrc_example.vim*
+vimscript-version	eval.txt	/*vimscript-version*
+vimscript-versions	eval.txt	/*vimscript-versions*
 vimtutor	usr_01.txt	/*vimtutor*
 virtcol()	eval.txt	/*virtcol()*
 visual-block	visual.txt	/*visual-block*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 5f3b383..f11a944 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.1.  Last change: 2019 Apr 04
+*todo.txt*      For Vim version 8.1.  Last change: 2019 Apr 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -156,13 +156,6 @@
 But in a channel callback this does not happen.  We need to do something
 similar to check_due_timer().  Also see #3809.
 
-Using "5gj" starting inside a closed fold does not work on screen lines but on
-text lines. (Julius Hulsmann, #4095)
-
-Add "-once" to ":autocmd". Also add "-nested" as an alias for "nested".
-(Justin M. Keyes, #4100)  Syntax of -once may be strange.  ++once and ++nested
-is better?
-
 C syntax: {} inside () causes following {} to be highlighted as error.
 (Michalis Giannakidis, 2006 Jun 1)
 
@@ -175,8 +168,6 @@
 This modeline throws unexpected errors: (#4165)
     vim: syn=nosyntax
 
-Patch for listchars with multi-byte chars.  #4197, discussion on #4046.
-
 Make balloon_show() work outside of 'balloonexpr'?  Users expect it to work:
 #2948. (related to #1512?)
 On Win32 it stops showing, because showState is already ShS_SHOWING.
@@ -200,10 +191,6 @@
 
 nvo-mode mapping works on Windows, not on Linux. (#3678)
 
-Patch to add isinf(). (Ozaki Kiichi, #3787)
-
-Patch to de-duplicate code and add error message.  (Yegappan, #4207)
-
 No test for NULL after allocating memory: #4174
     src/crypt.c  line 256;
     src/crypt_zip.c line  93;
@@ -218,60 +205,31 @@
     src/option.c  line 12980;
     src/popupmnu.c line 1090;
 
+Missing tests for:
+- add_termcap_entry()
+
 When using exclusive selection and vi" that fails, cursor moves to the left.
 Cursor should not move. (#4024)
 
-Patch to be able to separately map CTRL-H and BS on Windows.
-(Linwei, 2017 Jul 11, #1833)
-
-Patch to fix encoding of messages on MS-Windows. (Yasuhiro Matsumoto, 2019 Feb
-13, #3914)
-
-Patch to fix encoding conversion in messages. (#3969)
-Check that this is fixed: (ichizok)
-vim --clean -X -V1 -es -c 'echo "hello"' -c quit
-
 Incsearch test fails when locale is "C". (Dominique Pelle, #3986)
 Also run all tests with C locale?
 
-Patch to improve readability of complicated if(). (ichizok, 2019 Jan 29,
-#3879)
-
 "vat" doesn't work well on XML when the closing > is on another line.
 #3927
 
-Patch to include ARM64 support. (Leendert van Doorn, 2019 Feb 9)
-
 Pasting foo} causes Vim to behave weird. (John Little, 2018 Jun 17)
 Related to bracketed paste.  I cannot reproduce it.
 
-Patch to add tagfunc().  Cleaned up by Christian Brabandt, 2013 Jun 22.
-New update 2017 Apr 10, #1628
-https://github.com/chrisbra/vim-mq-patches/blob/master/tagfunc
-Updated by Andy Massimino, 2018 Feb 7:
-https://github.com/andymass/vim/commit/4e3aa0a5dab96d2799567622f3f537e357aa479e 
-Or should we make it asynchronous?
-Patch by Andy Massimino: #4010 - needs a bit more work
-
 When 'confirm' is set a "silent q" doesn't show the prompt.  It should in this
 case. (Nate Peterson, 2019 Jan 31, #3892)
 For "silent! q" it should not prompt and just fail.
 
-Patch to add readdir(). (Yasuhiro Matsumoto, #2439)
-
-Patch to add list2str() and str2list().  #4190.  Can be done with split/join
-and map(), but not for composing characters.
-
-Patch to add equal field to complete items. (#3887)
-Needs to sync to latest version, merge conflicts.
-Summary:    no way to avoid filtering for autocomlete function
-Problem:    No way to avoid filtering for autocomlete function, causing
-            flickering of the popup menu.
-Solution:   Add the "equal" field to complete items. (closes #3887)
-
 Patch to add CompleteChanged event: triggered when the complete popup menu
 changes. #4176
 
+Patch to add tab-local directories. (Yegappan, #4212)
+Wait a bit for comments.
+
 Problem with Visual yank when 'linebreak' and 'showbreak' are set.
 Patch with tests, but it's not clear how it is supposed to work. (tommm, 2018
 Nov 17)  Asked about this, Dec 22. Christian will have a look.
@@ -281,6 +239,19 @@
 
 Patch for larger icons in installer. (#978)  Still not good.
 
+Patch to add tagfunc().  Cleaned up by Christian Brabandt, 2013 Jun 22.
+New update 2017 Apr 10, #1628
+https://github.com/chrisbra/vim-mq-patches/blob/master/tagfunc
+Updated by Andy Massimino, 2018 Feb 7:
+https://github.com/andymass/vim/commit/4e3aa0a5dab96d2799567622f3f537e357aa479e 
+Or should we make it asynchronous?
+Patch by Andy Massimino: #4010 - needs more work, tests are missing, docs need
+updating, should probably return a string with extra info instad of dict
+entries.
+
+Patch to fix that using "5gj" starting inside a closed fold does not work on
+screen lines but on text lines. (Julius Hulsmann, #4095)  Lacks a test.
+
 Some xterm responses are not properly handled: (Markus Gömmel, 2019 Apr 1)
     DCS 0 $ r Pt ST    should be ignored.
     DCS 0 + r/Pt/  ST  already ignored?
@@ -386,6 +357,10 @@
 Patch to add an interrupt() function: sets got_int.  Useful in an autocommand
 such as BufWritePre that checks the file name or contents.
 
+More patches to check:
+- #3797  add test for #3789
+- #4098  improve Travis config
+
 Should make 'listchars' global-local.  Local to window or to buffer?
 Probably window.
 Add something like 'fillchars' local to window, but allow for specifying a
@@ -3947,8 +3922,6 @@
 8   Add local options for each tab page?  E.g., 'diffopt' could differ between
     tab pages.
 7   Add local highlighting for each tab page?
-7   Add local directory for tab pages?  How would this interfere with
-    window-local directories?
 
 
 Spell checking:
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index e8fab88..429e242 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt*	For Vim version 8.1.  Last change: 2019 Mar 29
+*usr_41.txt*	For Vim version 8.1.  Last change: 2019 Apr 06
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -775,6 +775,7 @@
 	systemlist()		get the result of a shell command as a list
 	hostname()		name of the system
 	readfile()		read a file into a List of lines
+	readdir()		get a List of file names in a directory
 	writefile()		write a List of lines or Blob into a file
 
 Date and Time:				*date-functions* *time-functions*
