changeset 18343:375a7ecdb351

Update runtime files. Commit: https://github.com/vim/vim/commit/2e693a88b24dc6b12883fad78ff2cb9cd4469c98 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Oct 16 22:35:02 2019 +0200 Update runtime files.
author Bram Moolenaar <Bram@vim.org>
date Wed, 16 Oct 2019 22:45:04 +0200
parents fedab77fee7b
children 69db186daf4c
files nsis/lang/simpchinese.nsi runtime/defaults.vim runtime/doc/change.txt runtime/doc/eval.txt runtime/doc/if_perl.txt runtime/doc/if_ruby.txt runtime/doc/indent.txt runtime/doc/message.txt runtime/doc/options.txt runtime/doc/pi_netrw.txt runtime/doc/popup.txt runtime/doc/syntax.txt runtime/doc/tags runtime/doc/terminal.txt runtime/doc/todo.txt runtime/doc/vi_diff.txt runtime/filetype.vim runtime/indent/testdir/yaml.in runtime/indent/testdir/yaml.ok runtime/indent/yaml.vim runtime/syntax/named.vim
diffstat 21 files changed, 229 insertions(+), 165 deletions(-) [+]
line wrap: on
line diff
--- a/nsis/lang/simpchinese.nsi
+++ b/nsis/lang/simpchinese.nsi
@@ -5,7 +5,7 @@
 #
 # Locale ID    : 2052
 # fileencoding : UTF-8
-# Author       : Guopeng Wen
+# Author       : Guopeng Wen, David Liu
 
 !insertmacro MUI_LANGUAGE "SimpChinese"
 
