changeset 13437:02b3f719eacb

Update runtime files. commit https://github.com/vim/vim/commit/b5b7562475ad032a174b893286172de0d2c157cd Author: Bram Moolenaar <Bram@vim.org> Date: Fri Mar 9 22:22:21 2018 +0100 Update runtime files.
author Christian Brabandt <cb@256bit.org>
date Fri, 09 Mar 2018 22:30:06 +0100
parents 698a757ec8ec
children 33eea5ce5415
files runtime/doc/autocmd.txt runtime/doc/eval.txt runtime/doc/gui.txt runtime/doc/options.txt runtime/doc/quickfix.txt runtime/doc/repeat.txt runtime/doc/starting.txt runtime/doc/tags runtime/doc/terminal.txt runtime/doc/todo.txt runtime/doc/usr_41.txt runtime/doc/various.txt runtime/ftplugin/chicken.vim runtime/ftplugin/scheme.vim runtime/indent/html.vim runtime/syntax/chicken.vim
diffstat 16 files changed, 157 insertions(+), 99 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 8.0.  Last change: 2018 Feb 10
+*autocmd.txt*   For Vim version 8.0.  Last change: 2018 Mar 05
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -21,7 +21,6 @@ 10. Using autocommands		|autocmd-use|
 11. Disabling autocommands	|autocmd-disable|
 
 {Vi does not have any of these commands}
-{only when the |+autocmd| feature has not been disabled at compile time}
 
 ==============================================================================
 1. Introduction						*autocmd-intro*
@@ -324,6 +323,10 @@ Name			triggered by ~
 |CmdwinEnter|		after entering the command-line window
 |CmdwinLeave|		before leaving the command-line window
 
+|CmdlineChanged|	after a change was made to the command-line text
+|CmdlineEnter|		after the cursor moves to the command line
+|CmdlineLeave|		before the cursor leaves the command line
+
 |InsertEnter|		starting Insert mode
 |InsertChange|		when typing <Insert> while in Insert or Replace mode
 |InsertLeave|		when leaving Insert mode
@@ -506,9 +509,9 @@ CmdUndefined			When a user command is us
 				always define the user command and have it
 				invoke an autoloaded function.  See |autoload|.
 							*CmdlineChanged*
-CmdlineChanged			After a change was made to the text inside
-				command line.  Be careful not to mess up the
-				command line, it may cause Vim to lock up.
+CmdlineChanged			After a change was made to the text in the
+				command line.  Be careful not to mess up
+				the command line, it may cause Vim to lock up.
 				<afile> is set to a single character,
 				indicating the type of command-line.
 				|cmdwin-char|
@@ -785,7 +788,7 @@ InsertCharPre			When a character is type
 				inserted literally.
 				It is not allowed to change the text |textlock|.
 				The event is not triggered when 'paste' is
-				set.
+				set. {only with the +eval feature}
 							*InsertEnter*
 InsertEnter			Just before starting Insert mode.  Also for
 				Replace mode and Virtual Replace mode.  The
@@ -931,6 +934,7 @@ SwapExists			Detected an existing swap f
 				It is not allowed to change to another buffer,
 				change a buffer name or change directory
 				here.
+				{only available with the +eval feature}
 							*Syntax*
 Syntax				When the 'syntax' option has been set.  The
 				pattern is matched against the syntax name.
@@ -1003,6 +1007,7 @@ TextYankPost			After text has been yanke
 				called recursively.
 				It is not allowed to change the buffer text,
 				see |textlock|.
+				{only when compiled with the +eval feature}
 							*User*
 User				Never executed automatically.  To be used for
 				autocommands that are only executed with
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.0.  Last change: 2018 Feb 27
+*eval.txt*	For Vim version 8.0.  Last change: 2018 Mar 09
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2435,6 +2435,7 @@ term_gettty({buf}, [{input}])	String	get
 term_list()			List	get the list of terminal buffers
 term_scrape({buf}, {row})	List	get row of a terminal screen
 term_sendkeys({buf}, {keys})	none	send keystrokes to a terminal
+term_setrestore({buf}, {command}) none	set command to restore terminal
 term_start({cmd}, {options})	Job	open a terminal window and run a job
 term_wait({buf} [, {time}])	Number  wait for screen to be updated
 test_alloc_fail({id}, {countdown}, {repeat})
@@ -4885,7 +4886,19 @@ getwinpos([{timeout}])					*getwinpos()*
 			[x-pos, y-pos]
 		{timeout} can be used to specify how long to wait in msec for
 		a response from the terminal.  When omitted 100 msec is used.
