Update runtime files
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index caf37c8..fc7a930 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 8.1.  Last change: 2019 Jun 02
+*editing.txt*   For Vim version 8.1.  Last change: 2019 Jun 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -593,7 +593,7 @@
 expression functions |argc()| and |argv()|.  These all work on the argument
 list of the current window.
 
-							*:ar*  *:arg* *:args*
+							*:ar* *:arg* *:args*
 :ar[gs]			Print the argument list, with the current file in
 			square brackets.
 
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index bf5c8b9..5f81560 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -8868,7 +8868,7 @@
 		finished.  The first argument is the sound ID, the second
 		argument is the status:
 			0	sound was played to the end
-			1	sound was interruped
+			1	sound was interrupted
 			2	error occured after sound started
 		Example: >
 		   func Callback(id, status)
@@ -8878,7 +8878,7 @@
 
 <		Returns the sound ID, which can be passed to `sound_stop()`.
 		Returns zero if the sound could not be played.
-		{only available when compiled with the +sound feature}
+		{only available when compiled with the |+sound| feature}
 
 							*sound_playfile()*
 sound_playfile({path} [, {callback}])
@@ -8886,13 +8886,13 @@
 		must be a full path.  On Ubuntu you may find files to play
 		with this command: >
 		    :!find /usr/share/sounds -type f | grep -v index.theme
-<		{only available when compiled with the +sound feature}
+<		{only available when compiled with the |+sound| feature}
 
 
 sound_stop({id})					*sound_stop()*
 		Stop playing sound {id}.  {id} must be previously returned by
 		`sound_playevent()` or `sound_playfile()`.
-		{only available when compiled with the +sound feature}
+		{only available when compiled with the |+sound| feature}
 
 							*soundfold()*
 soundfold({word})
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index 5aab717..d1c3c87 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 May 25
+*index.txt*     For Vim version 8.1.  Last change: 2019 Jun 09
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1484,7 +1484,6 @@
 |:perldo|	:perld[o]	execute Perl command for each line
 |:pop|		:po[p]		jump to older entry in tag stack
 |:popup|	:popu[p]	popup a menu by name
-|:popupclear|	:popupc[lear]	remove all popup windows
 |:ppop|		:pp[op]		":pop" in preview window
 |:preserve|	:pre[serve]	write all text to swap file
 |:previous|	:prev[ious]	go to previous file in argument list
diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt
index 09b2cba..0400880 100644
--- a/runtime/doc/popup.txt
+++ b/runtime/doc/popup.txt
@@ -1,4 +1,4 @@
-*popup.txt*  For Vim version 8.1.  Last change: 2019 Jun 09
+*popup.txt*  For Vim version 8.1.  Last change: 2019 Jun 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -6,7 +6,7 @@
 
 Displaying text in floating window.			*popup* *popup-window*
 
-THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE  
+THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE
 
 1. Introduction			|popup-intro|
 2. Functions			|popup-functions|
@@ -76,31 +76,21 @@
 the current cursor position, but if the cursor is close to the top of the Vim
 window it will be placed below the cursor position.
 
+When the screen scrolls up for output of an Ex command, popups move too, so
+that they will not cover the output.
 
 
-TODO:
-
-Scrolling: When the screen scrolls up for output of an Ex command, what
-happens with popups?
-1. Stay where they are.  Problem: listed text may go behind and can't be read.
-2. Scroll with the page.  What if they get updated?  Either postpone, or take
-   the scroll offset into account.
-Probably 2. is the best choice.
 
 
 IMPLEMENTATION:
-- buffers remain after popup was deleted.
-- do not redraw whole window when popup was changed, mark affected lines for
-  redraw.
+- buffers remain after a popup was deleted.
 - Why does 'nrformats' leak from the popup window buffer???
-- Add 'balloonpopup': instead of showing text, let the callback open a balloon
-  and return the window ID.   The popup will then be closed when the mouse
-  moves, except when it moves inside the popup.
+- Add 'balloonpopup': instead of showing text, let the callback open a popup
+  window and return the window ID.   The popup will then be closed when the
+  mouse moves, except when it moves inside the popup.
 - For the "moved" property also include mouse movement?
 - Make redrawing more efficient and avoid flicker:
     - put popup menu also put in popup_mask?
