Update runtime files
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index baecc92..4c87726 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1,4 +1,4 @@
-*change.txt*    For Vim version 8.1.  Last change: 2019 May 07
+*change.txt*    For Vim version 8.1.  Last change: 2019 Jul 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1179,9 +1179,9 @@
 2. 10 numbered registers "0 to "9
 3. The small delete register "-
 4. 26 named registers "a to "z or "A to "Z
-5. three read-only registers ":, "., "%
-6. alternate buffer register "#
-7. the expression register "=
+5. Three read-only registers ":, "., "%
+6. Alternate buffer register "#
+7. The expression register "=
 8. The selection and drop registers "*, "+ and "~ 
 9. The black hole register "_
 10. Last search pattern register "/
diff --git a/runtime/doc/debugger.txt b/runtime/doc/debugger.txt
index 772aac0..47369d6 100644
--- a/runtime/doc/debugger.txt
+++ b/runtime/doc/debugger.txt
@@ -1,4 +1,4 @@
-*debugger.txt*  For Vim version 8.1.  Last change: 2019 May 12
+*debugger.txt*  For Vim version 8.1.  Last change: 2019 Jul 06
 
 
 		  VIM REFERENCE MANUAL    by Gordon Prieur
@@ -6,6 +6,10 @@
 
 Debugger Support Features				*debugger-support*
 
+These features are for integration with a debugger or an Integrated
+Programming Environment (IPE) or Integrated Development Environment (IDE).
+For the debugger running in a Vim terminal window see |terminal-debugger|.
+
 1. Debugger Features		|debugger-features|
 2. Vim Compile Options		|debugger-compilation|
 3. Integrated Debuggers		|debugger-integration|
@@ -14,9 +18,7 @@
 ==============================================================================
 1. Debugger Features					*debugger-features*
 
-The following features are available for an integration with a debugger or
-an Integrated Programming Environment (IPE) or Integrated Development
-Environment (IDE):
+The following features are available:
 
 	Alternate Command Input				|alt-input|
 	Debug Signs					|debug-signs|
@@ -90,6 +92,9 @@
 could be used for displaying other information as well.  The functionality is
 limited though, for advanced popups see |popup-window|.
 
+Another way to use the balloon is with the 'balloonexpr' option.  This is
+completely user definable.
+
 The Balloon Evaluation has some settable parameters too.  For Motif the font
 list and colors can be set via X resources (XmNballoonEvalFontList,
 XmNballoonEvalBackground, and XmNballoonEvalForeground).
@@ -106,9 +111,6 @@
 toolbar.  The 'ballooneval' option does not need to be set for this.  But the
 other settings apply.
 
-Another way to use the balloon is with the 'balloonexpr' option.  This is
-completely user definable.
-
 ==============================================================================
 2. Vim Compile Options					*debugger-compilation*
 
diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt
index 7b8c21f..4ed01ac 100644
--- a/runtime/doc/mbyte.txt
+++ b/runtime/doc/mbyte.txt
@@ -1,4 +1,4 @@
-*mbyte.txt*     For Vim version 8.1.  Last change: 2019 Apr 28
+*mbyte.txt*     For Vim version 8.1.  Last change: 2019 Jul 04
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar et al.
@@ -943,11 +943,12 @@
 IME many many many times.  Because IME with status on is hooking all of your
 key inputs, you cannot input 'j', 'k', or almost all of keys to Vim directly.
 
-This |+multi_byte_ime| feature help this.  It reduce times of switch status of
-IME manually.  In normal mode, there are almost no need working IME, even
-editing multibyte text.  So exiting insert mode with ESC, Vim memorize last
-status of IME and force turn off IME.  When re-enter insert mode, Vim revert
-IME status to that memorized automatically.
+The |+multi_byte_ime| feature helps for this.  It reduces the number of times
+the IME status has to be switched manually.  In Normal mode, there is almost
+no need to use IME, even when editing multibyte text.  So when exiting Insert
+mode, Vim memorizes the last status of IME and turns off IME.  When
+re-entering Insert mode, Vim sets the IME status to that memorized status
+automatically.
 
 This works on not only insert-normal mode, but also search-command input and
 replace mode.
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index e6c9992..ad50bfc 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.1.  Last change: 2019 Jun 27
+*options.txt*	For Vim version 8.1.  Last change: 2019 Jul 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1142,8 +1142,10 @@
     set bexpr=MyBalloonExpr()
     set ballooneval
 <