-
+		Use a longer time for a remote terminal.
+		When using a value less than 10 and no response is received
+		within that time, a previously reported position is returned,
+		if available.  This can be used to poll for the position and
+		do some work in the mean time: >
+			while 1
+			  let res = getwinpos(1)
+			  if res[0] >= 0
+			    break
+			  endif
+			  " Do some work here
+			endwhile
+<
 							*getwinposx()*
 getwinposx()	The result is a Number, which is the X coordinate in pixels of
 		the left hand side of the GUI Vim window. Also works for an
@@ -8348,6 +8361,16 @@ term_sendkeys({buf}, {keys})				*term_se
 		means the character CTRL-X.
 		{only available when compiled with the |+terminal| feature}
 
+term_setrestore({buf}, {command})			*term_setrestore()*
+		Set the command to write in a session file to restore the job
+		in this terminal.  The line written in the session file is: >
+			terminal ++curwin ++cols=%d ++rows=%d {command}
+<		Make sure to escape the command properly.
+
+		Use an empty {command} to run 'shell'.
+		Use "NONE" to not restore this window.
+		{only available when compiled with the |+terminal| feature}
+
 term_setsize({buf}, {expr})				*term_setsize()*
 		Not implemented yet.
 		{only available when compiled with the |+terminal| feature}
@@ -8391,6 +8414,8 @@ term_start({cmd}, {options})				*term_st
 				     window; fails if the current buffer
 				     cannot be |abandon|ed
 		   "hidden"	     do not open a window
+		   "norestore"	     do not add the terminal window to a
+				     session file
 		   "term_finish"     What to do when the job is finished:
 					"close": close any windows
 					"open": open window if needed
--- a/runtime/doc/gui.txt
+++ b/runtime/doc/gui.txt
@@ -1,4 +1,4 @@
-*gui.txt*       For Vim version 8.0.  Last change: 2017 Nov 09
+*gui.txt*       For Vim version 8.0.  Last change: 2018 Mar 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -134,7 +134,7 @@ task bar with the 'guiheadroom' option.
 :winp[os]
 		Display current position of the top left corner of the GUI vim
 		window in pixels.  Does not work in all versions.
-		Also see |getwinposx()| and |getwinposy()|.
+		Also see |getwinpos()|, |getwinposx()| and |getwinposy()|.
 
 :winp[os] {X} {Y}							*E466*
 		Put the GUI vim window at the given {X} and {Y} coordinates.
@@ -992,10 +992,14 @@ it behaves in a strange way.
 :popu[p] {name}			Popup the menu {name}.  The menu named must
 				have at least one subentry, but need not
 				appear on the menu-bar (see |hidden-menus|).
-				{only available for Win32 and GTK GUI}
+				{only available for Win32 and GTK GUI or in
+				the terminal when compiled with +insert_expand}
 
 :popu[p]! {name}		Like above, but use the position of the mouse
 				pointer instead of the cursor.
+				In the terminal this is the last known
+				position, which is usually at the last click
+				or release (mouse movement is irrelevalt).
 
 Example: >
 	:popup File
@@ -1006,6 +1010,10 @@ pointer if ! was used). >
 	:popup ]Toolbar
 This creates a popup menu that doesn't exist on the main menu-bar.
 
+Note that in the GUI the :popup command will return immediately, before a
+selection has been made.  In the terminal the commands waits for the user to
+make a selection.
+
 Note that a menu that starts with ']' will not be displayed.
 
 ==============================================================================
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.0.  Last change: 2018 Feb 25
+*options.txt*	For Vim version 8.0.  Last change: 2018 Mar 09
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -402,8 +402,8 @@ Setting the filetype
 			used to set the option value in, unless this is a help
 			window, in which case the window below help window is
 			used (skipping the option-window).
-			{not available when compiled without the |+eval| or
-			|+autocmd| features}
+			{not available when compiled without the |+eval|
+			feature}
 
 								*$HOME*
 Using "~" is like using "$HOME", but it is only recognized at the start of an
@@ -1385,8 +1385,7 @@ A jump table for the options with a shor
 			written
 	  nowrite	buffer which will not be written
 	  acwrite	buffer which will always be written with BufWriteCmd