@@ -112,7 +112,7 @@ LangString str_desc_plugin          ${LA
 LangString str_section_plugin_home  ${LANG_SIMPCHINESE} \
     "私有插件目录"
 LangString str_desc_plugin_home     ${LANG_SIMPCHINESE} \
-    "Create plugin directories in HOME directory."
+    "在主目录创建私有插件目录。"
 
 LangString str_section_plugin_vim   ${LANG_SIMPCHINESE} \
     "公共插件目录"
@@ -141,14 +141,14 @@ LangString str_desc_rm_exe          ${LA
     "删除 Vim 的所有执行文件及脚本。"
 
 LangString str_ungroup_plugin       ${LANG_SIMPCHINESE} \
-    "Remove plugin directories"
+    "移除插件目录"
 LangString str_desc_rm_plugin       ${LANG_SIMPCHINESE} \
-    "Remove the plugin directories if they are empty."
+    "移除插件目录(如果目录为空)。"
 
 LangString str_unsection_plugin_home ${LANG_SIMPCHINESE} \
     "私有插件目录"
 LangString str_desc_rm_plugin_home  ${LANG_SIMPCHINESE} \
-    "Remove the plugin directories from HOME directory."
+    "从主目录中移除私有插件目录。"
 
 LangString str_unsection_plugin_vim ${LANG_SIMPCHINESE} \
     "公共插件目录"
@@ -241,37 +241,37 @@ LangString str_msg_unregistering ${LANG_
 LangString str_vimrc_page_title    ${LANG_SIMPCHINESE} \
     "设置 _vimrc"
 LangString str_vimrc_page_subtitle ${LANG_SIMPCHINESE} \
-    "选择键盘、鼠标和增强选项。"
+    "选择键盘、鼠标和扩展设置。"
 
 LangString str_msg_compat_title    ${LANG_SIMPCHINESE} \
     "Vi / Vim 行为"
 LangString str_msg_compat_desc     ${LANG_SIMPCHINESE} \
-    "&Compatibility and enhancements"
+    "兼容性与扩展(&B)"
 LangString str_msg_compat_vi       ${LANG_SIMPCHINESE} \
-    "Vi compatible"
+    "原始 Vi"
 LangString str_msg_compat_vim      ${LANG_SIMPCHINESE} \
-    "Vim original"
+    "原始 Vim"
 LangString str_msg_compat_defaults ${LANG_SIMPCHINESE} \
-    "Vim with some enhancements (load defaults.vim)"
+    "Vim 原始版本和部分扩展 (加载 defaults.vim)"
 LangString str_msg_compat_all      ${LANG_SIMPCHINESE} \
-    "Vim with all enhancements (load vimrc_example.vim) (Default)"
+    "Vim 原始版本和所有扩展 (加载 vimrc_example.vim) (缺省)"
 
 LangString str_msg_keymap_title   ${LANG_SIMPCHINESE} \
     "键盘映射"
 LangString str_msg_keymap_desc    ${LANG_SIMPCHINESE} \
-    "&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
+    "为 Windows 映射按键(&R) (例如:Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F 等)"
 LangString str_msg_keymap_default ${LANG_SIMPCHINESE} \
-    "Do not remap keys (Default)"
+    "不映射按键 (缺省)"
 LangString str_msg_keymap_windows ${LANG_SIMPCHINESE} \
-    "Remap a few keys"
+    "映射一些按键"
 
 LangString str_msg_mouse_title   ${LANG_SIMPCHINESE} \
     "鼠标"
 LangString str_msg_mouse_desc    ${LANG_SIMPCHINESE} \
-    "&Behavior of right and left buttons"
+    "左键和右键行为(&B)"
 LangString str_msg_mouse_default ${LANG_SIMPCHINESE} \
-    "Right: popup menu, Left: visual mode (Default)"
+    "右键:弹出菜单, 左键:可视化模式 (缺省)"
 LangString str_msg_mouse_windows ${LANG_SIMPCHINESE} \
-    "Right: popup menu, Left: select mode (Windows)"
+    "右键:弹出菜单, 左键:选择模式 (Windows)"
 LangString str_msg_mouse_unix    ${LANG_SIMPCHINESE} \
-    "Right: extends selection, Left: visual mode (Unix)"
+    "右键: 扩展选择, 左键:可视化模式 (Unix)"
--- a/runtime/defaults.vim
+++ b/runtime/defaults.vim
@@ -1,7 +1,7 @@
 " The default vimrc file.
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last change:	2019 Feb 18
+" Last change:	2019 Sep 28
 "
 " This is loaded if no vimrc file was found.
 " Except when Vim is run with "-u NONE" or "-C".
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1,4 +1,4 @@
-*change.txt*    For Vim version 8.1.  Last change: 2019 Sep 27
+*change.txt*    For Vim version 8.1.  Last change: 2019 Sep 28
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.1.  Last change: 2019 Sep 27
+*eval.txt*	For Vim version 8.1.  Last change: 2019 Oct 13
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2880,7 +2880,7 @@ win_id2tabwin({expr})		List	get tab and 
 win_id2win({expr})		Number	get window nr from window ID
 win_screenpos({nr})		List	get screen position of window {nr}
 win_splitmove({nr}, {target} [, {options}])
-				none	move window {nr} to split of {target}
+				Number	move window {nr} to split of {target}
 winbufnr({nr})			Number	buffer number of window {nr}
 wincol()			Number	window column of the cursor
 winheight({nr})			Number	height of window {nr}
@@ -2974,6 +2974,9 @@ append({lnum}, {text})					*append()*
 appendbufline({expr}, {lnum}, {text})			*appendbufline()*
 		Like |append()| but append the text in buffer {expr}.
 
+		This function works only for loaded buffers. First call
+		|bufload()| if needed.
+
 		For the use of {expr}, see |bufname()|.
 
 		{lnum} is used like with |append()|.  Note that using |line()|
@@ -3540,8 +3543,8 @@ complete({startcol}, {matches})			*compl
 <		This isn't very useful, but it shows how it works.  Note that
 		an empty string is returned to avoid a zero being inserted.
 
-		Can also be used as a |method|, the second argument is passed
-		in: >
+		Can also be used as a |method|, the base is passed as the
+		second argument: >
 			GetMatches()->complete(col('.'))
 
 complete_add({expr})				*complete_add()*
@@ -3676,7 +3679,7 @@ confirm({msg} [, {choices} [, {default} 
 
 		Can also be used as a |method|in: >
 			BuildMessage()->confirm("&Yes\n&No")
-
+<
 							*copy()*
 copy({expr})	Make a copy of {expr}.  For Numbers and Strings this isn't
 		different from using {expr} directly.
@@ -3871,6 +3874,9 @@ deletebufline({expr}, {first} [, {last}]
 		If {last} is omitted then delete line {first} only.
 		On success 0 is returned, on failure 1 is returned.
 
+		This function works only for loaded buffers. First call
+		|bufload()| if needed.
+
 		For the use of {expr}, see |bufname()| above.
 
 		{first} and {last} are used like with |getline()|. Note that
@@ -3879,7 +3885,7 @@ deletebufline({expr}, {first} [, {last}]
 
 		Can also be used as a |method|: >
 			GetBuffer()->deletebufline(1)
-
+<
 							*did_filetype()*
 did_filetype()	Returns |TRUE| when autocommands are being executed and the
 		FileType event has been triggered at least once.  Can be used
@@ -4040,7 +4046,7 @@ exepath({expr})						*exepath()*
 
 		Can also be used as a |method|: >
 			GetCommand()->exepath()
-
+<
 							*exists()*
 exists({expr})	The result is a Number, which is |TRUE| if {expr} is defined,
 		zero otherwise.
@@ -4566,7 +4572,7 @@ foldlevel({lnum})					*foldlevel()*
 
 		Can also be used as a |method|: >
 			GetLnum()->foldlevel()
-
+<
 							*foldtext()*
 foldtext()	Returns a String, to be displayed for a closed fold.  This is
 		the default function used for the 'foldtext' option and should
@@ -5848,7 +5854,7 @@ histadd({history}, {item})				*histadd()
 			:let date=input("Enter date: ")
 <		This function is not available in the |sandbox|.
 
-		Can also be used as a |method|, the base is used for the
+		Can also be used as a |method|, the base is passed as the
 		second argument: >
 			GetHistory()->histadd('search')
 
@@ -6376,8 +6382,8 @@ libcall({libname}, {funcname}, {argument
 		Examples: >
 			:echo libcall("libc.so", "getenv", "HOME")
 
-<		Can also be used as a |method|, where the base is passed as
-		the argument to the called function: >
+<		Can also be used as a |method|, the base is passed as the
+		third argument: >
 			GetValue()->libcall("libc.so", "getenv")
 <
 							*libcallnr()*
@@ -6391,8 +6397,8 @@ libcallnr({libname}, {funcname}, {argume
 			:call libcallnr("libc.so", "printf", "Hello World!\n")
 			:call libcallnr("libc.so", "sleep", 10)
 <
-		Can also be used as a |method|, where the base is passed as
-		the argument to the called function: >
+		Can also be used as a |method|, the base is passed as the
+		third argument: >
 			GetValue()->libcallnr("libc.so", "printf")
 <
 
@@ -6543,8 +6549,8 @@ listener_add({callback} [, {buf}])			*li
 		The {callback} is also not invoked when the buffer is
 		unloaded, use the |BufUnload| autocmd event for that.
 
-		Can also be used as a |method|, where the base is passed as
-		the second argument, the buffer: >
+		Can also be used as a |method|, the base is passed as the
+		second argument: >
 			GetBuffer()->listener_add(callback)
 
 listener_flush([{buf}])					*listener_flush()*
@@ -7014,6 +7020,7 @@ matchstrpos({expr}, {pat} [, {start} [, 
 
 		Can also be used as a |method|: >
 			GetText()->matchstrpos('word')
+<
 							*max()*
 max({expr})	Return the maximum value of all items in {expr}.
 		{expr} can be a list or a dictionary.  For a dictionary,
@@ -8270,20 +8277,31 @@ serverlist()					*serverlist()*
 			:echo serverlist()
 <
 setbufline({expr}, {lnum}, {text})			*setbufline()*
-		Set line {lnum} to {text} in buffer {expr}.  To insert
-		lines use |append()|.  Any text properties in {lnum} are
-		cleared.
+		Set line {lnum} to {text} in buffer {expr}.  This works like
+		|setline()| for the specified buffer.
+
+		This function works only for loaded buffers. First call
+		|bufload()| if needed.
+
+		To insert lines use |appendbufline()|.
+		Any text properties in {lnum} are cleared.
+
+		{text} can be a string to set one line, or a list of strings
+		to set multiple lines.  If the list extends below the last
+		line then those lines are added.
 
 		For the use of {expr}, see |bufname()| above.
 
 		{lnum} is used like with |setline()|.
-		This works like |setline()| for the specified buffer.
+		When {lnum} is just below the last line the {text} will be
+		added below the last line.
 
 		When {expr} is not a valid buffer, the buffer is not loaded or
 		{lnum} is not valid then 1 is returned.  On success 0 is
 		returned.
 
-		Can also be used as a |method|: >
+		Can also be used as a |method|, the base is passed as the
+		third argument: >
 			GetText()->setbufline(buf, lnum)
 
 setbufvar({expr}, {varname}, {val})			*setbufvar()*
@@ -8299,7 +8317,8 @@ setbufvar({expr}, {varname}, {val})			*s
 			:call setbufvar("todo", "myvar", "foobar")
 <		This function is not available in the |sandbox|.
 
-		Can also be used as a |method|: >
+		Can also be used as a |method|, the base is passed as the
+		third argument: >
 			GetValue()->setbufvar(buf, varname)
 
 setcharsearch({dict})					*setcharsearch()*
@@ -8348,7 +8367,8 @@ setenv({name}, {val})						*setenv()*
 		When {val} is |v:null| the environment variable is deleted.
 		See also |expr-env|.
 
-		Can also be used as a |method|, passing the value as the base: >
+		Can also be used as a |method|, the base is passed as the
+		second argument: >
 			GetPath()->setenv('PATH')
 
 setfperm({fname}, {mode})				*setfperm()* *chmod*
@@ -8379,7 +8399,7 @@ setline({lnum}, {text})					*setline()*
 
 		{lnum} is used like with |getline()|.
 		When {lnum} is just below the last line the {text} will be
-		added as a new line.
+		added below the last line.
 
 		If this succeeds, 0 is returned.  If this fails (most likely
 		because {lnum} is invalid) 1 is returned.
@@ -8397,7 +8417,8 @@ setline({lnum}, {text})					*setline()*
 
 <		Note: The '[ and '] marks are not set.
 
-		Can also be used as a |method|, passing the text as the base: >
+		Can also be used as a |method|, the base is passed as the
+		second argument: >
 			GetText()->setline(lnum)
 
 setloclist({nr}, {list} [, {action} [, {what}]])		*setloclist()*
@@ -8646,7 +8667,8 @@ settabvar({tabnr}, {varname}, {val})			*
 		Tabs are numbered starting with one.
 		This function is not available in the |sandbox|.
 
-		Can also be used as a |method|, the base is used as the value: >
+		Can also be used as a |method|, the base is passed as the
+		third argument: >
 			GetValue()->settabvar(tab, name)
 
 settabwinvar({tabnr}, {winnr}, {varname}, {val})	*settabwinvar()*
@@ -8667,7 +8689,8 @@ settabwinvar({tabnr}, {winnr}, {varname}
 			:call settabwinvar(3, 2, "myvar", "foobar")
 <		This function is not available in the |sandbox|.
 
-		Can also be used as a |method|, the base is used as the value: >
+		Can also be used as a |method|, the base is passed as the
+		fourth argument: >
 			GetValue()->settabvar(tab, winnr, name)
 
 settagstack({nr}, {dict} [, {action}])			*settagstack()*
@@ -8701,7 +8724,8 @@ settagstack({nr}, {dict} [, {action}])		
 			call settagstack(1003, stack)
 			unlet stack
 <
-		Can also be used as a |method|, the base is used as the Dict: >
+		Can also be used as a |method|, the base is passed as the
+		second argument: >
 			GetStack()->settagstack(winnr)
 
 setwinvar({winnr}, {varname}, {val})			*setwinvar()*
@@ -8710,7 +8734,8 @@ setwinvar({winnr}, {varname}, {val})			*
 			:call setwinvar(1, "&list", 0)
 			:call setwinvar(2, "myvar", "foobar")
 
-<		Can also be used as a |method|, the base is used as the value: >
+<		Can also be used as a |method|, the base is passed as the
+		third argument: >
 			GetValue()->setwinvar(winnr, name)
 
 sha256({string})						*sha256()*
@@ -9078,8 +9103,8 @@ state([{what}])						*state()*
 		        e.g. after |f|
 		    a	Insert mode autocomplete active
 		    x	executing an autocommand
-		    w	blocked on waiting, e.g. ch_evalexpr() and
-			ch_read(), ch_readraw() when reading json.
+		    w	blocked on waiting, e.g. ch_evalexpr(), ch_read() and
+			ch_readraw() when reading json.
 		    S	not triggering SafeState or SafeStateAgain
 		    c	callback invoked, including timer (repeats for
 			recursiveness up to "ccc")
@@ -9130,7 +9155,7 @@ str2nr({expr} [, {base} [, {quoted}]])		
 		When {base} is omitted base 10 is used.  This also means that
 		a leading zero doesn't cause octal conversion to be used, as
 		with the default String to Number conversion.  Example: >
-			let nr = str2nr('123')
+			let nr = str2nr('0123')
 <
 		When {base} is 16 a leading "0x" or "0X" is ignored.  With a
 		different base the result will be zero.  Similarly, when
@@ -9247,6 +9272,7 @@ stridx({haystack}, {needle} [, {start}])
 
 		Can also be used as a |method|: >
 			GetHaystack()->stridx(needle)
+<
 							*string()*
 string({expr})	Return {expr} converted to a String.  If {expr} is a Number,
 		Float, String, Blob or a composition of them, then the result
@@ -10142,8 +10168,8 @@ win_execute({id}, {command} [, {silent}]
 		Not all commands are allowed in popup windows.
 		When window {id} does not exist then no error is given.
 
-		Can also be used as a |method|, the base is used for the
-		command: >
+		Can also be used as a |method|, the base is passed as the
+		second argument: >
 			GetCommand()->win_execute(winid)
 
 win_findbuf({bufnr})					*win_findbuf()*
@@ -10461,11 +10487,11 @@ xor({expr}, {expr})					*xor()*
 		to a number.  A List, Dict or Float argument causes an error.
 		Example: >
 			:let bits = xor(bits, 0x80)
-<		Can also be used as a |method|: >
+<
+		Can also be used as a |method|: >
 			:let bits = bits->xor(0x80)
 <
 
-
 							*feature-list*
 There are four types of features:
 1.  Features that are only supported when they have been enabled when Vim
@@ -11338,21 +11364,22 @@ 7. Commands						*expression-commands*
 
 						*:let=<<* *:let-heredoc*
 						*E990* *E991* *E172* *E221*
-:let {var-name} =<< [trim] {marker}
+:let {var-name} =<< [trim] {endmarker}
 text...
 text...
-{marker}
+{endmarker}
 			Set internal variable {var-name} to a List containing
-			the lines of text bounded by the string {marker}.
-			{marker} must not contain white space.
-			{marker} cannot start with a lower case character.
-			The last line should end only with the {marker} string
-			without any other character.  Watch out for white
-			space after {marker}!
+			the lines of text bounded by the string {endmarker}.
+			{endmarker} must not contain white space.
+			{endmarker} cannot start with a lower case character.
+			The last line should end only with the {endmarker}
+			string without any other character.  Watch out for
+			white space after {endmarker}!
 
 			Without "trim" any white space characters in the lines
 			of text are preserved.  If "trim" is specified before
-			{marker}, then indentation is stripped so you can do: >
+			{endmarker}, then indentation is stripped so you can
+			do: >
 				let text =<< trim END
 				   if ok
 				     echo 'done'
@@ -11366,23 +11393,31 @@ text...
 			non-empty text line is stripped from the input lines.
 			All leading indentation exactly matching the leading
 			indentation before `let` is stripped from the line
-			containing {marker}.  Note that the difference between
-			space and tab matters here.
+			containing {endmarker}.  Note that the difference
+			between space and tab matters here.
 
 			If {var-name} didn't exist yet, it is created.
 			Cannot be followed by another command, but can be
 			followed by a comment.
 
+			To avoid line continuation to be applied, consider
+			adding 'C' to 'cpoptions': >
+				set cpo+=C
+				let var =<< END
+				   \ leading backslash
+				END
+				set cpo-=C
+<
 			Examples: >
 				let var1 =<< END
-			Sample text 1
-			    Sample text 2
-			Sample text 3
-			END
+				Sample text 1
+				    Sample text 2
+				Sample text 3
+				END
 
 				let data =<< trim DATA
-				1 2 3 4
-				5 6 7 8
+					1 2 3 4
+					5 6 7 8
 				DATA
 <
 								*E121*
--- a/runtime/doc/if_perl.txt
+++ b/runtime/doc/if_perl.txt
@@ -55,14 +55,14 @@ 3. Using the Perl interface				*perl-usi
 			working: >
 				:perl VIM::Msg("Hello")
 
-:pe[rl] << [endpattern]
+:pe[rl] << [endmarker]
 {script}
-{endpattern}
+{endmarker}
 			Execute Perl script {script}.
-			The {endpattern} after {script} must NOT be preceded
-			by any white space.
+			The {endmarker} after {script} must NOT be preceded by
+			any white space.
 
-			If [endpattern] is omitted, it defaults to a dot '.'
+			If [endmarker] is omitted, it defaults to a dot '.'
 			like for the |:append| and |:insert| commands.  Using
 			'.' helps when inside a function, because "$i;" looks
 			like the start of an |:insert| command to Vim.
--- a/runtime/doc/if_ruby.txt
+++ b/runtime/doc/if_ruby.txt
@@ -28,14 +28,14 @@ 1. Commands						*ruby-commands*
 :rub[y] {cmd}		Execute Ruby command {cmd}.  A command to try it out: >
 				:ruby print "Hello"
 
-:rub[y] << [endpattern]
+:rub[y] << [endmarker]
 {script}
-{endpattern}
+{endmarker}
 			Execute Ruby script {script}.
-			The {endpattern} after {script} must NOT be preceded
-			by any white space.
+			The {endmarker} after {script} must NOT be preceded by
+			any white space.
 
-			If [endpattern] is omitted, it defaults to a dot '.'
+			If [endmarker] is omitted, it defaults to a dot '.'
 			like for the |:append| and |:insert| commands.
 
 			This form of the |:ruby| command is mainly useful for
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -949,10 +949,12 @@ Function call arguments will indent 1 ex
 -------------
 
 				*PHP_IndentFunctionDeclarationParameters*
-Extra indentation levels to add to arguments in multi-line function definitions. >
+Extra indentation levels to add to arguments in multi-line function
+definitions. >
     let g:PHP_IndentFunctionDeclarationParameters = 1
 
-Function arguments in declarations will indent 1 extra level. For two-space indentation: >
+Function arguments in declarations will indent 1 extra level. For two-space
+indentation: >
 
     function call_the_thing(
         $with_this,
--- a/runtime/doc/message.txt
+++ b/runtime/doc/message.txt
@@ -480,7 +480,7 @@ try to solve the memory shortage.  To st
 start again.
 
 If this happens while Vim is still initializing, editing files is very
-unlikely to work, therefore Vim will exit with value 123. 
+unlikely to work, therefore Vim will exit with value 123.
 
 Buffers are only partly kept in memory, thus editing a very large file is
 unlikely to cause an out-of-memory situation.  Undo information is completely
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.1.  Last change: 2019 Sep 26
+*options.txt*	For Vim version 8.1.  Last change: 2019 Sep 28
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -856,7 +856,7 @@ A jump table for the options with a shor
 		:set background&
 <	Vim will guess the value.  In the GUI this should work correctly,
 	in other cases Vim might not be able to guess the right value.
-	If the GUI supports a dark them, you can use the "d" flag in
+	If the GUI supports a dark theme, you can use the "d" flag in
 	'guioptions', see 'go-d'.
 
 	When the |t_RB| option is set, Vim will use it to request the background
@@ -1877,7 +1877,7 @@ A jump table for the options with a shor
 						*'completeslash'* *'csl'*
 'completeslash' 'csl'	string	(default: "")
 			local to buffer
-			{not in Vi}  {only for MS-Windows}
+			{only for MS-Windows}
 	When this option is set it overrules 'shellslash' for completion:
 	- When this option is set to "slash", a forward slash is used for path
 	  completion in insert mode. This is useful when editing HTML tag, or
@@ -1917,7 +1917,7 @@ A jump table for the options with a shor
 		    completion in a popup window.  Only works in combination
 		    with "menu" or "menuone".  Overrides "preview".
 		    See |'completepopup'| for specifying properties.
-		    {only works when compiled with the +textprop feature}
+		    {only works when compiled with the |+textprop| feature}
 
 	   noinsert Do not insert any text for a match until the user selects
 		    a match from the menu. Only works in combination with
@@ -2470,7 +2470,6 @@ A jump table for the options with a shor
 						*'cursorlineopt'* *'culopt'*
 'cursorlineopt' 'culopt' string (default: "number,line")
 			local to window
-			{not in Vi}
 			{not available when compiled without the |+syntax|
 			feature}
 	Comma separated list of settings for how 'cursorline' is displayed.
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt*  For Vim version 8.1.  Last change: 2019 Jul 17
+*pi_netrw.txt*  For Vim version 8.1.  Last change: 2019 Oct 10
 
 	    ------------------------------------------------
 	    NETRW REFERENCE MANUAL    by Charles E. Campbell
@@ -3512,7 +3512,7 @@ 10. Problems and Fixes					*netrw-proble
 			- Click "Add..."
 			- Set External Editor (adjust path as needed, include
 			  the quotes and !.! at the end):
-			    "c:\Program Files\Vim\vim70\gvim.exe" !.!
+			    "c:\Program Files\Vim\vim81\gvim.exe" !.!
 			- Check that the filetype in the box below is
 			  {asterisk}.{asterisk} (all files), or whatever types
 			  you want (cec: change {asterisk} to * ; I had to
@@ -3762,8 +3762,8 @@ by obtaining a copy of the latest (often
 
 The <netrw.vim> script is typically installed on systems as something like:
 >
-	/usr/local/share/vim/vim7x/plugin/netrwPlugin.vim
-	/usr/local/share/vim/vim7x/autoload/netrw.vim
+	/usr/local/share/vim/vim8x/plugin/netrwPlugin.vim
+	/usr/local/share/vim/vim8x/autoload/netrw.vim
 		(see output of :echo &rtp)
 <
 which is loaded automatically at startup (assuming :set nocp).  If you
--- a/runtime/doc/popup.txt
+++ b/runtime/doc/popup.txt
@@ -361,7 +361,7 @@ popup_getpos({id})					*popup_getpos()*
 		    core_width	width of the text box in screen cells
 		    core_height	height of the text box in screen cells
 		    firstline	line of the buffer at top (1 unless scrolled)
-		    		(not the value of the "firstline" property)
+				(not the value of the "firstline" property)
 		    scrollbar	non-zero if a scrollbar is displayed
 		    visible	one if the popup is displayed, zero if hidden
 		Note that these are the actual screen positions.  They differ
@@ -744,22 +744,22 @@ is inserted or deleted.  The popup funct
 These steps are needed to make this work:
 
 - Define a text property type, it defines the name. >
-  	call prop_type_add('popupMarker', {})
+	call prop_type_add('popupMarker', {})
 
 - Place a text property at the desired text: >
 	let lnum = {line of the text}
 	let col = {start column of the text}
 	let len = {length of the text}
 	let propId = {arbitrary but unique number}
-  	call prop_add(lnum, col, #{
+	call prop_add(lnum, col, #{
 		\ length: len,
 		\ type: 'popupMarker',
 		\ id: propId,
 		\ })
 
 - Create a popup: >
-  	let winid = popup_create('the text', #{
-		\ pos: 'botleft', 
+	let winid = popup_create('the text', #{
+		\ pos: 'botleft',
 		\ textprop: 'popupMarker',
 		\ textpropid: propId,
 		\ border: [],
@@ -799,7 +799,7 @@ Some hints:
   a click, as in the example above, helps for that.
 - If the text property is removed the popup is closed.  Use something like
   this: >
-  	call prop_remove(#{type: 'popupMarker', id: propId})
+	call prop_remove(#{type: 'popupMarker', id: propId})
 
 
 POPUP FILTER						*popup-filter*
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 8.1.  Last change: 2019 Sep 19
+*syntax.txt*	For Vim version 8.1.  Last change: 2019 Oct 04
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -60,8 +60,8 @@ If the VIM environment variable is not s
 the path in another way (see |$VIMRUNTIME|).  Usually this works just
 fine.  If it doesn't, try setting the VIM environment variable to the
 directory where the Vim stuff is located.  For example, if your syntax files
-are in the "/usr/vim/vim50/syntax" directory, set $VIMRUNTIME to
-"/usr/vim/vim50".  You must do this in the shell, before starting Vim.
+are in the "/usr/vim/vim81/syntax" directory, set $VIMRUNTIME to
+"/usr/vim/vim81".  You must do this in the shell, before starting Vim.
 This command also sources the |menu.vim| script when the GUI is running or
 will start soon.  See |'go-M'| about avoiding that.
 
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -1016,6 +1016,8 @@
 't_Sb'	term.txt	/*'t_Sb'*
 't_Sf'	term.txt	/*'t_Sf'*
 't_Si'	term.txt	/*'t_Si'*
+'t_TE'	term.txt	/*'t_TE'*
+'t_TI'	term.txt	/*'t_TI'*
 't_Te'	term.txt	/*'t_Te'*
 't_Ts'	term.txt	/*'t_Ts'*
 't_VS'	term.txt	/*'t_VS'*
@@ -8087,7 +8089,6 @@ new-vimgrep	version7.txt	/*new-vimgrep*
 new-virtedit	version6.txt	/*new-virtedit*
 news	intro.txt	/*news*
 nextnonblank()	eval.txt	/*nextnonblank()*
-nice	todo.txt	/*nice*
 no-eval-feature	eval.txt	/*no-eval-feature*
 no-type-checking	eval.txt	/*no-type-checking*
 no_buffers_menu	gui.txt	/*no_buffers_menu*
@@ -9104,6 +9105,8 @@ t_ST	term.txt	/*t_ST*
 t_Sb	term.txt	/*t_Sb*
 t_Sf	term.txt	/*t_Sf*
 t_Si	term.txt	/*t_Si*
+t_TE	term.txt	/*t_TE*
+t_TI	term.txt	/*t_TI*
 t_Te	term.txt	/*t_Te*
 t_Ts	term.txt	/*t_Ts*
 t_VS	term.txt	/*t_VS*
--- a/runtime/doc/terminal.txt
+++ b/runtime/doc/terminal.txt
@@ -496,7 +496,7 @@ term_dumpload({filename} [, {options}])
 		For {options} see |term_dumpdiff()|.
 
 		Can also be used as a |method|: >
-			GetFilename()-> term_dumpload()
+			GetFilename()->term_dumpload()
 <
 							*term_dumpwrite()*
 term_dumpwrite({buf}, {filename} [, {options}])
@@ -514,7 +514,7 @@ term_dumpwrite({buf}, {filename} [, {opt
 
 		Can also be used as a |method|, the base is used for the file
 		name: >
-			GetFilename()-> term_dumpwrite(bufnr)
+			GetFilename()->term_dumpwrite(bufnr)
 
 term_getaltscreen({buf})				*term_getaltscreen()*
 		Returns 1 if the terminal of {buf} is using the alternate
@@ -863,8 +863,6 @@ term_start({cmd} [, {options}])			*term_
 		Can also be used as a |method|: >
 			GetCommand()->term_start()
 
-<		{only available when compiled with the |+terminal| feature}
-
 
 term_wait({buf} [, {time}])					*term_wait()*
 		Wait for pending updates of {buf} to be handled.
@@ -1243,7 +1241,7 @@ gdb:
 
  *:Break*	set a breakpoint at the cursor position
  :Break {position}
- 		set a breakpoint at the specified position
+		set a breakpoint at the specified position
  *:Clear*	delete the breakpoint at the cursor position
 
  *:Step*	execute the gdb "step" command
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.1.  Last change: 2019 Sep 27
+*todo.txt*      For Vim version 8.1.  Last change: 2019 Oct 16
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -47,7 +47,10 @@ Popup windows:
 - Use popup (or popup menu) for command line completion
 - Implement flip option
 - Why does 'nrformats' leak from the popup window buffer???
-  Happens in Test_simple_popup() at the second screendump.
+  Happens in Test_simple_popup() at:
+      call VerifyScreenDump(buf, 'Test_popupwin_04a', {})
+  Only when this line is in defaults.vim:
+    set nrformats-=octal
 - For the "moved" property also include mouse movement?
 - Make redrawing more efficient and avoid flicker:
     - put popup menu also in popup_mask?
@@ -76,7 +79,7 @@ Text properties: See comment at top of s
   Then :%s?foo should take the first match above the cursor line.
 
 Prompt buffer:
-- Add a command line history.
+- Add a command line history, using up/down keys.  #5010
 - delay next prompt until plugin gives OK?
 - add prompt_addtext({buf}, {expr})	none	add text to a prompt buffer
 
@@ -134,6 +137,21 @@ E279, E290, E292, E362, E366, E450, E451
 E453, E454, E460, E489, E491, E565, E578, E610, E611, E653,
 E654, E856, E857, E860, E861, E863, E889, E900
 
+Try out enabling modifyOtherKeys in xterm:
+     CSI > 4 ; 2 m
+Need to disable when going to cooked mode:
+    CSI > 4 ; m
+Known problems:
+-  CTRL-V key inserts Esc sequence
+
+Patch to skip tests that don't work when run as root. (James McCoy, #5020)
+Or just bail out completely?
+
+Patch to test right click. (Dominique Pelle, #5018)
+
+Python output doesn't stop when got_int is set. #5053
+Check got_int in write_output() in if_py_both.h?
+
 Running test_gui and test_gui_init with Motif sometimes kills the window
 manager.  Problem with Motif? Now test_gui crashes in submenu_change().
 Athena is OK.
@@ -141,8 +159,13 @@ Motif: Build on Ubuntu can't enter any t
 
 Improve running tests on MS-Windows: #4922
 
-Patch to properly break CJK lines: #3875
-Ready to include now?
+In a function these two lines are different:
+    let [a, b, c] =<< trim END      fails
+    let [a,b,c] =<< trim END        works
+issue #5051
+
+Patch to properly break CJK lines: Anton Kochkov, #3875
+Should be ready to include now.
 
 Remove check for cmd_silent when calling search_stat()? (Gary Johnson)
 
@@ -159,10 +182,13 @@ Patch to sort buffers on b_last_used tim
 Patch to highlight the line number differently below the cursor line. (Shaun
 Brady, #624)
 
+Patch to add more tests for cmd.exe: #4928
+
 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.
+Also #4994: window-local options not always restored, related to using :badd.
 
 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
@@ -176,12 +202,17 @@ Ready to include now?
 Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
 (#4087)
 
+":helptags ALL" should skip directories where "tags" cannot be written.
+(Matěj Cepl, #5026)
+
 ":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
 unlisted. (#4478)
 
 Patch to fix using zero sc_sid. (#4877)
 
+Enable 'termbidi' if $VTE_VERSION >= 5703 ?
+
 Universal solution to detect if t_RS is working, using cursor position.
 Koichi Iwamoto, #2126
 
@@ -212,8 +243,6 @@ Patch to remove FORTIFY_SOURCE also from
 
 Patch from Namsh to allow building with both XIM and hangulin. (2019 Aug 29)
 
-Patch to fix redirect of shell on MS-Windows. (Yasuhiro Matsumoto, #2054)
-
 When using :packadd files under "later" are not used, which is inconsistent
 with packages under "start". (xtal8, #1994)
 
@@ -243,6 +272,14 @@ Patch to configure BUILD_DATE for reprod
 
 Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
 
+xterm should be able to pass focus changes to Vim, so that Vim can check for
+buffers that changed.  Perhaps in misc.c, function selectwindow().
+Xterm 224 supports it!
+Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
+Saito, 2013 Apr 24) Update 2016 Aug 12.
+Also see issue #609.
+We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
+
 Check_external_diff() is used too often. (Daniel Hahler, #4800)
 
 Incorrect formatting with autoindent. (Sebastian Gniazdowski, #4909)
@@ -297,6 +334,8 @@ Williams, 2018 Oct 30)
 "exepath('bin/cmd')" does not work while ":!bin/cmd" does work.
 (Daniel Hahler, #4710)  and executable('bin/cmd') returns 1
 
+Error drawing the number column when 'cursorline' is set. (#3893)
+
 Problem with :tlmenu: Detach item added with all modes?  Issue #3563.
 
 The quoting of the [command] argument of :terminal is not clearly documented.
@@ -1604,14 +1643,6 @@ compatible with Vim spell files.  The ol
 Spell checking: Add a feature to only consider two spaces after a dot to start
 a new sentence.  Don't give the capitalization error when there is one space.
 
-xterm should be able to pass focus changes to Vim, so that Vim can check for
-buffers that changed.  Perhaps in misc.c, function selectwindow().
-Xterm 224 supports it!
-Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
-Saito, 2013 Apr 24) Update 2016 Aug 12.
-Also see issue #609.
-We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
-
 Idea: For a window in the middle (has window above and below it), use
 right-mouse-drag on the status line to move a window up/down without changing
 its height?  It's like dragging the status bar above it at the same time.
@@ -2155,10 +2186,6 @@ Looks like only bash can do it. (Yakov L
 Cscope "cs add" stopped working somewhat before 7.2.438. (Gary Johnson, 2010
 Jun 29)  Caused by 7.2.433?
 
-I often see pasted text (from Firefox, to Vim in xterm) appear twice.
-Also, Vim in xterm sometimes loses copy/paste ability (probably after running
-an external command).
-
 Jumplist doesn't work properly in Insert mode? (Jean Johner, 2010 Mar 20)
 
 Problem with transparent cmdline.  Also: Terminal title is wrong with
@@ -2754,10 +2781,6 @@ If the variable "g:x#y#z" exists complet
 Feature request: Command to go to previous tab, like what CTRL-W p does for
 windows. (Adam George)
 
-F1 - F4 in an xterm produce a different escape sequence when used with a
-modifier key.  Need to catch three different sequences.  Use K_ZF1, like
-K_ZHOME? (Dickey, 2007 Dec 2)
-
 In debug mode, using CTRL-R = to evaluate a function causes stepping through
 the function. (Hari Krishna Dara, 2006 Jun 28)
 
@@ -2892,12 +2915,6 @@ Setting 'background' resets the Normal b
 This is undesired, 'background' is supposed to tell Vim what the background
 color is, not reset it.
 
-Linux distributions:
-- Suggest compiling xterm with --enable-tcap-query, so that nr of colors is
-  known to Vim.  88 colors instead of 16 works better.  See ":help
-  xfree-xterm".
-- Suggest including bare "vi" and "vim" with X11, syntax, etc.
-
 Completion menu: For a wrapping line, completing a long file name, only the
 start of the path is shown in the menu.  Should move the menu to the right to
 show more text of the completions.  Shorten the items that don't fit in the
@@ -2912,12 +2929,6 @@ the buffer is displayed. (Antonios Tsaki
 When ":cn" moves to an error in the same line the message isn't shortened.
 Only skip shortening for ":cc"?
 
-Write "making vim work better" for the docs (mostly pointers): *nice*
-    - sourcing $VIMRUNTIME/vimrc_example.vim
-    - setting 'mouse' to "a"
-    - getting colors in xterm
-    - compiling Vim with X11, GUI, etc.
-
 Problem with ":call" and dictionary function. Hari Krishna Dara, Charles
 Campbell 2006 Jul 06.
 
@@ -3011,11 +3022,6 @@ When 'encoding' is utf-8 typing text at 
 typed characters to be redrawn.  Caused by patch 7.1.329. (Tyler Spivey, 2008
 Sep 3, 11)
 
-When Vim in an xterm owns the selection and the user does ":shell" Vim doesn't
-respond to selection requests.  Invoking XtDisownSelection() before executing
-the shell doesn't help.  Would require forking and doing a message loop, like
-what happens for the GUI.
-
 ":vimgrep" does not recognize a recursive symlink.  Is it possible to detect
 this, at least for Unix (using device/inode)?
 
@@ -3104,11 +3110,6 @@ 7   ATTENTION dialog choices are more lo
     use the patch that keeps using HLF_8 if HLF_WS has not
     been given values.
     Add section in help files for these highlight groups?
-8   "fg" and "bg" don't work in an xterm.  Get default colors from xterm
-    with an ESC sequence.
-    xterm can send colors for many things.  E.g. for the cursor:
-	<Esc>]12;?<Bel>
-    Can use this to get the background color and restore the colors on exit.
 7   Add "DefaultFG" and "DefaultBG" for the colors of the menu. (Marcin
     Dalecki has a patch for Motif and Carbon)
 -   Add possibility to highlight specific columns (for Fortran).  Or put a
@@ -3702,7 +3703,6 @@ 8   When the builtin xterm termcap conta
 8   Xterm sends ^[[H for <Home> and ^[[F for <End> in some mode.  Also
     recognize these keys?  Mostly useful for xterm simulators, like gnometerm.
     See http://dickey.his.com/xterm/xterm.faq.html#xterm_pc_style.
-8   For xterm also recognize keypad up/down/left/right and insert.
 8   '[ and '] should be set to start/end of line when using a linewise operator
     (e.g., ":w").
 8   CTRL-A can't handle big "long" numbers, they become negative.  Check for
@@ -3717,10 +3717,6 @@ 8   With 'viminfo' set such that the ".v
     filesystem, an illegal file name may be created: ".vim".
 8   For each buffer that is opened, the viminfo file is opened and read to
     check for file marks.  This can be slow.
-7   In xterm, recognize both vt100 and vt220 cursor keys.  Change
-    add_termcode() to not remove an existing entry for a name, when it's
-    needed.
-    Need a generic solution to recognize different codes for the same key.
 8   Core dump within signal function: gdb doesn't show stack backtrace!  Option
     to skip catch_signals()?
 9   Repeating a "cw" with "." doesn't work if the text was pasted from the
--- a/runtime/doc/vi_diff.txt
+++ b/runtime/doc/vi_diff.txt
@@ -1,4 +1,4 @@
-*vi_diff.txt*   For Vim version 8.1.  Last change: 2019 Sep 27
+*vi_diff.txt*   For Vim version 8.1.  Last change: 2019 Oct 12
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -64,6 +64,9 @@ w300			number	(default 23)		*'w300'*
 w1200			number	(default 23)		*'w1200'*
 w9600			number	(default 23)		*'w9600'*
 
+Vi did not allow for changing the termcap entries, you would have to exit Vi,
+edit the termcap entry and try again.  Vim has the |terminal-options|.
+
 ==============================================================================
 3. Limits						*limits*
 
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
 " Vim support file to detect file types
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2019 Sep 27
+" Last Change:	2019 Oct 04
 
 " Listen very carefully, I will say this only once
 if exists("did_load_filetypes")
new file mode 100644
--- /dev/null
+++ b/runtime/indent/testdir/yaml.in
@@ -0,0 +1,14 @@
+# vim: set ft=yaml sw=2 et :
+
+# START_INDENT
+map1:
+sub1:
+- list item
+map2:
+- another list
+# END_INDENT
+
+# START_INDENT
+map: &anchor
+map: val
+# END_INDENT
new file mode 100644
--- /dev/null
+++ b/runtime/indent/testdir/yaml.ok
@@ -0,0 +1,14 @@
+# vim: set ft=yaml sw=2 et :
+
+# START_INDENT
+map1:
+  sub1:
+    - list item
+map2:
+  - another list
+# END_INDENT
+
+# START_INDENT
+map: &anchor
+map: val
+# END_INDENT
--- a/runtime/indent/yaml.vim
+++ b/runtime/indent/yaml.vim
@@ -1,7 +1,7 @@
 " Vim indent file
 " Language:         YAML
 " Maintainer:       Nikolai Pavlov <zyx.vim@gmail.com>
-" Last Change:	    2017 Jun 13
+" Last Change:	    2019 Sep 28
 
 " Only load this indent file when no other was loaded.
 if exists('b:did_indent')
@@ -29,7 +29,7 @@ function s:FindPrevLessIndentedLine(lnum
     let curindent = a:0 ? a:1 : indent(a:lnum)
     while           prevlnum
                 \&&  indent(prevlnum) >=  curindent
-                \&& getline(prevlnum) =~# '^\s*#'
+                \&& getline(prevlnum) !~# '^\s*#'
         let prevlnum = prevnonblank(prevlnum-1)
     endwhile
     return prevlnum
--- a/runtime/syntax/named.vim
+++ b/runtime/syntax/named.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:	BIND configuration file
 " Maintainer:	Nick Hibma <nick@van-laarhoven.org>
-" Last Change:	2007-01-30
+" Last Change:	2019 Oct 08
 " Filenames:	named.conf, rndc.conf
 " Location:	http://www.van-laarhoven.org/vim/syntax/named.vim
 "
@@ -54,7 +54,7 @@ syn match	namedIntIdent	contained /"\=\k
 syn region	namedSection	contained start=+{+ end=+};+ contains=namedSection,namedIntKeyword
 
 " --- IntSection: section that does not contain other sections
-syn region	namedIntSection	contained start=+{+ end=+}+ contains=namedIntKeyword,namedError
+syn region	namedIntSection	contained start=+{+ end=+}+ contains=namedIntKeyword,namedError,namedComment
 
 " --- IntKeyword: keywords contained within `{ ... }' sections only
 " + these keywords are contained within `key' and `acl' sections