-    - Use changes in popup_mask to decide what windows and range of lines to
-      redraw?
 - Disable commands, feedkeys(), CTRL-W, etc. in a popup window.
   Use NOT_IN_POPUP_WINDOW for more commands.
 - Invoke filter with character before mapping?
@@ -114,7 +104,7 @@
 ==============================================================================
 2. Functions						*popup-functions*
 
-THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE  
+THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE
 
 [functions to be moved to eval.txt later, keep overview of functions here]
 
@@ -164,7 +154,7 @@
 
 
 popup_dialog({text}, {options})				*popup_dialog()*
-	  	{not implemented yet}
+		{not implemented yet}
 		Just like |popup_create()| but with these default options: >
 			call popup_create({text}, {
 				\ 'pos': 'center',
@@ -176,7 +166,7 @@
 
 
 popup_filter_menu({id}, {key})				*popup_filter_menu()*
-	  	{not implemented yet}
+		{not implemented yet}
 		Filter that can be used for a popup. It handles the cursor
 		keys to move the selected index in the popup. Space and Enter
 		can be used to select an item.  Invokes the "callback" of the
@@ -185,7 +175,7 @@
 
 
 popup_filter_yesno({id}, {key})				*popup_filter_yesno()*
-	  	{not implemented yet}
+		{not implemented yet}
 		Filter that can be used for a popup. It handles only the keys
 		'y', 'Y' and 'n' or 'N'.  Invokes the "callback" of the
 		popup menu with the 1 for 'y' or 'Y' and zero for 'n' or 'N'
@@ -216,7 +206,7 @@
 		    core_line	screen line of the text box
 		    core_width	width of the text box in screen cells
 		    core_height	height of the text box in screen cells
-		    visible 	one if the popup is displayed, zero if hidden
+		    visible	one if the popup is displayed, zero if hidden
 		Note that these are the actual screen positions.  They differ
 		from the values in `popup_getoptions()` for the sizing and
 		positioning mechanism applied.
@@ -235,7 +225,7 @@
 
 
 popup_menu({text}, {options})				 *popup_menu()*
-	  	{not implemented yet}
+		{not implemented yet}
 		Show the {text} near the cursor, handle selecting one of the
 		items with cursorkeys, and close it an item is selected with
 		Space or Enter. {text} should have multiple lines to make this
@@ -260,7 +250,7 @@
 
 
 popup_notification({text}, {options})			 *popup_notification()*
-	  	{not implemented yet}
+		{not implemented yet}
 		Show the {text} for 3 seconds at the top of the Vim window.
 		This works like: >
 			call popup_create({text}, {
@@ -281,7 +271,7 @@
 
 
 popup_setoptions({id}, {options})			*popup_setoptions()*
-	  	{not implemented yet}
+		{not implemented yet}
 		Override options in popup {id} with entries in {options}.
 
 
@@ -292,7 +282,7 @@
 window.  The buffer is always associated with the popup window and
 manipulation is restricted:
 - the buffer has no name
-- 'buftype' is "popup" 
+- 'buftype' is "popup"
 - 'swapfile' is off
 - 'bufhidden' is "hide"
 - 'buflisted' is off
@@ -424,7 +414,7 @@
 			  {start} or after {end}
 			The popup also closes if the cursor moves to another
 			line or to another window.
-	filter		A callback that can filter typed characters, see 
+	filter		A callback that can filter typed characters, see
 			|popup-filter|.
 	callback	A callback that is called when the popup closes, e.g.
 			when using |popup_filter_menu()|, see |popup-callback|.
@@ -486,7 +476,7 @@
 	    return 1
 	  endif
 	  return 0
-  	endfunc
+	endfunc
 
 Currently the key is what results after any mapping.  This may change...
 
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 0dd3f70..2f30f08 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -1351,6 +1351,8 @@
 +scrollbind	various.txt	/*+scrollbind*
 +signs	various.txt	/*+signs*
 +smartindent	various.txt	/*+smartindent*
++sound	various.txt	/*+sound*
++spell	various.txt	/*+spell*
 +startuptime	various.txt	/*+startuptime*
 +statusline	various.txt	/*+statusline*
 +sun_workshop	various.txt	/*+sun_workshop*
@@ -2816,8 +2818,6 @@
 :pop	tagsrch.txt	/*:pop*
 :popu	gui.txt	/*:popu*
 :popup	gui.txt	/*:popup*
-:popupc	popup.txt	/*:popupc*
-:popupclear	popup.txt	/*:popupclear*
 :pp	windows.txt	/*:pp*
 :ppop	windows.txt	/*:ppop*
 :pr	various.txt	/*:pr*
@@ -6138,6 +6138,7 @@
 expand()	eval.txt	/*expand()*
 expand-env	options.txt	/*expand-env*
 expand-environment-var	options.txt	/*expand-environment-var*
+expandcmd()	eval.txt	/*expandcmd()*
 expr	eval.txt	/*expr*
 expr-!	eval.txt	/*expr-!*
 expr-!=	eval.txt	/*expr-!=*
@@ -8227,6 +8228,7 @@
 popup-window	popup.txt	/*popup-window*
 popup.txt	popup.txt	/*popup.txt*
 popup_atcursor()	popup.txt	/*popup_atcursor()*
+popup_clear()	popup.txt	/*popup_clear()*
 popup_close()	popup.txt	/*popup_close()*
 popup_create()	popup.txt	/*popup_create()*
 popup_create-usage	popup.txt	/*popup_create-usage*
@@ -8581,6 +8583,9 @@
 scriptnames-dictionary	eval.txt	/*scriptnames-dictionary*
 scriptout-changed	version4.txt	/*scriptout-changed*
 scriptversion	eval.txt	/*scriptversion*
+scriptversion-1	eval.txt	/*scriptversion-1*
+scriptversion-2	eval.txt	/*scriptversion-2*
+scriptversion-3	eval.txt	/*scriptversion-3*
 scroll-binding	scroll.txt	/*scroll-binding*
 scroll-cursor	scroll.txt	/*scroll-cursor*
 scroll-down	scroll.txt	/*scroll-down*
@@ -8690,6 +8695,10 @@
 socket-interface	channel.txt	/*socket-interface*
 sort()	eval.txt	/*sort()*
 sorting	change.txt	/*sorting*
+sound_clear()	eval.txt	/*sound_clear()*
+sound_playevent()	eval.txt	/*sound_playevent()*
+sound_playfile()	eval.txt	/*sound_playfile()*
+sound_stop()	eval.txt	/*sound_stop()*
 soundfold()	eval.txt	/*soundfold()*
 space	intro.txt	/*space*
 spec-customizing	pi_spec.txt	/*spec-customizing*
diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt
index 149ef67..9c4108f 100644
--- a/runtime/doc/tagsrch.txt
+++ b/runtime/doc/tagsrch.txt
@@ -1,4 +1,4 @@
-*tagsrch.txt*   For Vim version 8.1.  Last change: 2019 Jun 02
+*tagsrch.txt*   For Vim version 8.1.  Last change: 2019 Jun 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -85,18 +85,21 @@
 ":tag {name}".
 
 The ignore-case matches are not found for a ":tag" command when:
-- the 'ignorecase' option is off and 'tagcase' is "followic"
+- 'tagcase' is "followic" and the 'ignorecase' option is off
+- 'tagcase' is "followscs" and the 'ignorecase' option is off and the
+  'smartcase' option is off or the pattern contains an upper case character.
 - 'tagcase' is "match"
 - 'tagcase' is "smart" and the pattern contains an upper case character.
-- 'tagcase' is "followscs" and 'smartcase' option is on and the pattern
-  contains an upper case character.
 
 The ignore-case matches are found when:
 - a pattern is used (starting with a "/")
 - for ":tselect"
-- when 'tagcase' is "followic" and 'ignorecase' is off
-- when 'tagcase' is "match"
-- when 'tagcase' is "followscs" and the 'smartcase' option is off
+- when 'tagcase' is "followic" and 'ignorecase' is on
+- when 'tagcase' is "followscs" and 'ignorecase' is on or the 'smartcase'
+  option is on and the pattern does not contain an upper case character
+- when 'tagcase' is "ignore"
+- when 'tagcase' is "smart" and the patter does not contain an upper case
+  character
 
 Note that using ignore-case tag searching disables binary searching in the
 tags file, which causes a slowdown.  This can be avoided by fold-case sorting
@@ -503,7 +506,7 @@
 ctags			As found on most Unix systems.  Only supports C.  Only
 			does the basic work.
 							*Exuberant_ctags*
-exuberant ctags		This a very good one.  It works for C, C++, Java,
+exuberant ctags		This is a very good one.  It works for C, C++, Java,
 			Fortran, Eiffel and others.  It can generate tags for
 			many items.  See http://ctags.sourceforge.net.
 etags			Connected to Emacs.  Supports many languages.
@@ -824,7 +827,7 @@
 			(default: whole file).
 			See |:search-args| for [/] and [!].
 
-					*:che*  *:chec* *:check* *:checkpath*
+					*:che* *:chec* *:check* *:checkpath*
 :che[ckpath]		List all the included files that could not be found.
 
 :che[ckpath]!		List all the included files.
@@ -895,7 +898,7 @@
 If the function returns |v:null| instead of a List, a standard tag lookup will
 be performed instead.
 
-It is not allowed to change the tagstack from inside 'tagfunc'.  *E986* 
+It is not allowed to change the tagstack from inside 'tagfunc'.  *E986*
 
 The following is a hypothetical example of a function used for 'tagfunc'.  It
 uses the output of |taglist()| to generate the result: a list of tags in the
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index b03633f..070050f 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 Jun 06
+*todo.txt*      For Vim version 8.1.  Last change: 2019 Jun 10
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -42,23 +42,22 @@
 
 Popup windows are being implemented, see |popup-window|.
 
-Listener causes extra } to be inserted. (Paul Jolly, #4455)
+Include tests:
+    test_assert.vim
+    test_paste.vim
+    shared.vim
 
 Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
 20)
 Also put :argadd commands at the start for all buffers, so that their order
 remains equal?  Then %argdel to clean it up.  Do try this with 'hidden' set.
 
-Patch for Chinese translations for nsis. (#4407)  Comments handled?
-
 Patch to add v:searchstat. (Takuya Fujiwara, #4446)  Should be independent of
 'shortmess', filled on demand and cached until search changes.
 
-listener callback is invoked while another is still busy? (Paul Jolly)
-Should not happen because of text lock.
+Listener causes extra } to be inserted. (Paul Jolly, #4455)
 
-When 'rightleft' is set search pattern is not displayed. (#4488)
-Caused by 8.1.1375 ?
+Improvement to Travis config: Ozaki Kiichi, #4521
 
 'incsearch' with :s: (#3321)
 - Get E20 when using command history to get "'<,'>s/a/b" and no Visual area
@@ -173,8 +172,14 @@
 Internal diff doesn't handle binary file like external diff does. (Mike
 Williams, 2018 Oct 30)
 
+Add "number" to 'signcolumn': Put signs in the number column if it exists.
+Otherwise behave like "yes". (Adam Stankiewicz, #4515)
+
 Problem with :tlmenu: Detach item added with all modes?  Issue #3563.
 
+Patch to use timers in matchparen. (Daniel Hahler, #1338)
+Ready to include now?
+
 The quoting of the [command] argument of :terminal is not clearly documented.
 Give a few examples. (#4288)
 
@@ -190,10 +195,17 @@
 Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
 Mar 5)
 
+Should we include some part of pull request #4505, not increment changedtick
+in some cases?  E.g. for ":write" when the changed flag was already off, the
+buffer didn't change at all.
+
 Patch to add getreginfo() and setreg() with an option to set the unnamed
 register "", So that registers can be saved and fully restored.
 (Andy Massimino, 2018 Aug 24, #3370)
 
+Line numbers in profile are off when function was defined with ":execute".
+(Daniel Hahler, #4511)
+
 Add a way to create an empty, hidden buffer.  Like doing ":new|hide".
 ":let buf = bufcreate('name')
 
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 5f45cca..5f987dc 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 8.1.  Last change: 2019 Jun 02
+*various.txt*   For Vim version 8.1.  Last change: 2019 Jun 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -428,6 +428,8 @@
 T  *+scrollbind*	|'scrollbind'|
 B  *+signs*		|:sign|
 N  *+smartindent*	|'smartindent'|
+B  *+sound*		|sound_playevent()|, |sound_playfile()| functions, etc.
+N  *+spell*		spell checking support, see |spell|
 N  *+startuptime*	|--startuptime| argument
 N  *+statusline*	Options 'statusline', 'rulerformat' and special
 			formats of 'titlestring' and 'iconstring'