-			autocommands. {not available when compiled without the
-			|+autocmd| feature}
+			autocommands.
 	  quickfix	quickfix buffer, contains list of errors |:cwindow|
 			or list of locations |:lwindow|
 	  help		help buffer (you are not supposed to set this
@@ -2466,8 +2465,6 @@ A jump table for the options with a shor
 'cursorbind' 'crb'	boolean  (default off)
 			local to window
 			{not in Vi}
-			{not available when compiled without the |+cursorbind|
-			feature}
 	When this option is set, as the cursor in the current
 	window moves other cursorbound windows (windows that also have
 	this option set) move their cursors to the corresponding line and
@@ -2918,8 +2915,6 @@ A jump table for the options with a shor
 'eventignore' 'ei'	string	(default "")
 			global
 			{not in Vi}
-			{not available when compiled without the |+autocmd|
-			feature}
 	A list of autocommand event names, which are to be ignored.
 	When set to "all" or when "all" is one of the items, all autocommand
 	events are ignored, autocommands will not be executed.
@@ -3168,8 +3163,6 @@ A jump table for the options with a shor
 'filetype' 'ft'		string (default: "")
 			local to buffer
 			{not in Vi}
-			{not available when compiled without the |+autocmd|
-			feature}
 	When this option is set, the FileType autocommand event is triggered.
 	All autocommands that match with the value of this option will be
 	executed.  Thus the value of 'filetype' is used in place of the file
@@ -5334,6 +5327,8 @@ A jump table for the options with a shor
 	an explanation.
 	When 'buftype' is "nowrite" or "nofile" this option may be set, but
 	will be ignored.
+	Note that the text may actually be the same, e.g. 'modified' is set
+	when using "rA" on an "A".
 
 						*'more'* *'nomore'*
 'more'			boolean	(Vim default: on, Vi default: off)
@@ -5422,6 +5417,8 @@ A jump table for the options with a shor
 
 	In the "popup" model the right mouse button produces a pop-up menu.
 	You need to define this first, see |popup-menu|.
+	In a terminal the popup menu works if Vim is compiled with the
+	|+insert_expand| option.
 
 	Note that you can further refine the meaning of buttons with mappings.
 	See |gui-mouse-mapping|.  But mappings are NOT used for modeless
@@ -6441,6 +6438,8 @@ A jump table for the options with a shor
 	to find files which replace a distributed runtime files.  You can put
 	a directory after $VIMRUNTIME to find files which add to distributed
 	runtime files.
+	When Vim is started with |--clean| the home directory entries are not
+	included.
 	This option cannot be set from a |modeline| or in the |sandbox|, for
 	security reasons.
 
@@ -6459,8 +6458,6 @@ A jump table for the options with a shor
 'scrollbind' 'scb'	boolean  (default off)
 			local to window
 			{not in Vi}
-			{not available when compiled without the |+scrollbind|
-			feature}
 	See also |scroll-binding|.  When this option is set, the current
 	window scrolls as other scrollbind windows (windows that also have
 	this option set) scroll.  This option is useful for viewing the
@@ -6498,8 +6495,6 @@ A jump table for the options with a shor
 						*'scrollopt'* *'sbo'*
 'scrollopt' 'sbo'	string	(default "ver,jump")
 			global
-			{not available when compiled without the |+scrollbind|
-			feature}
 			{not in Vi}
 	This is a comma-separated list of words that specifies how
 	'scrollbind' windows should behave.  'sbo' stands for ScrollBind
@@ -6589,7 +6584,7 @@ A jump table for the options with a shor
 
 						*'sessionoptions'* *'ssop'*
 'sessionoptions' 'ssop'	string	(default: "blank,buffers,curdir,folds,
-					       help,options,tabpages,winsize")
+					 help,options,tabpages,winsize,terminal")
 			global
 			{not in Vi}
 			{not available when compiled without the |+mksession|
@@ -6621,6 +6616,7 @@ A jump table for the options with a shor
 	   tabpages	all tab pages; without this only the current tab page
 			is restored, so that you can make a session for each
 			tab page separately
+	   terminal	include terminal windows where the command can be restored
 	   unix		with Unix end-of-line format (single <NL>), even when
 			on Windows or DOS
 	   winpos	position of the whole Vim window
@@ -7416,7 +7412,6 @@ A jump table for the options with a shor
 	W F   Preview window flag, text is ",PRV".
 	y F   Type of file in the buffer, e.g., "[vim]".  See 'filetype'.
 	Y F   Type of file in the buffer, e.g., ",VIM".  See 'filetype'.
-	      {not available when compiled without |+autocmd| feature}
 	q S   "[Quickfix List]", "[Location List]" or empty.
 	k S   Value of "b:keymap_name" or 'keymap' when |:lmap| mappings are
 	      being used: "<keymap>"
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 8.0.  Last change: 2017 Dec 13
+*quickfix.txt*  For Vim version 8.0.  Last change: 2018 Mar 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -330,9 +330,9 @@ deleted for some reason, the message "li
 the error location may not be correct.  If you quit Vim and start again the
 marks are lost and the error locations may not be correct anymore.
 
-If vim is built with |+autocmd| support, two autocommands are available for
-running commands before and after a quickfix command (':make', ':grep' and so
-on) is executed. See |QuickFixCmdPre| and |QuickFixCmdPost| for details.
+Two autocommands are available for running commands before and after a
+quickfix command (':make', ':grep' and so on) is executed. See
+|QuickFixCmdPre| and |QuickFixCmdPost| for details.
 
 						*QuickFixCmdPost-example*
 When 'encoding' differs from the locale, the error messages may have a
@@ -657,8 +657,8 @@ To get the number of the current list in
 4. Using :make						*:make_makeprg*
 
 							*:mak* *:make*
-:mak[e][!] [arguments]	1. If vim was built with |+autocmd|, all relevant
-			   |QuickFixCmdPre| autocommands are executed.
+:mak[e][!] [arguments]	1. All relevant |QuickFixCmdPre| autocommands are
+			   executed.
 			2. If the 'autowrite' option is on, write any changed
 			   buffers
 			3. An errorfile name is made from 'makeef'.  If
@@ -670,9 +670,8 @@ 4. Using :make						*:make_makeprg*
 			   errorfile (for Unix it is also echoed on the
 			   screen).
 			5. The errorfile is read using 'errorformat'.
-			6. If vim was built with |+autocmd|, all relevant
-			   |QuickFixCmdPost| autocommands are executed.
-			   See example below.
+			6. All relevant |QuickFixCmdPost| autocommands are
+			   executed.  See example below.
 			7. If [!] is not given the first error is jumped to.
 			8. The errorfile is deleted.
 			9. You can now move through the errors with commands
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 8.0.  Last change: 2018 Feb 11
+*repeat.txt*    For Vim version 8.0.  Last change: 2018 Mar 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -265,6 +265,7 @@ For writing a Vim script, see chapter 41
 			loaded during initialization, see |load-plugins|.
 
 			Also see |pack-add|.
+			{only available when compiled with +eval}
 
 						*:packl* *:packloadall*
 :packl[oadall][!]	Load all packages in the "start" directory under each
@@ -288,6 +289,7 @@ For writing a Vim script, see chapter 41
 			An error only causes sourcing the script where it
 			happens to be aborted, further plugins will be loaded.
 			See |packages|.
+			{only available when compiled with +eval}
 
 :scripte[ncoding] [encoding]		*:scripte* *:scriptencoding* *E167*
 			Specify the character encoding used in the script.
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 8.0.  Last change: 2018 Feb 10
+*starting.txt*  For Vim version 8.0.  Last change: 2018 Mar 01
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6606,6 +6606,7 @@ gettabinfo()	eval.txt	/*gettabinfo()*
 gettabvar()	eval.txt	/*gettabvar()*
 gettabwinvar()	eval.txt	/*gettabwinvar()*
 getwininfo()	eval.txt	/*getwininfo()*
+getwinpos()	eval.txt	/*getwinpos()*
 getwinposx()	eval.txt	/*getwinposx()*
 getwinposy()	eval.txt	/*getwinposy()*
 getwinvar()	eval.txt	/*getwinvar()*
@@ -8927,6 +8928,7 @@ term_gettty()	eval.txt	/*term_gettty()*
 term_list()	eval.txt	/*term_list()*
 term_scrape()	eval.txt	/*term_scrape()*
 term_sendkeys()	eval.txt	/*term_sendkeys()*
+term_setrestore()	eval.txt	/*term_setrestore()*
 term_setsize()	eval.txt	/*term_setsize()*
 term_start()	eval.txt	/*term_start()*
 term_wait()	eval.txt	/*term_wait()*
@@ -8944,6 +8946,8 @@ termdebug-example	terminal.txt	/*termdeb
 termdebug-starting	terminal.txt	/*termdebug-starting*
 termdebug-stepping	terminal.txt	/*termdebug-stepping*
 termdebug-variables	terminal.txt	/*termdebug-variables*
+termdebug_popup	terminal.txt	/*termdebug_popup*
+termdebug_wide	terminal.txt	/*termdebug_wide*
 terminal	terminal.txt	/*terminal*
 terminal-colors	os_unix.txt	/*terminal-colors*
 terminal-cursor-style	terminal.txt	/*terminal-cursor-style*
@@ -8959,6 +8963,7 @@ terminal-options	term.txt	/*terminal-opt
 terminal-output-codes	term.txt	/*terminal-output-codes*
 terminal-resizing	terminal.txt	/*terminal-resizing*
 terminal-screendump	terminal.txt	/*terminal-screendump*
+terminal-session	terminal.txt	/*terminal-session*
 terminal-size-color	terminal.txt	/*terminal-size-color*
 terminal-special-keys	terminal.txt	/*terminal-special-keys*
 terminal-testing	terminal.txt	/*terminal-testing*
--- a/runtime/doc/terminal.txt
+++ b/runtime/doc/terminal.txt
@@ -1,4 +1,4 @@
-*terminal.txt*	For Vim version 8.0.  Last change: 2018 Feb 20
+*terminal.txt*	For Vim version 8.0.  Last change: 2018 Mar 09
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -20,6 +20,7 @@ 1. Basic use			|terminal-use|
       Terminal Modes			|Terminal-mode|
       Cursor style			|terminal-cursor-style|
       Special keys			|terminal-special-keys|
+      Session				|terminal-session|
       Unix				|terminal-unix|
       MS-Windows			|terminal-ms-windows|
 2. Remote testing		|terminal-testing|
@@ -163,6 +164,8 @@ Syntax ~
 					cannot be |abandon|ed.
 			++hidden	Open the terminal in a hidden buffer,
 					no window will be used.
+			++norestore	Do not include this terminal window
+					in a session file.
 			++rows={height} Use {height} for the terminal window
 					height.  If the terminal uses the full
 					Vim height (no window above or below
@@ -286,6 +289,22 @@ is inverted.  Since Vim cannot detect th
 blinking will also be inverted.
 
 
+Session ~
+							*terminal-session*
+A terminal window will be restored when using a session file, if possible and
+wanted.
+
+If "terminal" was removed from 'sessionoptions' then no terminal windows will
+be restored.
+
+If the job in the terminal was finished the window will not be restored.
+
+If the terminal can be restored, the command that was used to open it will be
+used again.  To change this use the |term_setrestore()| function.  This can
+also be used to not restore a specific terminal by setting the command to
+"NONE".
+
+
 Special keys ~
 							*terminal-special-keys*
 Since the terminal emulator simulates an xterm, only escape sequences that
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2018 Feb 27
+*todo.txt*      For Vim version 8.0.  Last change: 2018 Mar 09
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -39,16 +39,7 @@ No maintainer for Vietnamese translation
 No maintainer for Simplified Chinese translations.
 
 Terminal emulator window:
-- using feedkeys() does not work?  (Charles Sheridan, 2018 Feb 17)
 - Lots of stuff to implement, see src/terminal.c
-- Improve debugger interface:
-    - Implement the right-click popup menu for the terminal. Can use the
-      completion popup menu code and mouse dragging.
-      Use it for "set breakpoint", "remove breakpoint", etc.
-  - Look into the idevim plugin/script.
-- Improve screen dump testing:
-  Add docs for how to properly use the screen dumps for testing, e.g. for
-  syntax highlighting.
 
 Mode message isn't updated on vertical split. (Alexei Averchenko, 2018 Feb 2,
 #2611)
@@ -62,28 +53,28 @@ Compiler warnings (geeknik, 2017 Oct 26)
 - signed integer overflow in getdecchrs() (#2254)
 - undefined left shift in get_string_tv() (#2250)
 
-Patch to fix 'undolevels' in options window. (Yasuhiro Matsumoto, 2018 Feb 14,
-#2645)
-
-Patch to fix fd leak when using jobs. (ichizok, 2018 Feb 16, #2651)
-
-Popup menu is too wide, causing it not to be aligned. (Linwei, 2018 Feb 22,
-#2661)
-
 balloon_show() does not work properly in the terminal. (Ben Jackson, 2017 Dec
 20, #2481)
 Also see #2352, want better control over balloon, perhaps set the position.
 
+Try out background make plugin: 
+  https://github.com/AndrewVos/vim-make-background
+or asyncmake: 
+  https://github.com/yegappan/asyncmake
+
 Cursor in status line after search. (#2530)
 
 Cursor in wrong position when line wraps. (#2540)
 
 Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
 
+Does setting 'cursorline' cause syntax highlighting to slow down?  Perhaps is
+mess up the cache?  (Mike Lee Williams, 2018 Jan 27, #2539)
+
 When using :packadd files under "later" are not used, which is inconsistent
 with packages under "start". (xtal8, #1994)
 
-Column number is wrong whsn using 'linebreak' and 'wrap'. (Keith Smiley, 2018
+Column number is wrong when using 'linebreak' and 'wrap'. (Keith Smiley, 2018
 Jan 15, #2555)
 
 Check argument of systemlist(). (Pavlov)
@@ -94,13 +85,12 @@ Also see #2337
 Starting job with cwd option, when the directory does not exist, gives a
 confusing error message. (Wang Shidong, 2018 Jan 2, #2519)
 
-7   Make "ga" show the digraph for a character, if it exists.
-Patch from Christian Brabandt, 2011 Aug 19.
-
 Patch to add "module" to quickfix entries. (Marcin Szamotulski, Coot, 2017 Jun
 8, #1757)  Now part of #2322.  Or #2327?  #1757 was re-opened, include that
 first.
 
+Add the debug command line history to viminfo.
+
 ch_sendraw() with long string does not try to read inbetween, which may cause
 a deadlock if the reading side is waiting for the write to finish. (Nate
 Bosch, 2018 Jan 13, #2548)
@@ -115,9 +105,6 @@ word is re-added to it. (Matej Cepl, 201
 Problem with mouse scroll in tmux. (fcying, #2419)  Might be caused by patch
 8.0.1309.  Removing "held_button = MOUSE_RELEASE;" helps. (2018 Feb 5)
 
-Does setting 'cursorline' cause syntax highlighting to slow down?  Perhaps is
-mess up the cache?  (Mike Lee Williams, 2018 Jan 27, #2539)
-
 Fold at end of the buffer behaves inconsistently. (James McCoy, 2017 Oct 9)
 
 With foldmethod=syntax and nofoldenable comment highlighting isn't removed.
@@ -600,8 +587,6 @@ 4#1038)
 +channel:
 - Add a separate timeout for opening a socket.  Currently it's fixed at 50
   msec, which is too small for a remote connection. (tverniquet, #2130)
-- Try out background make plugin: 
-  https://github.com/AndrewVos/vim-make-background
 - Problem with stderr on Windows? (Vincent Rischmann, 2016 Aug 31, #1026)
 - Writing raw mode to a buffer should still handle NL characters as line
   breaks. (Dmitry Zotikov, 2017 Aug 16)
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt*	For Vim version 8.0.  Last change: 2018 Feb 13
+*usr_41.txt*	For Vim version 8.0.  Last change: 2018 Mar 03
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -885,8 +885,9 @@ Interactive:					*interactive-functions*
 
 GUI:						*gui-functions*
 	getfontname()		get name of current font being used
-	getwinposx()		X position of the GUI Vim window
-	getwinposy()		Y position of the GUI Vim window
+	getwinpos()		position of the Vim window
+	getwinposx()		X position of the Vim window
+	getwinposy()		Y position of the Vim window
 	balloon_show()		set the balloon content
 	balloon_split()		split a message for a balloon
 
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 8.0.  Last change: 2018 Feb 27
+*various.txt*   For Vim version 8.0.  Last change: 2018 Mar 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -306,7 +306,7 @@ 8g8			Find an illegal UTF-8 byte sequenc
 			Here is an overview of the features.
 			The first column shows the smallest version in which
 			they are included:
-			   T	tiny
+			   T	tiny (always)
 			   S	small
 			   N	normal
 			   B	big
@@ -320,7 +320,7 @@ 8g8			Find an illegal UTF-8 byte sequenc
    *+acl*		|ACL| support included
    *+ARP*		Amiga only: ARP support included
 B  *+arabic*		|Arabic| language support
-N  *+autocmd*		|:autocmd|, automatic commands
+T  *+autocmd*		|:autocmd|, automatic commands
 H  *+autoservername*	Automatically enable |clientserver|
 m  *+balloon_eval*	|balloon-eval| support in the GUI. Included when
 			compiling with supported GUI (Motif, GTK, GUI) and
@@ -344,7 +344,7 @@ N  *+comments*		|'comments'| support
 B  *+conceal*		"conceal" support, see |conceal| |:syn-conceal| etc.
 N  *+cryptv*		encryption support |encryption|
 B  *+cscope*		|cscope| support
-m  *+cursorbind*	|'cursorbind'| support
+T  *+cursorbind*	|'cursorbind'| support
 m  *+cursorshape*	|termcap-cursor-shape| support
 m  *+debug*		Compiled for debugging.
 N  *+dialog_gui*	Support for |:confirm| with GUI dialog.
--- a/runtime/ftplugin/chicken.vim
+++ b/runtime/ftplugin/chicken.vim
@@ -1,5 +1,5 @@
 " CHICKEN-specific Vim customizations
-" Last Change: 2018-01-06
+" Last Change: 2018-03-05
 " Author: Evan Hanson <evhan@foldling.org>
 " Maintainer: Evan Hanson <evhan@foldling.org>
 " URL: https://foldling.org/vim/ftplugin/chicken.vim
@@ -14,34 +14,37 @@ endif
 setl keywordprg=chicken-doc
 
 setl lispwords+=and-let*
-setl lispwords+=begin-for-syntax
 setl lispwords+=compiler-typecase
 setl lispwords+=condition-case
 setl lispwords+=define-compiler-syntax
 setl lispwords+=define-constant
 setl lispwords+=define-external
 setl lispwords+=define-for-syntax
+setl lispwords+=define-foreign-type
 setl lispwords+=define-inline
+setl lispwords+=define-location
 setl lispwords+=define-record
 setl lispwords+=define-record-printer
 setl lispwords+=define-specialization
-setl lispwords+=define-syntax-rule
-setl lispwords+=eval-when
 setl lispwords+=fluid-let
+setl lispwords+=foreign-lambda*
+setl lispwords+=foreign-primitive
+setl lispwords+=foreign-safe-lambda*
+setl lispwords+=functor
 setl lispwords+=handle-exceptions
 setl lispwords+=let-compiler-syntax
+setl lispwords+=let-location
 setl lispwords+=let-optionals
 setl lispwords+=let-optionals*
 setl lispwords+=letrec-values
 setl lispwords+=match
-setl lispwords+=match-lambda
-setl lispwords+=match-lambda*
 setl lispwords+=match-let
 setl lispwords+=match-let*
+setl lispwords+=match-letrec
 setl lispwords+=module
 setl lispwords+=receive
-setl lispwords+=select
 setl lispwords+=set!-values
+setl lispwords+=test-group
 
 let b:undo_ftplugin = b:undo_ftplugin . ' keywordprg<'
 
--- a/runtime/ftplugin/scheme.vim
+++ b/runtime/ftplugin/scheme.vim
@@ -1,6 +1,6 @@
 " Vim filetype plugin file
 " Language: Scheme (R7RS)
-" Last Change: 2018-01-20
+" Last Change: 2018-03-05
 " Author: Evan Hanson <evhan@foldling.org>
 " Maintainer: Evan Hanson <evhan@foldling.org>
 " Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
@@ -14,25 +14,20 @@ let s:cpo = &cpo
 set cpo&vim
 
 setl lisp
-setl comments=:;;;;,:;;;,:;;,:;,sr:#\|,ex:\|#
+setl comments=:;;;;,:;;;,:;;,:;,sr:#\|,mb:\|,ex:\|#
 setl commentstring=;%s
 setl define=^\\s*(def\\k*
 setl iskeyword=33,35-39,42-43,45-58,60-90,94,95,97-122,126
 
 let b:undo_ftplugin = 'setl lisp< comments< commentstring< define< iskeyword<'
 
-setl lispwords=begin
-setl lispwords+=case
-setl lispwords+=case-lambda
-setl lispwords+=cond
-setl lispwords+=cond-expand
+setl lispwords=case
 setl lispwords+=define
 setl lispwords+=define-record-type
 setl lispwords+=define-syntax
 setl lispwords+=define-values
 setl lispwords+=do
 setl lispwords+=guard
-setl lispwords+=import
 setl lispwords+=lambda
 setl lispwords+=let
 setl lispwords+=let*
--- a/runtime/indent/html.vim
+++ b/runtime/indent/html.vim
@@ -2,7 +2,7 @@
 " Header: "{{{
 " Maintainer:	Bram Moolenaar
 " Original Author: Andy Wokula <anwoku@yahoo.de>
-" Last Change:	2017 Jun 13
+" Last Change:	2018 Mar 09
 " Version:	1.0
 " Description:	HTML indent script with cached state for faster indenting on a
 "		range of lines.
@@ -56,6 +56,9 @@ let s:cpo_save = &cpo
 set cpo-=C
 "}}}
 
+" Pattern to match the name of a tag, including custom elements.
+let s:tagname = '\w\+\(-\w\+\)*'
+
 " Check and process settings from b:html_indent and g:html_indent... variables.
 " Prefer using buffer-local settings over global settings, so that there can
 " be defaults for all HTML files and exceptions for specific types of HTML
@@ -280,7 +283,7 @@ func! s:CountITags(text)
   let s:nextrel = 0  " relative indent steps for next line [unit &sw]:
   let s:block = 0		" assume starting outside of a block
   let s:countonly = 1	" don't change state
-  call substitute(a:text, '<\zs/\=\w\+\(-\w\+\)*\>\|<!--\[\|\[endif\]-->\|<!--\|-->', '\=s:CheckTag(submatch(0))', 'g')
+  call substitute(a:text, '<\zs/\=' . s:tagname . '\>\|<!--\[\|\[endif\]-->\|<!--\|-->', '\=s:CheckTag(submatch(0))', 'g')
   let s:countonly = 0
 endfunc "}}}
 
@@ -292,7 +295,7 @@ func! s:CountTagsAndState(text)
   let s:nextrel = 0  " relative indent steps for next line [unit &sw]:
 
   let s:block = b:hi_newstate.block
-  let tmp = substitute(a:text, '<\zs/\=\w\+\(-\w\+\)*\>\|<!--\[\|\[endif\]-->\|<!--\|-->', '\=s:CheckTag(submatch(0))', 'g')
+  let tmp = substitute(a:text, '<\zs/\=' . s:tagname . '\>\|<!--\[\|\[endif\]-->\|<!--\|-->', '\=s:CheckTag(submatch(0))', 'g')
   if s:block == 3
     let b:hi_newstate.scripttype = s:GetScriptType(matchstr(tmp, '\C.*<SCRIPT\>\zs[^>]*'))
   endif
@@ -530,7 +533,7 @@ func! s:FreshState(lnum)
   let swendtag = match(text, '^\s*</') >= 0
 
   " If previous line ended in a closing tag, line up with the opening tag.
-  if !swendtag && text =~ '</\w\+\s*>\s*$'
+  if !swendtag && text =~ '</' . s:tagname . '\s*>\s*$'
     call cursor(state.lnum, 99999)
     normal! F<
     let start_lnum = HtmlIndent_FindStartTag()
@@ -860,7 +863,7 @@ func! HtmlIndent_FindStartTag()
   " The cursor must be on or before a closing tag.
   " If found, positions the cursor at the match and returns the line number.
   " Otherwise returns 0.
-  let tagname = matchstr(getline('.')[col('.') - 1:], '</\zs\w\+\ze')
+  let tagname = matchstr(getline('.')[col('.') - 1:], '</\zs' . s:tagname . '\ze')
   let start_lnum = searchpair('<' . tagname . '\>', '', '</' . tagname . '\>', 'bW')
   if start_lnum > 0
     return start_lnum
@@ -876,7 +879,7 @@ func! HtmlIndent_FindTagEnd()
   " a self-closing tag, to the matching ">".
   " Limited to look up to b:html_indent_line_limit lines away.
   let text = getline('.')
-  let tagname = matchstr(text, '\w\+\|!--', col('.'))
+  let tagname = matchstr(text, s:tagname . '\|!--', col('.'))
   if tagname == '!--'
     call search('--\zs>')
   elseif s:get_tag('/' . tagname) != 0
@@ -921,9 +924,22 @@ func! s:InsideTag(foundHtmlString)
     else
       let idx = match(text, '\s\zs[_a-zA-Z0-9-]\+="')
     endif
+    if idx == -1
+      " try <tag attr
+      let idx = match(text, '<' . s:tagname . '\s\+\zs\w')
+    endif
+    if idx == -1
+      " after just <tag indent one level more
+      let idx = match(text, '<' . s:tagname . '$')
+      if idx >= 0
+	call cursor(lnum, idx)
+	return virtcol('.') + shiftwidth()
+      endif
+    endif
     if idx > 0
-      " Found the attribute.  TODO: assumes spaces, no Tabs.
-      return idx
+      " Found the attribute to align with.
+      call cursor(lnum, idx)
+      return virtcol('.')
     endif
   endwhile
   return -1
--- a/runtime/syntax/chicken.vim
+++ b/runtime/syntax/chicken.vim
@@ -1,6 +1,6 @@
 " Vim syntax file
 " Language: Scheme (CHICKEN)
-" Last Change: 2018 Jan 31
+" Last Change: 2018-02-05
 " Author: Evan Hanson <evhan@foldling.org>
 " Maintainer: Evan Hanson <evhan@foldling.org>
 " URL: https://foldling.org/vim/syntax/chicken.vim
@@ -14,7 +14,7 @@ if !exists('b:did_scheme_syntax')
 endif
 
 " Lighten parentheses.
-hi def link schemeParentheses Comment
+hi! def link schemeParentheses Comment
 
 " foo#bar
 syn match schemeExtraSyntax /[^ #'`\t\n()\[\]"|;]\+#[^ '`\t\n()\[\]"|;]\+/