-	Also see |balloon_show()|, can be used if the content of the balloon
-	is to be fetched asynchronously.
+	Also see |balloon_show()|, it can be used if the content of the balloon
+	is to be fetched asynchronously.  In that case evaluating
+	'balloonexpr' should result in an empty string.  If you get a balloon
+	with only "0" you probably didn't return anything from your function.
 
 	NOTE: The balloon is displayed only if the cursor is on a text
 	character.  If the result of evaluating 'balloonexpr' is not empty,
@@ -1155,7 +1157,7 @@
 	This option cannot be set in a modeline when 'modelineexpr' is off.
 
 	It is not allowed to change text or jump to another window while
-	evaluating 'balloonexpr' |textlock|.
+	evaluating 'balloonexpr', see |textlock|.
 
 	To check whether line breaks in the balloon text work use this check: >
 		if has("balloon_multiline")
diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt
index b0397a3..f74a7c2 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 Jul 04
+*popup.txt*  For Vim version 8.1.  Last change: 2019 Jul 13
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -178,11 +178,11 @@
 popup_atcursor({what}, {options})			*popup_atcursor()*
 		Show the {what} above the cursor, and close it when the cursor
 		moves.  This works like: >
-			call popup_create({what}, {
-				\ 'pos': 'botleft',
-				\ 'line': 'cursor-1',
-				\ 'col': 'cursor',
-				\ 'moved': 'WORD',
+			call popup_create({what}, *{
+				\ pos: 'botleft',
+				\ line: 'cursor-1',
+				\ col: 'cursor',
+				\ moved: 'WORD',
 				\ })
 <		Use {options} to change the properties.
 
@@ -191,11 +191,11 @@
 		Show the {what} above the position from 'ballooneval' and
 		close it when the mouse moves.  This works like: >
 		  let pos = screenpos(v:beval_winnr, v:beval_lnum, v:beval_col)
-		  call popup_create({what}, {
-			\ 'pos': 'botleft',
-			\ 'line': pos.row - 1,
-			\ 'col': pos.col,
-			\ 'mousemoved': 'WORD',
+		  call popup_create({what}, *{
+			\ pos: 'botleft',
+			\ line: pos.row - 1,
+			\ col: pos.col,
+			\ mousemoved: 'WORD',
 			\ })
 <		Use {options} to change the properties.
 		See |popup_beval_example| for an example use.
@@ -240,18 +240,18 @@
 
 popup_dialog({what}, {options})				*popup_dialog()*
 		Just like |popup_create()| but with these default options: >
-			call popup_create({what}, {
-				\ 'pos': 'center',
-				\ 'zindex': 200,
-				\ 'drag': 1,
-				\ 'border': [],
-				\ 'padding': [],
+			call popup_create({what}, *{
+				\ pos: 'center',
+				\ zindex: 200,
+				\ drag: 1,
+				\ border: [],
+				\ padding: [],
 				\})
 <		Use {options} to change the properties. E.g. add a 'filter'
 		option with value 'popup_filter_yesno'.  Example: >
-			call popup_create('do you want to quit (Yes/no)?', {
-				\ 'filter': 'popup_filter_yesno',
-				\ 'callback': 'QuitCallback',
+			call popup_create('do you want to quit (Yes/no)?', *{
+				\ filter: 'popup_filter_yesno',
+				\ callback: 'QuitCallback',
 				\ })
 
 <		By default the dialog can be dragged, so that text below it
@@ -356,14 +356,14 @@
 		items with cursorkeys, and close it an item is selected with
 		Space or Enter. {what} should have multiple lines to make this
 		useful.  This works like: >
-			call popup_create({what}, {
-				\ 'pos': 'center',
-				\ 'zindex': 200,
-				\ 'drag': 1,
-				\ 'wrap': 0,
-				\ 'border': [],
-				\ 'padding': [],
-				\ 'filter': 'popup_filter_menu',
+			call popup_create({what}, *{
+				\ pos: 'center',
+				\ zindex: 200,
+				\ drag: 1,
+				\ wrap: 0,
+				\ border: [],
+				\ padding: [],
+				\ filter: 'popup_filter_menu',
 				\ })
 <		The current line is highlighted with a match using
 		"PopupSelected", or "PmenuSel" if that is not defined.
@@ -391,18 +391,18 @@
 popup_notification({what}, {options})			 *popup_notification()*
 		Show the {what} for 3 seconds at the top of the Vim window.
 		This works like: >
-			call popup_create({what}, {
-				\ 'line': 1,
-				\ 'col': 10,
-				\ 'minwidth': 20,
-				\ 'time': 3000,
-				\ 'tabpage': -1,
-				\ 'zindex': 300,
-				\ 'drag': 1,
-				\ 'highlight': 'WarningMsg',
-				\ 'border': [],
-				\ 'close': 'click',
-				\ 'padding': [0,1,0,1],
+			call popup_create({what}, *{
+				\ line: 1,
+				\ col: 10,
+				\ minwidth: 20,
+				\ time: 3000,
+				\ tabpage: -1,
+				\ zindex: 300,
+				\ drag: 1,
+				\ highlight: 'WarningMsg',
+				\ border: [],
+				\ close: 'click',
+				\ padding: [0,1,0,1],
 				\ })
 <		The PopupNotification highlight group is used instead of
 		WarningMsg if it is defined.
@@ -732,17 +732,17 @@
 	   endif
 	endfunc
 
-	call popup_dialog('Continue? y/n', {
-		\ 'filter': 'popup_filter_yesno',
-		\ 'callback': 'MyDialogHandler',
+	call popup_dialog('Continue? y/n', *{
+		\ filter: 'popup_filter_yesno',
+		\ callback: 'MyDialogHandler',
 		\ })
 <
 					*popup_menu-shortcut-example*
 Extend popup_filter_menu() with shortcut keys: >
 
-	call popup_menu(['Save', 'Cancel', 'Discard'], {
-		\ 'filter': 'MyMenuFilter',
-		\ 'callback': 'MyMenuHandler',
+	call popup_menu(['Save', 'Cancel', 'Discard'], *{
+		\ filter: 'MyMenuFilter',
+		\ callback: 'MyMenuHandler',
 		\ })
 
 	func MyMenuFilter(id, key)
@@ -781,7 +781,7 @@
 	    endif
 	    call popup_close(s:winid)
 	  endif
-	  let s:winid = popup_beval(v:beval_text, {'mousemoved': 'word'})
+	  let s:winid = popup_beval(v:beval_text, *{mousemoved: 'word'})
 	  let s:last_text = v:beval_text
 	  return ''
 	endfunc
@@ -812,7 +812,7 @@
 	endfunc
 
 	func ShowPopup(id)
-	  let s:winid = popup_beval(s:balloonText, {'mousemoved': 'word'})
+	  let s:winid = popup_beval(s:balloonText, *{mousemoved: 'word'})
 	endfunc
 <
 
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 123c1de..25fd332 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -7468,6 +7468,7 @@
 listener_flush()	eval.txt	/*listener_flush()*
 listener_remove()	eval.txt	/*listener_remove()*
 lite.vim	syntax.txt	/*lite.vim*
+literal-Dict	eval.txt	/*literal-Dict*
 literal-string	eval.txt	/*literal-string*
 lnum-variable	eval.txt	/*lnum-variable*
 load-plugins	starting.txt	/*load-plugins*
@@ -8241,6 +8242,8 @@
 popup-window-functions	usr_41.txt	/*popup-window-functions*
 popup.txt	popup.txt	/*popup.txt*
 popup_atcursor()	popup.txt	/*popup_atcursor()*
+popup_beval()	popup.txt	/*popup_beval()*
+popup_beval_example	popup.txt	/*popup_beval_example*
 popup_clear()	popup.txt	/*popup_clear()*
 popup_close()	popup.txt	/*popup_close()*
 popup_create()	popup.txt	/*popup_create()*
@@ -8252,6 +8255,7 @@
 popup_getoptions()	popup.txt	/*popup_getoptions()*
 popup_getpos()	popup.txt	/*popup_getpos()*
 popup_hide()	popup.txt	/*popup_hide()*
+popup_locate()	popup.txt	/*popup_locate()*
 popup_menu()	popup.txt	/*popup_menu()*
 popup_menu-shortcut-example	popup.txt	/*popup_menu-shortcut-example*
 popup_move()	popup.txt	/*popup_move()*
@@ -8590,6 +8594,7 @@
 screenchar()	eval.txt	/*screenchar()*
 screenchars()	eval.txt	/*screenchars()*
 screencol()	eval.txt	/*screencol()*
+screenpos()	eval.txt	/*screenpos()*
 screenrow()	eval.txt	/*screenrow()*
 screenstring()	eval.txt	/*screenstring()*
 script	usr_41.txt	/*script*
@@ -8693,8 +8698,10 @@
 sign_getplaced()	eval.txt	/*sign_getplaced()*
 sign_jump()	eval.txt	/*sign_jump()*
 sign_place()	eval.txt	/*sign_place()*
+sign_placelist()	eval.txt	/*sign_placelist()*
 sign_undefine()	eval.txt	/*sign_undefine()*
 sign_unplace()	eval.txt	/*sign_unplace()*
+sign_unplacelist()	eval.txt	/*sign_unplacelist()*
 signs	sign.txt	/*signs*
 simple-change	change.txt	/*simple-change*
 simplify()	eval.txt	/*simplify()*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index be712ae..5ff226b 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 Jul 04
+*todo.txt*      For Vim version 8.1.  Last change: 2019 Jul 13
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,33 +38,26 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Ongoing work on text properties, see src/textprop.c
-
-Popup windows are being implemented, see |popup-window|.
-
 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.
 
-Listener causes extra } to be inserted. (Paul Jolly, #4455)
+Shorten the command used in test Makefile. (Daniel Hahler, #4643)
 
 Refactor: Move common things out of evalfunc.c, it's too big.
-
-Template string: review #4491
-
-Terminal test fails when vim is configured with some features. (Dominique,
-#4597)
+Move function specs out of eval.txt, it's too big.
 
 Popup windows:
+- Default popup_menu padding: only left&right.
+- Add 'previewpopup': open preview in a popupwindow.
+  Values: dict options as a string?  "line:20,maxwidth:60,maxheight:20"
 - Implement flip option
-- Have a way to scroll to the bottom? (#4577)
+- Have a way to scroll to the bottom, e.g. set 'firstline' to -1? (#4577)
 - Why does 'nrformats' leak from the popup window buffer???
+  Happens in Test_simple_popup() at the second screendump.
 - Disable commands, feedkeys(), CTRL-W, etc. in a popup window.
   Use ERROR_IF_POPUP_WINDOW for more commands.
-- 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?
 - Can the buffer be re-used if it was the last one, to avoid using up lots of
   buffer numbers?
@@ -150,6 +143,11 @@
 - When 'encoding' is not utf-8, or the job is using another encoding, setup
   conversions.
 
+Error numbers available: E172, E221, E242, E249, E260, E274, E275, E276,
+E278, E279, E281, E290, E291, E292, E361, E362, E366, E396, E450, E451, E452,
+E453, E454, E460, E489, E491, E56, E57, E565, E569, E578, E610, E611, E653,
+E654, E693, E706, E856, E857, E860, E861, E863, E889, E900, E959
+
 Sound: support on Mac?  Or does libcanberra work there?
 
 Patch to use forward slash for completion even when 'shellslash' is set.
@@ -157,6 +155,8 @@
 
 Patch to add win_splitmove() function. (Andy Massimino, #4561)
 
+Resolve() works incorrectly under windows. (#4661)
+
 Completion mixes results from the current buffer with tags and other files.
 Happens when typing CTRL-N while still search for results.  E.g., type "b_" in
 terminal.c and then CTRL-N twice.
@@ -169,7 +169,7 @@
 Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
 (#4087)
 
-Patch to the code to get sign information. (Yegappan Lakshmanan, #4586)
+Patch for Template string: #4491  Not ready yet.  New pull: #4634
 
 ":bnext" in a help buffer is supposed to go to the next help buffer, but it
 goes to any buffer, and then :bnext skips help buffers, since they are
@@ -227,6 +227,25 @@
 
 Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
 
+Lifepillar: Updated/cleaned up color schemes:
+https://github.com/lifepillar/vim8-colorschemes.
+
+Include a few color schemes, based on popularity:
+http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
+http://vimawesome.com/?q=tag:color-scheme
+Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
+- monokai - Xia Crusoe (2017 Aug 4) 
+- seoul256 - Christian Brabandt (2017 Aug 3)
+- gruvbox -  Christian Brabandt (2017 Aug 3) (simplified version from
+      Lifepillar, 2018 Jan 22, #2573)
+- janah - Marco Hinz (2017 Aug 4)
+- apprentice - Romain Lafourcade (2017 Aug 6)  remarks about help file #1964
+Suggested by Hiroki Kokubun:
+- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
+- [hybrid](https://github.com/w0ng/vim-hybrid)
+Include solarized color scheme?, it does not support termguicolors.
+- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
+
 Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
 Mar 5)
 
@@ -309,6 +328,10 @@
 Missing tests for:
 - add_termcap_entry()
 
+Redo only remembers the last change.  Could use "{count}g." to redo an older
+change.  How does the user know which change?  At least have a way to list
+them: ":repeats".  Add to history, like search history and command line history.
+
 When using exclusive selection and vi" that fails, cursor moves to the left.
 Cursor should not move. (#4024)
 
@@ -791,22 +814,6 @@
 clip_x11_convert_selection_cb() is invoked, thus in X library code.
 Kazunobu Kuriyama is working on a proper fix. (2017 Jul 25)
 
-Include a few color schemes, based on popularity:
-http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
-http://vimawesome.com/?q=tag:color-scheme
-Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
-- monokai - Xia Crusoe (2017 Aug 4) 
-- seoul256 - Christian Brabandt (2017 Aug 3)
-- gruvbox -  Christian Brabandt (2017 Aug 3) (simplified version from
-      Lifepillar, 2018 Jan 22, #2573)
-- janah - Marco Hinz (2017 Aug 4)
-- apprentice - Romain Lafourcade (2017 Aug 6)  remarks about help file #1964
-Suggested by Hiroki Kokubun:
-- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
-- [hybrid](https://github.com/w0ng/vim-hybrid)
-Include solarized color scheme?, it does not support termguicolors.
-- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
-
 Problem with three-piece comment. (Michael Lee, 2017 May 11, #1696)
 
 Creating a partial with an autoload function is confused about the "self"
@@ -1521,10 +1528,6 @@
 Patch: On MS-Windows shellescape() may have to triple double quotes.
 (Ingo Karkat, 2015 Jan 16)
 
-Redo only remembers the last change.  Could use "{count}g." to redo an older
-change.  How does the user know which change?  At least have a way to list
-them: ":repeats".
-
 Patch for glob(), adding slash to normal files. (Ingo Karkat, 2014 Dec 22)
 
 When entering and leaving the preview window autocommands are triggered, but
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 0f677e4..9e290dd 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 Jul 04
+*usr_41.txt*	For Vim version 8.1.  Last change: 2019 Jul 06
 
 		     VIM USER MANUAL - by Bram Moolenaar