changeset 11473:bd6ff5246c71

Update runtime files. commit https://github.com/vim/vim/commit/6aa8cea46d4179b2617daae034063dd0d8054e35 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Jun 5 14:44:35 2017 +0200 Update runtime files.
author Christian Brabandt <cb@256bit.org>
date Mon, 05 Jun 2017 14:45:04 +0200
parents 7b3e6e31fbb6
children 621e41f6dcc2
files runtime/doc/arabic.txt runtime/doc/autocmd.txt runtime/doc/eval.txt runtime/doc/ft_ada.txt runtime/doc/hangulin.txt runtime/doc/help.txt runtime/doc/if_ole.txt runtime/doc/if_perl.txt runtime/doc/insert.txt runtime/doc/intro.txt runtime/doc/map.txt runtime/doc/netbeans.txt runtime/doc/options.txt runtime/doc/os_beos.txt runtime/doc/os_vms.txt runtime/doc/os_win32.txt runtime/doc/pi_getscript.txt runtime/doc/print.txt runtime/doc/quotes.txt runtime/doc/spell.txt runtime/doc/syntax.txt runtime/doc/todo.txt runtime/doc/usr_09.txt runtime/doc/version6.txt runtime/doc/version7.txt runtime/syntax/cpp.vim runtime/syntax/haskell.vim src/po/it.po
diffstat 28 files changed, 771 insertions(+), 666 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/arabic.txt
+++ b/runtime/doc/arabic.txt
@@ -10,11 +10,11 @@ Arabic Language support (options & mappi
 
 								*E800*
 In order to use right-to-left and Arabic mapping support, it is
-necessary to compile VIM with the |+arabic| feature.
+necessary to compile Vim with the |+arabic| feature.
 
 These functions have been created by Nadim Shaikli <nadim-at-arabeyes.org>
 
-It is best to view this file with these settings within VIM's GUI: >
+It is best to view this file with these settings within Vim's GUI: >
 
 	:set encoding=utf-8
 	:set arabicshape
@@ -42,7 +42,7 @@ the user interface remains the standard 
 
 Highlights
 ----------
-o  Editing left-to-right files as in the original VIM hasn't changed.
+o  Editing left-to-right files as in the original Vim hasn't changed.
 
 o  Viewing and editing files in right-to-left windows.	 File
    orientation is per window, so it is possible to view the same
@@ -52,7 +52,7 @@ o  No special terminal with right-to-lef
    The right-to-left changes are completely hardware independent.
    Only Arabic fonts are necessary.
 
-o  Compatible with the original VIM.   Almost all features work in
+o  Compatible with the original Vim.   Almost all features work in
    right-to-left mode (there are liable to be bugs).
 
 o  Changing keyboard mapping and reverse insert modes using a single
@@ -66,14 +66,14 @@ o  While in Arabic mode, numbers are ent
 
 o  Arabic keymapping on the command line in reverse insert mode.
 
-o  Proper Bidirectional functionality is possible given VIM is
+o  Proper Bidirectional functionality is possible given Vim is
    started within a Bidi capable terminal emulator.
 
 
 Arabic Fonts						*arabicfonts*
 ------------
 
-VIM requires monospaced fonts of which there are many out there.
+Vim requires monospaced fonts of which there are many out there.
 Arabic requires ISO-8859-6 as well as Presentation Form-B fonts
 (without Form-B, Arabic will _NOT_ be usable).	It is highly
 recommended that users search for so-called 'ISO-10646-1' fonts.
@@ -96,13 +96,13 @@ o  Installation of fonts for X Window sy
 
 Usage
 -----
-Prior to the actual usage of Arabic within VIM, a number of settings
+Prior to the actual usage of Arabic within Vim, a number of settings
 need to be accounted for and invoked.
 
 o  Setting the Arabic fonts
 
-   +  For VIM GUI set the 'guifont' to your_ARABIC_FONT.  This is done
-      by entering the following command in the VIM window.
+   +  For Vim GUI set the 'guifont' to your_ARABIC_FONT.  This is done
+      by entering the following command in the Vim window.
 >
 		:set guifont=your_ARABIC_FONT
 <
@@ -115,7 +115,7 @@ o  Setting the Arabic fonts
       you can include ':set guifont=your_ARABIC_FONT' to your .vimrc
       file.
 
-   +  Under the X Window environment, you can also start VIM with
+   +  Under the X Window environment, you can also start Vim with
       '-fn your_ARABIC_FONT' option.
 
 o  Setting the appropriate character Encoding
@@ -124,7 +124,7 @@ o  Setting the appropriate character Enc
 >
 		:set encoding=utf-8
 <
-   to your .vimrc file (entering the command manually into you VIM
+   to your .vimrc file (entering the command manually into you Vim
    window is highly discouraged).  In short, include ':set
    encoding=utf-8' to your .vimrc file.
 
@@ -137,11 +137,11 @@ o  Setting the appropriate character Enc
 o  Enable Arabic settings [short-cut]
 
    In order to simplify and streamline things, you can either invoke
-   VIM with the command-line option,
+   Vim with the command-line option,
 
      % vim -A my_utf8_arabic_file ...
 
-   or enable 'arabic' via the following command within VIM
+   or enable 'arabic' via the following command within Vim
 >
 		:set arabic
 <
@@ -189,7 +189,7 @@ o  Enable Arabic settings [short-cut]
 >
 		:set keymap=arabic
 <
-      in your VIM window.  You can also append the 'keymap' set command to
+      in your Vim window.  You can also append the 'keymap' set command to
       your .vimrc file.  In other words, you can include ':set keymap=arabic'
       to your .vimrc file.
 
@@ -202,7 +202,7 @@ o  Enable Arabic settings [short-cut]
 
    +  Arabic deletion of a combined pair character
 
-      By default VIM has the 'delcombine' option disabled.  This option
+      By default Vim has the 'delcombine' option disabled.  This option
       allows the deletion of ALEF in a LAM_ALEF (LAA) combined character
       and still retain the LAM (i.e. it reverts to treating the combined
       character as its natural two characters form -- this also pertains
@@ -211,13 +211,13 @@ o  Enable Arabic settings [short-cut]
 >
 		:set delcombine
 <
-      in our VIM window.  You can also append the 'delcombine' set command
+      in our Vim window.  You can also append the 'delcombine' set command
       to your .vimrc file.  In other words, you can include ':set delcombine'
       to your .vimrc file.
 
    +  Arabic right-to-left Mode
 
-      By default VIM starts in Left-to-right mode.  'rightleft' is the
+      By default Vim starts in Left-to-right mode.  'rightleft' is the
       command that allows one to alter a window's orientation - that can
       be accomplished via,
 
@@ -253,7 +253,7 @@ o  Enable Arabic settings [short-cut]
 >
 		:set arabicshape
 <
-      in our VIM window.  You can also append the 'arabicshape' set
+      in our Vim window.  You can also append the 'arabicshape' set
       command to your .vimrc file.  In other words, you can include
       ':set arabicshape' to your .vimrc file.
 
@@ -261,7 +261,7 @@ o  Enable Arabic settings [short-cut]
 Keymap/Keyboard						*arabickeymap*
 ---------------
 
-The character/letter encoding used in VIM is the standard UTF-8.
+The character/letter encoding used in Vim is the standard UTF-8.
 It is widely discouraged that any other encoding be used or even
 attempted.
 
@@ -294,7 +294,7 @@ o  Keyboard
 Restrictions
 ------------
 
-o  VIM in its GUI form does not currently support Bi-directionality
+o  Vim in its GUI form does not currently support Bi-directionality
    (i.e. the ability to see both Arabic and Latin intermixed within
    the same line).
 
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -610,7 +610,7 @@ FileChangedShell		When Vim notices that 
 				|timestamp|
 				Mostly triggered after executing a shell
 				command, but also with a |:checktime| command
-				or when Gvim regains input focus.
+				or when gvim regains input focus.
 				This autocommand is triggered for each changed
 				file.  It is not used when 'autoread' is set
 				and the buffer was not changed.  If a
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.0.  Last change: 2017 May 02
+*eval.txt*	For Vim version 8.0.  Last change: 2017 Jun 04
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -3373,6 +3373,7 @@ did_filetype()	Returns |TRUE| when autoc
 		FileType event has been triggered at least once.  Can be used
 		to avoid triggering the FileType event again in the scripts
 		that detect the file type. |FileType|
+		Returns |FALSE| when `:setf FALLBACK` was used.
 		When editing another file, the counter is reset, thus this
 		really checks if the FileType event has been triggered for the
 		current buffer.  This allows an autocommand that starts
--- a/runtime/doc/ft_ada.txt
+++ b/runtime/doc/ft_ada.txt
@@ -116,7 +116,7 @@ 3)  "gnat xref -v -aI../Include *.ad?" w
     then "gnat xref -v *.ad?"
 4)  Project manager support is completely broken - don't even try "gnat xref
     -Padacl.gpr".
-5)  VIM is faster when the tags file is sorted - use "sort --unique
+5)  Vim is faster when the tags file is sorted - use "sort --unique
     --ignore-case --output=tags tags" .
 6)  Remember to insert "!_TAG_FILE_SORTED 2 %sort ui" as first line to mark
     the file assorted.
--- a/runtime/doc/hangulin.txt
+++ b/runtime/doc/hangulin.txt
@@ -6,7 +6,7 @@
 
 Introduction					*hangul*
 ------------
-It is to input hangul, the Korean language, with VIM GUI version.
+It is to input hangul, the Korean language, with Vim GUI version.
 If you have a XIM program, you can use another |+xim| feature.
 Basically, it is for anybody who has no XIM program.
 
@@ -31,7 +31,7 @@ You should set LANG variable to Korean l
 or ko_KR.UTF-8.
 If you set LC_ALL variable, it should be set to Korean locale also.
 
-VIM resource
+Vim resource
 ------------
 You may want to set 'encoding' and 'fileencodings'.
 Next are examples: >
@@ -53,12 +53,12 @@ If both are set, VIM_KEYBOARD has higher
 
 Hangul Fonts
 ------------
-If you use GTK version of GVIM, you should set 'guifont' and 'guifontwide'.
+If you use GTK version of gvim, you should set 'guifont' and 'guifontwide'.
 For example: >
     set guifont=Courier\ 12
     set guifontwide=NanumGothicCoding\ 12
 
-If you use Motif or Athena version of GVIM, you should set 'guifontset' in
+If you use Motif or Athena version of gvim, you should set 'guifontset' in
 your vimrc.  You can set fontset in the .Xdefaults file.
 
 $HOME/.gvimrc: >
@@ -77,11 +77,11 @@ your vimrc.  You can set fontset in the 
 
 attention! the , (comma) or ; (semicolon)
 
-And there should be no ':set guifont'.  If it exists, then Gvim ignores
-':set guifontset'.  It means VIM runs without fontset supporting.
+And there should be no ':set guifont'.  If it exists, then gvim ignores
+':set guifontset'.  It means Vim runs without fontset supporting.
 So, you can see only English.  Hangul does not be correctly displayed.
 
-After "fontset" feature is enabled, VIM does not allow using english
+After "fontset" feature is enabled, Vim does not allow using english
 font only in "font" setting for syntax.
 For example, if you use >
    :set guifontset=eng_font,your_font
@@ -99,7 +99,7 @@ We don't support Johab font.
 We don't support Hanja input.
 And We don't have any plan to support them.
 
-If you really need such features, you can use console version of VIM with a
+If you really need such features, you can use console version of Vim with a
 capable terminal emulator.
 
 Bug or Comment
--- a/runtime/doc/help.txt
+++ b/runtime/doc/help.txt
@@ -31,7 +31,7 @@ Get specific help:  It is possible to go
 		    help entries for "word".
 		    Or use ":helpgrep word". |:helpgrep|
 
-VIM stands for Vi IMproved.  Most of VIM was made by Bram Moolenaar, but only
+Vim stands for Vi IMproved.  Most of Vim was made by Bram Moolenaar, but only
 through the help of many others.  See |credits|.
 ------------------------------------------------------------------------------
 						*doc-file-list* *Q_ct*
--- a/runtime/doc/if_ole.txt
+++ b/runtime/doc/if_ole.txt
@@ -41,9 +41,9 @@ instance), code similar to the following
 	$vim = new Win32::OLE 'Vim.Application';
 
 [C#] >
-        // Add a reference to VIM in your project. 
+        // Add a reference to Vim in your project. 
         // Choose the COM tab.
-        // Select "VIM Ole Interface 1.1 Type Library"
+        // Select "Vim Ole Interface 1.1 Type Library"
 	Vim.Vim vimobj = new Vim.Vim();
 
 Vim does not support acting as a "hidden" OLE server, like some other OLE
--- a/runtime/doc/if_perl.txt
+++ b/runtime/doc/if_perl.txt
@@ -7,7 +7,7 @@
 Perl and Vim				*perl* *Perl*
 
 1. Editing Perl files			|perl-editing|
-2. Compiling VIM with Perl interface	|perl-compiling|
+2. Compiling Vim with Perl interface	|perl-compiling|
 3. Using the Perl interface		|perl-using|
 4. Dynamic loading			|perl-dynamic|
 
@@ -33,7 +33,7 @@ Vim in the $VIMRUNTIME/tools directory. 
 features than Exuberant ctags' Perl support.
 
 ==============================================================================
-2. Compiling VIM with Perl interface			*perl-compiling*
+2. Compiling Vim with Perl interface			*perl-compiling*
 
 To compile Vim with Perl interface, you need Perl 5.004 (or later).  Perl must
 be installed before you compile Vim.  Vim's Perl interface does NOT work with
--- a/runtime/doc/insert.txt
+++ b/runtime/doc/insert.txt
@@ -1,4 +1,4 @@
-*insert.txt*    For Vim version 8.0.  Last change: 2017 Apr 07
+*insert.txt*    For Vim version 8.0.  Last change: 2017 May 30
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -634,13 +634,13 @@ 9. Vim command-line					|i_CTRL-X_CTRL-V
 10. User defined completion				|i_CTRL-X_CTRL-U|
 11. omni completion					|i_CTRL-X_CTRL-O|
 12. Spelling suggestions				|i_CTRL-X_s|
-13. keywords in 'complete'				|i_CTRL-N|
+13. keywords in 'complete'				|i_CTRL-N| |i_CTRL-P|
 
-All these (except 2) are done in CTRL-X mode.  This is a sub-mode of Insert
-and Replace modes.  You enter CTRL-X mode by typing CTRL-X and one of the
-CTRL-X commands.  You exit CTRL-X mode by typing a key that is not a valid
-CTRL-X mode command.  Valid keys are the CTRL-X command itself, CTRL-N (next),
-and CTRL-P (previous).
+All these, except CTRL-N and CTRL-P, are done in CTRL-X mode.  This is a
+sub-mode of Insert and Replace modes.  You enter CTRL-X mode by typing CTRL-X
+and one of the CTRL-X commands.  You exit CTRL-X mode by typing a key that is
+not a valid CTRL-X mode command.  Valid keys are the CTRL-X command itself,
+CTRL-N (next), and CTRL-P (previous).
 
 Also see the 'infercase' option if you want to adjust the case of the match.
 
--- a/runtime/doc/intro.txt
+++ b/runtime/doc/intro.txt
@@ -84,8 +84,8 @@ The Vim pages contain the most recent in
 contain links to the most recent version of Vim.  The FAQ is a list of
 Frequently Asked Questions.  Read this if you have problems.
 
-	VIM home page:	  http://www.vim.org/
-	VIM FAQ:	  http://vimdoc.sf.net/
+	Vim home page:	  http://www.vim.org/
+	Vim FAQ:	  http://vimdoc.sf.net/
 	Downloading:	  ftp://ftp.vim.org/pub/vim/MIRRORS
 
 
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt*       For Vim version 8.0.  Last change: 2017 Mar 10
+*map.txt*       For Vim version 8.0.  Last change: 2017 May 30
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -185,7 +185,7 @@ that starts with ",".  Then you need to 
 whether to use the "," mapping or the longer one.  To avoid this add the
 <nowait> argument.  Then the mapping will be used when it matches, Vim does
 not wait for more characters to be typed.  However, if the characters were
-already type they are used.
+already typed they are used.
 
 						*:map-<silent>* *:map-silent*
 To define a mapping which will not be echoed on the command line, add
@@ -798,7 +798,7 @@ Bear in mind that convert-meta has been 
 UTF-8 locales.  On terminals like xterm, the "metaSendsEscape" resource can be
 toggled on the fly through the "Main Options" menu, by pressing Ctrl-LeftClick
 on the terminal; that's a good last resource in case you want to send ESC when
-using other applications but not when inside VIM.
+using other applications but not when inside Vim.
 
 
 1.11 MAPPING AN OPERATOR				*:map-operator*
--- a/runtime/doc/netbeans.txt
+++ b/runtime/doc/netbeans.txt
@@ -120,7 +120,7 @@ In case you do not want the NetBeans int
 uncommenting a line with "--disable-netbeans" in the Makefile.
 
 Currently the NetBeans interface is supported by Vim running in a terminal and
-by GVim when it is run with one of the following GUIs: GTK, GNOME, Windows,
+by gvim when it is run with one of the following GUIs: GTK, GNOME, Windows,
 Athena and Motif.
 
 If Motif support is required the user must supply XPM libraries.  See
@@ -996,7 +996,7 @@ to "Vim".  In the Expert tab make sure t
 You should be careful if you change the "Vim Command".  There are command
 line options there which must be there for the connection to be properly
 set up.  You can change the command name but that's about it.  If your gvim
-can be found by your $PATH then the VIM Command can start with "gvim".  If
+can be found by your $PATH then the Vim Command can start with "gvim".  If
 you don't want gvim searched from your $PATH then hard code in the full
 Unix path name.  At this point you should get a gvim for any source file
 you open in NetBeans.
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.0.  Last change: 2017 May 08
+*options.txt*	For Vim version 8.0.  Last change: 2017 Jun 04
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -370,7 +370,7 @@ Note: In the future more global options 
 
 Setting the filetype
 
-:setf[iletype] {filetype}			*:setf* *:setfiletype*
+:setf[iletype] [FALLBACK] {filetype}			*:setf* *:setfiletype*
 			Set the 'filetype' option to {filetype}, but only if
 			not done yet in a sequence of (nested) autocommands.
 			This is short for: >
@@ -380,6 +380,13 @@ Setting the filetype
 <			This command is used in a filetype.vim file to avoid
 			setting the 'filetype' option twice, causing different
 			settings and syntax files to be loaded.
+
+			When the optional FALLBACK argument is present, a
+			later :setfiletype command will override the
+			'filetype'.  This is to used for filetype detections
+			that are just a guess.  |did_filetype()| will return
+			false after this command.
+
 			{not in Vi}
 
 				*option-window* *optwin*
@@ -7735,6 +7742,7 @@ A jump table for the options with a shor
 	compatible terminal.
 	If setting this option does not work (produces a colorless UI)
 	reading |xterm-true-color| might help.
+	Note that the "cterm" attributes are still used, not the "gui" ones.
 	NOTE: This option is reset when 'compatible' is set.
 
 						*'terse'* *'noterse'*
--- a/runtime/doc/os_beos.txt
+++ b/runtime/doc/os_beos.txt
@@ -144,7 +144,7 @@ The default value for $VIM is set at com
   :version
 
 The normal value is /boot/home/config/share/vim.  If you don't like it you can
-set the VIM environment variable to override this, or set 'helpfile' in your
+set the Vim environment variable to override this, or set 'helpfile' in your
 .vimrc: >
 
   :if version >= 500
--- a/runtime/doc/os_vms.txt
+++ b/runtime/doc/os_vms.txt
@@ -539,7 +539,7 @@ More info under :help hardcopy
 
 8.10 Setting up the symbols
 
-When I use GVIM this way and press CTRL-Y in the parent terminal, gvim exits.
+When I use gvim this way and press CTRL-Y in the parent terminal, gvim exits.
 I now use a different symbol that seems to work OK and fixes the problem.
 I suggest this instead: >
 
@@ -547,7 +547,7 @@ I suggest this instead: >
 
 The /INPUT=NLA0: separates the standard input of the gvim process from the
 parent terminal, to block signals from the parent window.
-Without the -GEOMETRY, the GVIM window size will be minimal and the menu
+Without the -GEOMETRY, the gvim window size will be minimal and the menu
 will be confused after a window-resize.
 
 (Carlo Mekenkamp, Coen Engelbarts, Vim 6.0ac)
@@ -764,14 +764,14 @@ GNU_TOOLS.ZIP package downloadable from 
 
 9. VMS related changes					*vms-changes*
 
-Version 7.4 
-- Undo: VMS can not handle more than one dot in the filenames use "dir/name" -> "dir/_un_name" 
+Version 7.4
+- Undo: VMS can not handle more than one dot in the filenames use "dir/name" -> "dir/_un_name"
   add _un_ at the beginning to keep the extension
 - correct swap file name wildcard handling
 - handle iconv usage correctly
 - do not optimize on vax - otherwise it hangs compiling crypto files
 - fileio.c fix the comment
-- correct RealWaitForChar 
+- correct RealWaitForChar
 - after 7.4-119 use different functions lib$cvtf_to_internal_time because Alpha and VAX have
   G_FLOAT but IA64 uses IEEE float otherwise Vim crashes
 - guard against crashes that are caused by mixed filenames
--- a/runtime/doc/os_win32.txt
+++ b/runtime/doc/os_win32.txt
@@ -135,7 +135,7 @@ you will need to get a version older tha
 6. Running under Windows 3.1				*win32-win3.1*
 
 					*win32s* *windows-3.1* *gui-w32s*
-There was a special version of Gvim that runs under Windows 3.1 and 3.11.
+There was a special version of gvim that runs under Windows 3.1 and 3.11.
 Support was removed in patch 7.4.1363.
 
 ==============================================================================
--- a/runtime/doc/pi_getscript.txt
+++ b/runtime/doc/pi_getscript.txt
@@ -9,7 +9,7 @@ Copyright: (c) 2004-2012 by Charles E. C
 	The VIM LICENSE (see |copyright|) applies to the files in this
 	package, including getscriptPlugin.vim, getscript.vim,
 	GetLatestVimScripts.dist, and pi_getscript.txt, except use "getscript"
-	instead of "VIM".  Like anything else that's free, getscript and its
+	instead of "Vim".  Like anything else that's free, getscript and its
 	associated files are provided *as is* and comes with no warranty of
 	any kind, either expressed or implied.  No guarantees of
 	merchantability.  No guarantees of suitability for any purpose.  By
@@ -68,7 +68,7 @@ Your computer needs to have wget or curl
 		mv GetLatestVimScripts.dist GetLatestVimScripts.dat
 		(edit GetLatestVimScripts.dat to install your own personal
 		list of desired plugins -- see |GetLatestVimScripts_dat|)
-	
+
 	3. Windows:
 		vim getscript.vba
 		:so %
--- a/runtime/doc/print.txt
+++ b/runtime/doc/print.txt
@@ -99,25 +99,25 @@ If the option is empty, then vim will us
 					HPUX: hp-roman8,
 					EBCDIC: ebcdic-uk)
 			global
-Sets the character encoding used when printing.  This option tells VIM which
+Sets the character encoding used when printing.  This option tells Vim which
 print character encoding file from the "print" directory in 'runtimepath' to
 use.
 
 This option will accept any value from |encoding-names|.  Any recognized names
-are converted to VIM standard names - see 'encoding' for more details.  Names
-not recognized by VIM will just be converted to lower case and underscores
+are converted to Vim standard names - see 'encoding' for more details.  Names
+not recognized by Vim will just be converted to lower case and underscores
 replaced with '-' signs.
 
-If 'printencoding' is empty or VIM cannot find the file then it will use
-'encoding' (if VIM is compiled with |+multi_byte| and it is set an 8-bit
-encoding) to find the print character encoding file.  If VIM is unable to find
+If 'printencoding' is empty or Vim cannot find the file then it will use
+'encoding' (if Vim is compiled with |+multi_byte| and it is set an 8-bit
+encoding) to find the print character encoding file.  If Vim is unable to find
 a character encoding file then it will use the "latin1" print character
 encoding file.
 
-When 'encoding' is set to a multi-byte encoding, VIM will try to convert
+When 'encoding' is set to a multi-byte encoding, Vim will try to convert
 characters to the printing encoding for printing (if 'printencoding' is empty
 then the conversion will be to latin1).  Conversion to a printing encoding
-other than latin1 will require VIM to be compiled with the |+iconv| feature.
+other than latin1 will require Vim to be compiled with the |+iconv| feature.
 If no conversion is possible then printing will fail.  Any characters that
 cannot be converted will be replaced with upside down question marks.
 
@@ -203,7 +203,7 @@ header is used when this option is empty
 'printmbcharset' 'pmbcs'  string (default "")
 			  global
 Sets the CJK character set to be used when generating CJK output from
-|:hardcopy|.  The following predefined values are currently recognised by VIM:
+|:hardcopy|.  The following predefined values are currently recognised by Vim:
 
 		Value		Description ~
   Chinese	GB_2312-80
@@ -270,7 +270,7 @@ Japanese text you would do the following
 
 If 'printmbcharset' is not one of the above values then it is assumed to
 specify a custom multi-byte character set and no check will be made that it is
-compatible with the value for 'printencoding'.  VIM will look for a file
+compatible with the value for 'printencoding'.  Vim will look for a file
 defining the character set in the "print" directory in 'runtimepath'.
 
 							*pmbfn-option*
@@ -420,10 +420,10 @@ There are currently a number of limitati
   possible to get all the characters in an encoding to print by installing a
   new version of the Courier font family.
 
-- Multi-byte support - Currently VIM will try to convert multi-byte characters
+- Multi-byte support - Currently Vim will try to convert multi-byte characters
   to the 8-bit encoding specified by 'printencoding' (or latin1 if it is
   empty).  Any characters that are not successfully converted are shown as
-  unknown characters.  Printing will fail if VIM cannot convert the multi-byte
+  unknown characters.  Printing will fail if Vim cannot convert the multi-byte
   to the 8-bit encoding.
 
 ==============================================================================
@@ -434,11 +434,11 @@ you need to define your own PostScript f
 to define a font encoding vector is beyond the scope of this help file, but
 you can find details in the PostScript Language Reference Manual, 3rd Edition,
 published by Addison-Wesley and available in PDF form at
-http://www.adobe.com/.  The following describes what you need to do for VIM to
+http://www.adobe.com/.  The following describes what you need to do for Vim to
 locate and use your print character encoding.
 
 i.   Decide on a unique name for your encoding vector, one that does not clash
-     with any of the recognized or standard encoding names that VIM uses (see
+     with any of the recognized or standard encoding names that Vim uses (see
      |encoding-names| for a list), and that no one else is likely to use.
 ii.  Copy $VIMRUNTIME/print/latin1.ps to the print subdirectory in your
      'runtimepath' and rename it with your unique name.
@@ -446,23 +446,23 @@ iii. Edit your renamed copy of latin1.ps
      with your unique name (don't forget the line starting %%Title:), and
      modify the array of glyph names to define your new encoding vector.  The
      array must have exactly 256 entries or you will not be able to print!
-iv.  Within VIM, set 'printencoding' to your unique encoding name and then
-     print your file.  VIM will now use your custom print character encoding.
+iv.  Within Vim, set 'printencoding' to your unique encoding name and then
+     print your file.  Vim will now use your custom print character encoding.
 
-VIM will report an error with the resource file if you change the order or
+Vim will report an error with the resource file if you change the order or
 content of the first 3 lines, other than the name of the encoding on the line
 starting %%Title: or the version number on the line starting %%Version:.
 
-[Technical explanation for those that know PostScript - VIM looks for a file
+[Technical explanation for those that know PostScript - Vim looks for a file
 with the same name as the encoding it will use when printing.  The file
 defines a new PostScript Encoding resource called /VIM-name, where name is the
-print character encoding VIM will use.]
+print character encoding Vim will use.]
 
 ==============================================================================
 5. PostScript CJK Printing			*postscript-cjk-printing*
 							*E673* *E674* *E675*
 
-VIM supports printing of Chinese, Japanese, and Korean files.  Setting up VIM
+Vim supports printing of Chinese, Japanese, and Korean files.  Setting up Vim
 to correctly print CJK files requires setting up a few more options.
 
 Each of these countries has many standard character sets and encodings which
@@ -483,7 +483,7 @@ option allows you to specify different f
 which are syntax highlighted with the font styles normal, italic, bold and
 bold-italic.
 
-No CJK fonts are supplied with VIM.  There are some free Korean, Japanese, and
+No CJK fonts are supplied with Vim.  There are some free Korean, Japanese, and
 Traditional Chinese fonts available at:
 
   http://examples.oreilly.com/cjkvinfo/adobe/samples/
@@ -498,7 +498,7 @@ CJK fonts can be large containing severa
 uncommon to find that they only contain a subset of a national standard.  It
 is not unusual to find the fonts to not include characters for codes in the
 ASCII code range.  If you find half-width Roman characters are not appearing
-in your printout then you should configure VIM to use the Courier font the
+in your printout then you should configure Vim to use the Courier font the
 half-width ASCII characters with 'printmbfont'.  If your font does not include
 other characters then you will need to find another font that does.
 
@@ -506,7 +506,7 @@ Another issue with ASCII characters, is 
 sets specify a couple of different glyphs in the ASCII code range.  If you
 print ASCII text using the national character set you may see some unexpected
 characters.  If you want true ASCII code printing then you need to configure
-VIM to output ASCII characters for the ASCII code range with 'printmbfont'.
+Vim to output ASCII characters for the ASCII code range with 'printmbfont'.
 
 It is possible to define your own multi-byte character set although this
 should not be attempted lightly.  A discussion on the process if beyond the
@@ -525,13 +525,13 @@ print job completing.
 There are a number of possible causes as to why the printing may have failed:
 
 - Wrong version of the prolog resource file.  The prolog resource file
-  contains some PostScript that VIM needs to be able to print.  Each version
-  of VIM needs one particular version.  Make sure you have correctly installed
+  contains some PostScript that Vim needs to be able to print.  Each version
+  of Vim needs one particular version.  Make sure you have correctly installed
   the runtime files, and don't have any old versions of a file called prolog
   in the print directory in your 'runtimepath' directory.
 
 - Paper size.  Some PostScript printers will abort printing a file if they do
-  not support the requested paper size.  By default VIM uses A4 paper.  Find
+  not support the requested paper size.  By default Vim uses A4 paper.  Find
   out what size paper your printer normally uses and set the appropriate paper
   size with 'printoptions'.  If you cannot find the name of the paper used,
   measure a sheet and compare it with the table of supported paper sizes listed
@@ -668,7 +668,7 @@ complex print document creation.
 
 N-UP PRINTING
 
-The psnup utility takes an existing PostScript file generated from VIM and
+The psnup utility takes an existing PostScript file generated from Vim and
 convert it to an n-up version.  The simplest way to create a 2-up printout is
 to first create a PostScript file with: >
 
@@ -724,16 +724,16 @@ 2. Paper flipping.  When turning over th
 ==============================================================================
 8. Formfeed Characters					*printing-formfeed*
 
-By default VIM does not do any special processing of |formfeed| control
-characters.  Setting the 'printoptions' formfeed item will make VIM recognize
+By default Vim does not do any special processing of |formfeed| control
+characters.  Setting the 'printoptions' formfeed item will make Vim recognize
 formfeed characters and continue printing the current line at the beginning
 of the first line on a new page.  The use of formfeed characters provides
 rudimentary print control but there are certain things to be aware of.
 
-VIM will always start printing a line (including a line number if enabled)
+Vim will always start printing a line (including a line number if enabled)
 containing a formfeed character, even if it is the first character on the
 line.  This means if a line starting with a formfeed character is the first
-line of a page then VIM will print a blank page.
+line of a page then Vim will print a blank page.
 
 Since the line number is printed at the start of printing the line containing
 the formfeed character, the remainder of the line printed on the new page
@@ -742,7 +742,7 @@ lines of a long line when wrap in 'print
 
 If the formfeed character is the last character on a line, then printing will
 continue on the second line of the new page, not the first.  This is due to
-VIM processing the end of the line after the formfeed character and moving
+Vim processing the end of the line after the formfeed character and moving
 down a line to continue printing.
 
 Due to the points made above it is recommended that when formfeed character
--- a/runtime/doc/quotes.txt
+++ b/runtime/doc/quotes.txt
@@ -63,53 +63,53 @@ versions of 'emacs' in the late 1970's a
 first UNIX I came across in 1983).  In my opinion, it's about time 'VIM'
 replace 'emacs' as the standard for top editors.  (Bo Thide', Sweden)
 
-I love and use VIM heavily too.  (Larry Wall)
+I love and use Vim heavily too.  (Larry Wall)
 
 Vi is like a Ferrari, if you're a beginner, it handles like a bitch, but once
 you get the hang of it, it's small, powerful and FAST! (Unknown)
-VIM is like a new model Ferrari, and sounds like one too - "VIIIIIIMMM!"
+Vim is like a new model Ferrari, and sounds like one too - "VIIIIIIMMM!"
 (Stephen Riehm, Germany)
 
-Schon bei Nutzung eines Bruchteils der VIM-Funktionen wird der Benutzer recht
+Schon bei Nutzung eines Bruchteils der Vim-Funktionen wird der Benutzer recht
 schnell die Vorzuege dieses Editors kennen- und schaetzenlernen.
-Translated: Even when only using a fraction of VIM-functions, the user will
+Translated: Even when only using a fraction of Vim-functions, the user will
 quickly get used to and appreciate the advantages of this editor.  (Garry
-Glendown, conclusion of an article on VIM in iX magazine 9/1998)
+Glendown, conclusion of an article on Vim in iX magazine 9/1998)
 
-I've recently acquired the O'Reilly book on VI (it also discusses VIM
+I've recently acquired the O'Reilly book on Vi (it also discusses Vim
 in-depth), and I'm amazed at just how powerful this application is.  (Jeffrey
 Rankin)
 
-This guide was written using the Windows 9.x distribution of GVIM, which is
+This guide was written using the Windows 9.x distribution of gvim, which is
 quite possibly the greatest thing to come along since God created the naked
 girl.  (Michael DiBernardo)
 
-Boy, I thought I knew almost everything about VIM, but every time I browse the
-online documentation, I hit upon a minor but cool aspect of a VIM feature that
+Boy, I thought I knew almost everything about Vim, but every time I browse the
+online documentation, I hit upon a minor but cool aspect of a Vim feature that
 I didn't know before!  I must say the documentation is one the finest I've
 ever seen in a product -- even better than most commercial products.
 (Gautam Mudunuri)
 
-VIM 4.5 is really a fantastic editor.  It has sooooo many features and more
+Vim 4.5 is really a fantastic editor.  It has sooooo many features and more
 importantly, the defaults are so well thought out that you really don't have
 to change anything!!  Words cannot express my amazement and gratitude to the
-creators of VIM.  Keep it up.  (Vikas, USA)
+creators of Vim.  Keep it up.  (Vikas, USA)
 
 I wonder how long it will be before people will refer to other Vi editors as
-VIM clones?  (Darren Hiebert)
+Vim clones?  (Darren Hiebert)
 
 I read about [auto-positioning-in-file-based-on-the-errors-from-make] in one
 of those "Perfect Programmer's Editor" threads and was delighted to discover
-that VIM already supports it.  (Brendan Macmillan, Australia)
+that Vim already supports it.  (Brendan Macmillan, Australia)
 
-I just discovered VIM (5.0) and I'm telling everyone I know about it!
-I tell them VIM stands for VI for the new (M)illenium.  Thanks so much!
+I just discovered Vim (5.0) and I'm telling everyone I know about it!
+I tell them Vim stands for Vi for the new (M)illenium.  Thanks so much!
 (Matt F. Valentine)
 
 I think from now on "vi" should be called "Vim Imitation", not the other way
 around.  (Rungun Ramanathan)
 
-The Law of VIM:
+The Law of Vim:
 For each member b of the possible behaviour space B of program P, there exists
 a finite time t before which at least one user u in the total user space U of
 program P will request b becomes a member of the allowed behaviour space B'
@@ -118,42 +118,42 @@ In other words: Sooner or later everyone
 (Negri)
 
 Whenever I move to a new computing platform, the first thing I do is to port
-VIM.  Lately, I am simply stunned by its ease of compilation using the
+Vim.  Lately, I am simply stunned by its ease of compilation using the
 configure facility.  (A.M. Sabuncu, Turkey)
 
 The options are really excellent and very powerful.  (Anish Maharaj)
 
 The Spring user-interface designs are in, and word from the boutiques is that
-80x24 text-only mode is back with a *vengeance! Vi editor clone VIM burst onto
+80x24 text-only mode is back with a *vengeance! Vi editor clone Vim burst onto
 March desk-tops with a dazzling show of pastel syntax highlights for its 5.0
-look.  Strident and customizable, VIM raises eyebrows with its interpretation
+look.  Strident and customizable, Vim raises eyebrows with its interpretation
 of the classic Vi single-key macro collection.
 http://www.ntk.net/index.cgi?back=archive98/now0327.txt&line=179#l
 
-I just wanted to take this opportunity to let you know that VIM 5 ROCKS!
+I just wanted to take this opportunity to let you know that Vim 5 ROCKS!
 Syntax highlighting: how did I survive without it?!  Thank you for creating
 mankind's best editor!  (Mun Johl, USA)
 
-Thanks again for VIM.  I use it every day on Linux.  (Eric Foster-Johnson,
+Thanks again for Vim.  I use it every day on Linux.  (Eric Foster-Johnson,
 author of the book "UNIX Programming Tools")
 
 The BEST EDITOR EVER (Stuart Woolford)
 
-I have used most of VIM's fancy features at least once, many frequently, and I
+I have used most of Vim's fancy features at least once, many frequently, and I
 can honestly say that I couldn't live with anything less anymore.  My
 productivity has easily doubled compared to what it was when I used vi.
 (Sitaram Chamarty)
 
-I luv VIM.  It is incredible.  I'm naming my first-born Vimberly.  (Jose
+I luv Vim.  It is incredible.  I'm naming my first-born Vimberly.  (Jose
 Unpingco, USA)
 
-Hint:  "VIM" is "vi improved" - much better! (Sven Guckes, Germany)
+Hint:  "Vim" is "vi improved" - much better! (Sven Guckes, Germany)
 
-I use VIM every day.  I spend more time in VIM than in any other program...
+I use Vim every day.  I spend more time in Vim than in any other program...
 It's the best vi clone there is.  I think it's great.  (Craig Sanders,
 Australia)
 
-I strongly advise using VIM--its infinite undo/redo saved me much grief.
+I strongly advise using Vim--its infinite undo/redo saved me much grief.
 (Terry Brown)
 
 Thanks very much for writing what in my opinion is the finest text editor on
@@ -163,98 +163,98 @@ the planet.  If I were to get another ca
 I typed :set all and the screen FILLED up with options.  A whole screen of
 things to be set and unset.  I saw some of my old friends like wrapmargin,
 modelines and showmode, but the screen was FILLED with new friends!   I love
-them all!   I love VIM!   I'm so happy that I've found this editor!  I feel
+them all!   I love Vim!   I'm so happy that I've found this editor!  I feel
 like how I once felt when I started using vi after a couple of years of using
 ed.  I never thought I'd forsake my beloved ed, but vi ... oh god, vi was
-great.  And now, VIM.  (Peter Jay Salzman, USA)
+great.  And now, Vim.  (Peter Jay Salzman, USA)
 
 I am really happy with such a wonderful software package.  Much better than
 almost any expensive, off the shelf program.  (Jeff Walker)
 
-Whenever I reread the VIM documentation I'm overcome with excitement at the
+Whenever I reread the Vim documentation I'm overcome with excitement at the
 power of the editor.  (William Edward Webber, Australia)
 
-Hurrah for VIM!! It is "at your fingertips" like vi, and has the extensions
+Hurrah for Vim!! It is "at your fingertips" like vi, and has the extensions
 that vi sorely needs: highlighting for executing commands on blocks, an easily
 navigable and digestible help screen, and more.  (Paul Pax)
 
 The reason WHY I don't have this amazingly useful macro anymore, is that I
-now use VIM - and this is built in!! (Stephen Riehm, Germany)
+now use Vim - and this is built in!! (Stephen Riehm, Germany)
 
-I am a user of VIM and I love it.  I use it to do all my programming, C,
+I am a user of Vim and I love it.  I use it to do all my programming, C,
 C++, HTML what ever.  (Tim Allwine)
 
-I discovered VIM after years of struggling with the original vi, and I just
+I discovered Vim after years of struggling with the original vi, and I just
 can't live without it anymore.  (Emmanuel Mogenet, USA)
 
-Emacs has not a bit of chance to survive so long as VIM is around.  Besides,
+Emacs has not a bit of chance to survive so long as Vim is around.  Besides,
 it also has the most detailed software documentation I have ever seen---much
 better than most commercial software!  (Leiming Qian)
 
-This version of VIM will just blow people apart when they discover just how
+This version of Vim will just blow people apart when they discover just how
 fantastic it is! (Tony Nugent, Australia)
 
-I took your advice & finally got VIM & I'm really impressed.  Instant convert.
+I took your advice & finally got Vim & I'm really impressed.  Instant convert.
 (Patrick Killelea, USA)
 
-VIM is by far my favorite piece of shareware and I have been particularly
+Vim is by far my favorite piece of shareware and I have been particularly
 pleased with version 3.0.  This is really a solid piece of work.  (Robert
 Colon, USA)
 
-VIM is a joy to use, it is so well thought and practical that I wonder why
-anybody would use visual development tools.  VIM is powerful and elegant, it
+Vim is a joy to use, it is so well thought and practical that I wonder why
+anybody would use visual development tools.  Vim is powerful and elegant, it
 looks deceptively simple but is almost as complex as a 747 (especially when I
-look at my growing .vimrc), keep up that wonderful job, VIM is a centerpiece
+look at my growing .vimrc), keep up that wonderful job, Vim is a centerpiece
 of the free software world.  (Louis-David Mitterand, USA)
 
-I cannot believe how great it is to use VIM.  I think the guys at work are
+I cannot believe how great it is to use Vim.  I think the guys at work are
 getting tired of hearing me bragging about it.  Others eyes are lighting up.
 (Rick Croote)
 
 Emacs takes way too much time to start up and run, it is too big and bulky for
-effective use and the interface is more confusing than it is of any help.  VIM
+effective use and the interface is more confusing than it is of any help.  Vim
 however is short, it is fast, it is powerful, it has a good interface and it
 is all purpose.  (Paal Ditlefsen Ekran)
 
-From the first time I got VIM3.0, I was very enthusiastic.  It has almost no
+From the first time I got Vim3.0, I was very enthusiastic.  It has almost no
 problems.  The swapfile handling and the backup possibilities are robust, also
 the protection against editing one file twice.  It is very compatible to the
 real VI (and that is a MUST, because my brain is trained over years in using
 it).  (Gert van Antwerpen, Holland)
 
-Visual mode in VIM is a very powerful thing! (Tony Nugent, Australia)
+Visual mode in Vim is a very powerful thing! (Tony Nugent, Australia)
 
-I have to say that VIM is =THE= single greatest piece of source code to ever
+I have to say that Vim is =THE= single greatest piece of source code to ever
 come across the net (Jim Battle, USA).
 
-In fact, if you do want to get a new vi I'd suggest VIM-3.0.  This is, by
+In fact, if you do want to get a new vi I'd suggest Vim-3.0.  This is, by
 far, the best version of vi I've ever seen (Albert W. Schueller).
 
-I should mention that VIM is a very good editor and can compete with anything
+I should mention that Vim is a very good editor and can compete with anything
 (Ilya Beloozerov).
 
 To tell the truth sometimes I used elvis, vile, xvi, calvin, etc.  And this is
-the reason that I can state that VIM is the best! (Ferenc Deak, Hungary)
+the reason that I can state that Vim is the best! (Ferenc Deak, Hungary)
 
-VIM is by far the best editor that I have used in a long time, and I have
+Vim is by far the best editor that I have used in a long time, and I have
 looked at just about every thing that is available for every platform that I
-use.  VIM is the best on all of them.  (Guy L. Oliver)
+use.  Vim is the best on all of them.  (Guy L. Oliver)
 
-VIM is the greatest editor since the stone chisel.  (Jose Unpingco, USA)
+Vim is the greatest editor since the stone chisel.  (Jose Unpingco, USA)
 
-I would like to say that with VIM I am finally making the 'emacs to vi'
+I would like to say that with Vim I am finally making the 'emacs to vi'
 transition - as an Editor it is so much better in many ways: keyboard layout,
 memory usage, text alteration to name 3.  (Mark Adam)
 
 In fact, now if I want to know what a particular setting does in vi, I fire up
-VIM and check out its help!  (Nikhil Patel, USA)
+Vim and check out its help!  (Nikhil Patel, USA)
 
-As a vi user, VIM has made working with text a far more pleasant task than
+As a vi user, Vim has made working with text a far more pleasant task than
 before I encountered this program.  (Steinar Knutsen, Norway)
 
-I use VIM since version 3.0.  Since that time, it is the ONLY editor I use,
-with Solaris, Linux and OS/2 Warp.  I suggest all my friends to use VIM, they
-try, and they continue using it.  VIM is really the best software I have ever
+I use Vim since version 3.0.  Since that time, it is the ONLY editor I use,
+with Solaris, Linux and OS/2 Warp.  I suggest all my friends to use Vim, they
+try, and they continue using it.  Vim is really the best software I have ever
 downloaded from the Internet, and the best editor I know of.  (Marco
 Eccettuato, Italy)
 
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -478,7 +478,7 @@ Vim uses a binary file format for spelli
 the word list and keeps it small.
 						    *.aff* *.dic* *Myspell*
 You can create a Vim spell file from the .aff and .dic files that Myspell
-uses.  Myspell is used by OpenOffice.org and Mozilla. The OpenOffice .oxt 
+uses.  Myspell is used by OpenOffice.org and Mozilla. The OpenOffice .oxt
 files are zip files which contain the .aff and .dic files. You should be able
 to find them here:
 	http://extensions.services.openoffice.org/dictionary
@@ -1614,7 +1614,7 @@ COMPOUNDSYLLABLE  (Hunspell)			*spell-CO
 KEY		(Hunspell)				*spell-KEY*
 		Define characters that are close together on the keyboard.
 		Used to give better suggestions.  Not supported.
-		
+
 LANG		(Hunspell)				*spell-LANG*
 		This specifies language-specific behavior.  This actually
 		moves part of the language knowledge into the program,
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 8.0.  Last change: 2017 Feb 06
+*syntax.txt*	For Vim version 8.0.  Last change: 2017 Jun 04
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -4812,10 +4812,11 @@ ctermbg={color-nr}				*highlight-ctermbg
 	Example: >
 		:highlight Normal ctermfg=grey ctermbg=darkblue
 <	When setting the "ctermbg" color for the Normal group, the
-	'background' option will be adjusted automatically.  This causes the
-	highlight groups that depend on 'background' to change!  This means
-	you should set the colors for Normal first, before setting other
-	colors.
+	'background' option will be adjusted automatically, under the
+	condition that the color is recognized and 'background' was not set
+	explicitly.  This causes the highlight groups that depend on
+	'background' to change!  This means you should set the colors for
+	Normal first, before setting other colors.
 	When a colorscheme is being used, changing 'background' causes it to
 	be reloaded, which may reset all colors (including Normal).  First
 	delete the "g:colors_name" variable when you don't want this.
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2017 May 27
+*todo.txt*      For Vim version 8.0.  Last change: 2017 Jun 05
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -112,30 +112,19 @@ Regexp problems:
 With foldmethod=syntax and nofoldenable comment highlighting isn't removed.
 (Marcin Szewczyk, 2017 Apr 26)
 
-Patch for Murphy filetype detection. (Matthew Fernandez, 2017 May 17)
-
-ZoomWin plugin ratings went down a lot.  Bot problem? (Charles Campbell, 2017
-May 18)
+ml_get error when using a Python. (Yggdroot, 2017 Jun 1, #1737)
 
 ml_get errors with buggy script. (Dominique, 2017 Apr 30)
 
 Error in emsg with buggy script. (Dominique, 2017 Apr 30)
 
-Patch to update 'runtimepath' earlier. (Ingo Karkat, 2017 May 5, #1680)
-
-Patch to make float2nr() more accurate. (Hirohito Higashi, 2017 May 7, #1688)
-
-Patch to make :hardcopy handle spaces correctly. (Christian Brabandt, 2017 May
-7, #1682)
-
 Add options_default() / options_restore() to set several options to Vim
 defaults for a plugin. Comments from Zyx, 2017 May 10.
 Perhaps use a vimcontext / endvimcontext command block.
 
-Patch to recognize 'bg' detection. (Lemonboy, 2017 May 18, #1710)
-
-Patch to recognize 1.0 as a whole as a float. (Yasuhiro Matsumoto, 2017 May
-11)
+Using freed memory with "qf" FileType autocommand that does :cclose.
+(Lemonboy, 2017 May 28, #1730, fix in 1734, with test that doesn't fail, but
+it fails when run manually)  Add "starting" to test_override()?
 
 Problem with three-piece comment. (Michael Lee, 2017 May 11, #1696)
 
@@ -144,13 +133,6 @@ case of :bwipe followed by :new.
 
 Files for Latvian language. (Vitolins, 2017 May 3, #1675)
 
-Adding a filetype in a "start" package is not picked up as expected.
-(comment by Ingo Karkat, #1679)
-Patch for a fix, Ingo Karkat, #1693.
-
-Patch to fix character class detection in NFA engine.
-(James McCoy, 2017 May 12, update May 24, #1703)
-
 Setting 'clipboard' to "unnamed" makes a global command very slow (Daniel
 Drucker, 2017 May 8).
 This was supposed to be fixed, did it break again somehow?
@@ -160,13 +142,17 @@ Better TeX indent file. (Christian Braba
 
 Openhab syntax file (mueller, #1678)
 
-Followup patch for 8.0.0590 for "context" in locations. (Yegappan, 2017 May 4)
-
 Use gvimext.dll from the nightly build? (Issue #249)
 
 Patch to remove HAVE_GTK_MULTIHEAD-relevant code. (Kazunobu Kuriyama, 2017 May
 5) Update May 11
 
+'synmaxcol' works with bytes instead of screen cells. (Llandon, 2017 May 31,
+#1736)
+
+Patch to pass quickfix list index to functions. (Yegappan Lakshmanan, 2017 May
+31)
+
 Problem with using :cd when remotely editing a file. (Gerd Wachsmuth, 2017 May
 8, #1690)
 
@@ -184,6 +170,8 @@ Bogus characters inserted when triggerin
 
 Patch to have ":stag" respect 'switchbuf'. (Ingo Karkat, 2017 May 5, #1681)
 
+Patch to improve building with MSVC. (Leonardo Manera, #1747)
+
 Wrong selection of quoted text (Guraga, #1687)
 Patch to fix selection of quoted text. (Christian Brabandt, 2017 May 7, #1687)
 
@@ -199,8 +187,9 @@ Is it possible to keep the complete menu
 
 Calling may_req_ambiguous_char_width() and may_req_bg_color() only after
 executing command line commands may not work properly.
+(Rastislav Barlink, 2017 May 18)
 Set "starting" to 0 earlier, and move the may_req calls above exe_commands()?
-(Rastislav Barlink, 2017 May 18)
+No, that's a problem with using "-c quit", not running Vim interactive.
 
 Memory leak in test97?  The string is actually freed.  Weird.
 
@@ -219,6 +208,9 @@ Even better: add a way to disable a mapp
 later.  This is for a sub-mode that is active for a short while (one buffer).
 Still need maplist() to find the mappings.  What can we use to identify a
 mapping?  Something unique would be better than the LHS.
+Perhaps simpler: actually delete the mappings.  Use maplist() to list matching
+mappings (with a lhs prefix, like maparg()), mapdelete() to delete,
+maprestore() to restore (using the output of maplist().
 
 Patch to support chinese wordcount in utf-8. (Rain, 2017 May 24, #1722)
 Or not?
@@ -232,6 +224,10 @@ Wrong memory access using p_fdm, found i
 Patch to improve test coverage for diff mode. (Dominique Pelle, 2017 May 11,
 #1685)
 
+Add an argument to :mkvimrc (or add aother command) to skip mappings from
+plugins (source is a Vim script).  No need to put these in a .vimrc, they will
+be defined when the plugin is loaded.
+
 Use tb_set(winid, [{'text': 'stop', 'cb': callback, 'hi': 'Green'}])
     tb_highlight(winid, 'ToolBar')
     tb_get(winid)
@@ -265,6 +261,10 @@ Error in test_startup_utf8 on Solaris. (
 
 Completion for :!cmd shows each match twice. #1435
 
+Patch to change GUI behavior: instead of changing the window size change the
+lines/columns when menu/toolbar/etc. is added/removed. (Ychin, 2016 Mar 20,
+#703)
+
 GTK: When adding a timer from 'balloonexpr' it won't fire, because
 g_main_context_iteration() doesn't return.  Need to trigger an event when the
 timer expires.
@@ -598,10 +598,6 @@ When command names are very long :comman
 maximum for the column width?  (#871)
 Patcy by varmanishant, 2016 Jun 18, #876
 
-Patch to change GUI behavior: instead of changing the window size change the
-lines/columns when menu/toolbar/etc. is added/removed. (Ychin, 2016 Mar 20,
-#703)
-
 Installation of .desktop files does not work everywhere.
 It's now fixed, but the target directory probably isn't right.
 Add configure check?
@@ -720,7 +716,8 @@ Value of virtcol() for '[ and '] depend 
 (Luchr, #277)
 
 Can we cache the syntax attributes, so that updates for 'relativenumber' and
-'cursorline'/'cursorcolumn' are a lot faster?
+'cursorline'/'cursorcolumn' are a lot faster?  Thus store the attributes
+before combining them.
 
 C highlighting: modern C allows: /* comment */ #ifdef
 and also line continuation after #include.
--- a/runtime/doc/usr_09.txt
+++ b/runtime/doc/usr_09.txt
@@ -191,7 +191,7 @@ mouse button.  The selected text will be
 The "current selection" will only remain valid until some other text is
 selected.  After doing the paste in the other gVim, now select some characters
 in that window.  You will notice that the words that were previously selected
-in the other gVim window are displayed differently.  This means that it no
+in the other gvim window are displayed differently.  This means that it no
 longer is the current selection.
 
 You don't need to select text with the mouse, using the keyboard commands for
@@ -215,7 +215,7 @@ USING BOTH
 
 This use of both the "current selection" and the "real clipboard" might sound
 a bit confusing.  But it is very useful.  Let's show this with an example.
-Use one gVim with a text file and perform these actions:
+Use one gvim with a text file and perform these actions:
 
 -  Select two words in Visual mode.
 -  Use the Edit/Copy menu to get these words onto the clipboard.
--- a/runtime/doc/version6.txt
+++ b/runtime/doc/version6.txt
@@ -9250,7 +9250,7 @@ Files:	    runtime/doc/various.txt, src/
 	    src/proto/quickfix.pro, src/quickfix.c
 
 Patch 6.1.424 (extra)
-Problem:    Win32: Gvim compiled with VC++ 7.0 run on Windows 95 does not show
+Problem:    Win32: gvim compiled with VC++ 7.0 run on Windows 95 does not show
 	    menu items.
 Solution:   Define $WINVER to avoid an extra item is added to MENUITEMINFO.
 	    (Muraoka Taro)
@@ -12319,7 +12319,7 @@ Solution:   Don't ignore the WM_SYSKEYUP
 Files:	    src/gui_w32.c
 
 Patch 6.2.362 (extra, after 6.2.347)
-Problem:    Win32: The manifest causes Gvim not to work. (Dave Roberts)
+Problem:    Win32: The manifest causes gvim not to work. (Dave Roberts)
 Solution:   Change "x86" to "X86". (Serge Pirotte)
 Files:	    src/gvim.exe.mnf
 
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -4151,7 +4151,7 @@ Patch 7.0.173
 Problem:    ":call f().TT()" doesn't work.  (Richard Emberson)
 Solution:   When a function returns a Dictionary or another composite continue
 	    evaluating what follows.
-Files:	    src/eval.c    
+Files:	    src/eval.c
 
 Patch 7.0.174
 Problem:    ":mksession" doesn't restore window layout correctly in tab pages
@@ -4265,7 +4265,7 @@ Problem:    When 'swapfile' is switched 
 	    that not all blocks are loaded into memory, causing ml_get errors
 	    later.
 Solution:   Rename "dont_release" to "mf_dont_release" and also use it to
-	    avoid using the cached line and locked block. 
+	    avoid using the cached line and locked block.
 Files:	    src/globals.h, src/memfile.c, src/memline.c
 
 Patch 7.0.193
@@ -6031,7 +6031,7 @@ Solution:   Add type casts. (Ben Schmidt
 Files:	    src/version.c
 
 Patch 7.1.207
-Problem:    Netbeans: "remove" cannot delete one line. 
+Problem:    Netbeans: "remove" cannot delete one line.
 Solution:   Remove partial lines and whole lines properly.  Avoid a memory
 	    leak.  (Xavier de Gaye)
 Files:	    src/netbeans.c
@@ -7991,7 +7991,7 @@ Files:	    src/ex_cmds.c
 
 Patch 7.2.097
 Problem:    "!xterm&" doesn't work when 'shell' is "bash".
-Solution:   Ignore SIGHUP after calling setsid(). (Simon Schubert) 
+Solution:   Ignore SIGHUP after calling setsid(). (Simon Schubert)
 Files:	    src/os_unix.c
 
 Patch 7.2.098
@@ -8740,7 +8740,7 @@ Files:	    src/gui_gtk_x11.c, src/messag
 	    src/ui.c
 
 Patch 7.2.222
-Problem:   ":mksession" doesn't work properly with 'acd' set. 
+Problem:   ":mksession" doesn't work properly with 'acd' set.
 Solution:   Make it work. (Yakov Lerner)
 Files:	    src/ex_docmd.c
 
@@ -9150,7 +9150,7 @@ Solution:   Add the missing "else". (Lec
 Files:	    src/ops.c
 
 Patch 7.2.293
-Problem:    When setting 'comments' option it may be used in a wrong way. 
+Problem:    When setting 'comments' option it may be used in a wrong way.
 Solution:   Don't increment after skipping over digits. (Yukihiro Nakadaira)
 Files:	    src/misc1.c
 
@@ -10191,32 +10191,32 @@ More information here: |two-engines|
 Better Python interface				*better-python-interface*
 -----------------------
 
-Added |python-bindeval| function. Unlike |python-eval| this one returns 
-|python-Dictionary|, |python-List| and |python-Function| objects for 
-dictionaries lists and functions respectively in place of their Python 
+Added |python-bindeval| function. Unlike |python-eval| this one returns
+|python-Dictionary|, |python-List| and |python-Function| objects for
+dictionaries lists and functions respectively in place of their Python
 built-in equivalents (or None if we are talking about function references).
-   For simple types this function returns Python built-in types and not only 
-Python `str()` like |python-eval| does. On Python 3 it will return `bytes()` 
+   For simple types this function returns Python built-in types and not only
+Python `str()` like |python-eval| does. On Python 3 it will return `bytes()`
 objects in place of `str()` ones avoiding possibility of UnicodeDecodeError.
    Interface of new objects mimics standard Python `dict()` and `list()`
 interfaces to some extent. Extent will be improved in the future.
 
-Added special |python-vars| objects also available for |python-buffer| and 
+Added special |python-vars| objects also available for |python-buffer| and
 |python-window|. They ease access to Vim script variables from Python.
 
-Now you no longer need to alter `sys.path` to import your module: special 
-hooks are responsible for importing from {rtp}/python2, {rtp}/python3 and 
-{rtp}/pythonx directories (for Python 2, Python 3 and both respectively). 
+Now you no longer need to alter `sys.path` to import your module: special
+hooks are responsible for importing from {rtp}/python2, {rtp}/python3 and
+{rtp}/pythonx directories (for Python 2, Python 3 and both respectively).
 See |python-special-path|.
 
 Added possibility to work with |tabpage|s through |python-tabpage| object.
 
-Added automatic conversion of Vim errors and exceptions to Python 
+Added automatic conversion of Vim errors and exceptions to Python
 exceptions.
 
-Changed the behavior of the |python-buffers| object: it now uses buffer numbers 
-as keys in place of the index of the buffer in the internal buffer list. 
-This should not break anything as the only way to get this index was 
+Changed the behavior of the |python-buffers| object: it now uses buffer numbers
+as keys in place of the index of the buffer in the internal buffer list.
+This should not break anything as the only way to get this index was
 iterating over |python-buffers|.
 
 Added |:pydo| and |:py3do| commands.
@@ -10226,7 +10226,7 @@ Added the |pyeval()| and |py3eval()| fun
 Now in all places which previously accepted `str()` objects, `str()` and
 `unicode()` (Python 2) or `bytes()` and `str()` (Python 3) are accepted.
 
-|python-window| has gained `.col` and `.row` attributes that are currently 
+|python-window| has gained `.col` and `.row` attributes that are currently
 the only way to get internal window positions.
 
 Added or fixed support for `dir()` in Vim Python objects.
@@ -10235,12 +10235,12 @@ Added or fixed support for `dir()` in Vi
 Changed							*changed-7.4*
 -------
 
-Old Python versions (≤2.2) are no longer supported. Building with them did 
+Old Python versions (≤2.2) are no longer supported. Building with them did
 not work anyway.
 
 Options:
-	Added ability to automatically save the selection into the system 
-	clipboard when using non-GUI version of Vim (autoselectplus in 
+	Added ability to automatically save the selection into the system
+	clipboard when using non-GUI version of Vim (autoselectplus in
 	'clipboard'). Also added ability to use the system clipboard as
 	default register (previously only primary selection could be used).
 	(Ivan Krasilnikov, Christian Brabandt, Bram Moolenaar)
@@ -10255,12 +10255,12 @@ Options:
 	'relativenumber'.  (Christian Brabandt)
 
 Commands:
-	|:diffoff| now saves the local values of some settings and restores 
-	them in place of blindly resetting them to the defaults. (Christian 
+	|:diffoff| now saves the local values of some settings and restores
+	them in place of blindly resetting them to the defaults. (Christian
 	Brabandt)
 
 Other:
-	Lua interface now also uses userdata binded to Vim structures. (Taro 
+	Lua interface now also uses userdata binded to Vim structures. (Taro
 	Muraoka, Luis Carvalho)
 
 	glob() and autocommand patterns used to work with the undocumented
@@ -10285,74 +10285,74 @@ Functions:
 
 	Added |wildmenumode()| function. (Christian Brabandt)
 
-	Debugging functions: |screenattr()|, |screenchar()|, |screencol()|, 
+	Debugging functions: |screenattr()|, |screenchar()|, |screencol()|,
 	|screenrow()|. (Simon Ruderich, Bram Moolenaar)
 
-	Added ability to use |Dictionary-function|s for |sort()|ing, via 
+	Added ability to use |Dictionary-function|s for |sort()|ing, via
 	optional third argument. (Nikolay Pavlov)
 
-	Added special |expand()| argument that expands to the current line 
+	Added special |expand()| argument that expands to the current line
 	number.
 
-	Made it possible to force |char2nr()| to always give unicode codepoints 
+	Made it possible to force |char2nr()| to always give unicode codepoints
 	regardless of current encoding. (Yasuhiro Matsumoto)
 
-	Made it possible for functions generating file list generate |List| 
-	and not NL-separated string. (e.g. |glob()|, |expand()|) (Christian 
+	Made it possible for functions generating file list generate |List|
+	and not NL-separated string. (e.g. |glob()|, |expand()|) (Christian
 	Brabandt)
 
-	Functions that obtain variables from the specific window, tabpage or 
-	buffer scope dictionary can now return specified default value in 
-	place of empty string in case variable is not found. (|gettabvar()|, 
+	Functions that obtain variables from the specific window, tabpage or
+	buffer scope dictionary can now return specified default value in
+	place of empty string in case variable is not found. (|gettabvar()|,
 	|getwinvar()|, |getbufvar()|) (Shougo Matsushita, Hirohito Higashi)
 
 Autocommands:
-	Added |InsertCharPre| event launched before inserting character. 
+	Added |InsertCharPre| event launched before inserting character.
 	(Jakson A. Aquino)
 
-	Added |CompleteDone| event launched after finishing completion in 
+	Added |CompleteDone| event launched after finishing completion in
 	insert mode. (idea by Florian Klein)
 
-	Added |QuitPre| event launched when commands that can either close Vim 
+	Added |QuitPre| event launched when commands that can either close Vim
 	or only some window(s) are launched.
 
-	Added |TextChanged| and |TextChangedI| events launched when text is 
+	Added |TextChanged| and |TextChangedI| events launched when text is
 	changed.
 
 Commands:
 	|:syntime| command useful for debugging.
 
-	Made it possible to remove all signs from the current buffer using 
+	Made it possible to remove all signs from the current buffer using
 	|:sign-unplace|. (Christian Brabandt)
 
 	Added |:language| autocompletion. (Dominique Pelle)
 
-	Added more |:command-complete| completion types: |:behave| suboptions, 
-	color schemes, compilers, |:cscope| suboptions, files from 'path', 
-	|:history| suboptions, locale names, |:syntime| suboptions, user 
+	Added more |:command-complete| completion types: |:behave| suboptions,
+	color schemes, compilers, |:cscope| suboptions, files from 'path',
+	|:history| suboptions, locale names, |:syntime| suboptions, user
 	names. (Dominique Pelle)
 
-	Added |:map-nowait| creating mapping which when having lhs that is the 
-	prefix of another mapping’s lhs will not allow Vim to wait for user to 
-	type more characters to resolve ambiguity, forcing Vim to take the 
+	Added |:map-nowait| creating mapping which when having lhs that is the
+	prefix of another mapping’s lhs will not allow Vim to wait for user to
+	type more characters to resolve ambiguity, forcing Vim to take the
 	shorter alternative: one with <nowait>.
 
 Options:
 	Made it possible to ignore case when completing: 'wildignorecase'.
 
-	Added ability to delete comment leader when using |J| by `j` flag in 
+	Added ability to delete comment leader when using |J| by `j` flag in
 	'formatoptions' (|fo-table|). (Lech Lorens)
 
-	Added ability to control indentation inside namespaces: |cino-N|. 
+	Added ability to control indentation inside namespaces: |cino-N|.
 	(Konstantin Lepa)
 
-	Added ability to control alignment inside `if` condition separately 
+	Added ability to control alignment inside `if` condition separately
 	from alignment inside function arguments: |cino-k|. (Lech Lorens)
 
 Other:
 	Improved support for cmd.exe. (Ben Fritz, Bram Moolenaar)
 
-	Added |v:windowid| variable containing current window number in GUI 
+	Added |v:windowid| variable containing current window number in GUI
 	Vim. (Christian J. Robinson, Lech Lorens)
 
 	Added rxvt-unicode and SGR mouse support. (Yiding Jia, Hayaki Saito)
@@ -11923,7 +11923,7 @@ Solution:   Pass the separator character
 Files:	    src/ex_getln.c
 
 Patch 7.3.266
-Problem:    In Gvim with iBus typing space in Insert mode doesn't work.
+Problem:    In gvim with iBus typing space in Insert mode doesn't work.
 Solution:   Clear xim_expected_char after checking it.
 Files:	    src/mbyte.c
 
@@ -11938,7 +11938,7 @@ Solution:   Use O_NOCTTY both in the mas
 Files:	    src/os_unix.c
 
 Patch 7.3.269
-Problem:    'shellcmdflag' only works with one flag. 
+Problem:    'shellcmdflag' only works with one flag.
 Solution:   Split into multiple arguments. (Gary Johnson)
 Files:	    src/os_unix.c
 
@@ -13118,7 +13118,7 @@ Files:	    src/ops.c
 Patch 7.3.477
 Problem:    Using ":echo" to output enough lines to scroll, then using "j" and
 	    "k" at the more prompt, displays the command on top of the output.
-	    (Marcin Szamotulski) 
+	    (Marcin Szamotulski)
 Solution:   Put the output below the command. (Christian Brabandt)
 Files:	    src/eval.c
 
@@ -13371,7 +13371,7 @@ Solution:   Recognize completefunction r
 Files:	    src/edit.c
 
 Patch 7.3.520
-Problem:    Gvim starts up slow on Ubuntu 12.04.
+Problem:    gvim starts up slow on Ubuntu 12.04.
 Solution:   Move the call to gui_mch_init_check() to after fork(). (Yasuhiro
 	    Matsumoto)  Do check $DISPLAY being set.
 Files:	    src/gui.c, src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro
@@ -13424,7 +13424,7 @@ Solution:   Make the count select that m
 Files:	    src/normal.c
 
 Patch 7.3.530 (after 7.3.520)
-Problem:    Gvim does not work when 'guioptions' includes "f". (Davido)
+Problem:    gvim does not work when 'guioptions' includes "f". (Davido)
 Solution:   Call gui_mch_init_check() when running GUI in the foreground.
 	    (Yasuhiro Matsumoto)
 Files:	    src/gui.c
@@ -14287,7 +14287,7 @@ Files:	    Filelist
 Patch 7.3.682 (after 7.3.677)
 Problem:    Compiler complains about incompatible types.
 Solution:   Remove type casts. (hint by Danek Duvall)
-Files:	    src/edit.c 
+Files:	    src/edit.c
 
 Patch 7.3.683
 Problem:    ":python" may crash when vimbindeval() returns None.
@@ -16340,7 +16340,7 @@ Solution:   Avoid negative argument to v
 Files:	    src/if_cscope.c
 
 Patch 7.3.1039
-Problem:    New regexp engine does not support \%23c, \%<23c and the like. 
+Problem:    New regexp engine does not support \%23c, \%<23c and the like.
 Solution:   Implement them. (partly by Yasuhiro Matsumoto)
 Files:	    src/regexp.h, src/regexp_nfa.c, src/testdir/test64.in,
 	    src/testdir/test64.ok
@@ -17552,9 +17552,9 @@ Solution:   Specify a separate viminfo f
 Files:	    src/testdir/test61.in
 
 Patch 7.3.1252
-Problem:    Gvim does not find the toolbar bitmap files in ~/vimfiles/bitmaps
+Problem:    gvim does not find the toolbar bitmap files in ~/vimfiles/bitmaps
 	    if the corresponding menu command contains additional characters
-	    like the shortcut marker '&' or if you use a non-english locale.  
+	    like the shortcut marker '&' or if you use a non-english locale.
 Solution:   Use menu->en_dname or menu->dname. (Martin Gieseking)
 Files:	    src/gui_w32.c
 
@@ -18175,7 +18175,7 @@ Files:	    src/window.c
 
 Patch 7.4a.045
 Problem:    Configure does not always find the right library for Lua.  Missing
-	    support for LuaJit. 
+	    support for LuaJit.
 Solution:   Improve the configure detection of Lua. (Hiroshi Shirosaki)
 Files:	    src/Makefile, src/configure.in, src/auto/configure
 
--- a/runtime/syntax/cpp.vim
+++ b/runtime/syntax/cpp.vim
@@ -2,7 +2,7 @@
 " Language:	C++
 " Current Maintainer:	vim-jp (https://github.com/vim-jp/vim-cpp)
 " Previous Maintainer:	Ken Shan <ccshan@post.harvard.edu>
-" Last Change:	2016 Oct 28
+" Last Change:	2017 Jun 05
 
 " quit when a syntax file was already loaded
 if exists("b:current_syntax")
@@ -48,7 +48,7 @@ endif
 if !exists("cpp_no_cpp14")
   syn case ignore
   syn match cppNumber		display "\<0b[01]\('\=[01]\+\)*\(u\=l\{0,2}\|ll\=u\)\>"
-  syn match cppNumber		display "\<[1-9]\('\=\d\+\)*\(u\=l\{0,2}\|ll\=u\)\>"
+  syn match cppNumber		display "\<[1-9]\('\=\d\+\)*\(u\=l\{0,2}\|ll\=u\)\>" contains=cFloat
   syn match cppNumber		display "\<0x\x\('\=\x\+\)*\(u\=l\{0,2}\|ll\=u\)\>"
   syn case match
 endif
--- a/runtime/syntax/haskell.vim
+++ b/runtime/syntax/haskell.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:		Haskell
 " Maintainer:		Haskell Cafe mailinglist <haskell-cafe@haskell.org>
-" Last Change:		2008 Dec 15
+" Last Change:		2017 Jun 04
 " Original Author:	John Williams <jrw@pobox.com>
 "
 " Thanks to Ryan Crumley for suggestions and John Meacham for
@@ -62,7 +62,7 @@ syn match   hsCharacter		"^'\([^\\]\|\\[
 syn match   hsNumber		"\<[0-9]\+\>\|\<0[xX][0-9a-fA-F]\+\>\|\<0[oO][0-7]\+\>"
 syn match   hsFloat		"\<[0-9]\+\.[0-9]\+\([eE][-+]\=[0-9]\+\)\=\>"
 
-" Keyword definitions. These must be patters instead of keywords
+" Keyword definitions. These must be patterns instead of keywords
 " because otherwise they would match as keywords at the start of a
 " "literate" comment (see lhs.vim).
 syn match hsModule		"\<module\>"
--- a/src/po/it.po
+++ b/src/po/it.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: vim 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-07-16 16:34+0200\n"
-"PO-Revision-Date:  2016-07-16 16:50+0200\n"
+"POT-Creation-Date: 2017-05-28 10:54+0200\n"
+"PO-Revision-Date:  2017-05-28 23:45+0200\n"
 "Last-Translator:   Antonio Colombo   <azc100@gmail.com>\n"
 "Language-Team:     Antonio Colombo   <azc100@gmail.com>\n"
 "Language: Italian\n"
@@ -57,6 +57,9 @@ msgstr "E83: Non riesco ad allocare un b
 msgid "E931: Buffer cannot be registered"
 msgstr "E931: Non riesco a registrare il buffer"
 
+msgid "E937: Attempt to delete a buffer that is in use"
+msgstr "E937: Tentativo di eliminare un buffer ancora usato"
+
 msgid "E515: No buffers were unloaded"
 msgstr "E515: Nessun buffer scaricato"
 
@@ -210,6 +213,31 @@ msgstr "    riga=%ld id=%d, nome=%s"
 msgid "E902: Cannot connect to port"
 msgstr "E902: Non posso commettermi alla porta"
 
+msgid "E901: gethostbyname() in channel_open()"
+msgstr "E901: gethostbyname() in channel_open()"
+
+msgid "E898: socket() in channel_open()"
+msgstr "E898: socket() in channel_open()"
+
+msgid "E903: received command with non-string argument"
+msgstr "E903: il comando ricevuto non aveva come argomento una stringa"
+
+msgid "E904: last argument for expr/call must be a number"
+msgstr "E904: l'ultimo argomento per espressione/chiamata dev'essere numerico"
+
+msgid "E904: third argument for call must be a list"
+msgstr "E904: il terzo argomento della chiamata dev'essere una Lista"
+
+msgid "E905: received unknown command: %s"
+msgstr "E905: recevuto comando non conosciuto: %s"
+
+#, c-format
+msgid "E630: %s(): write while not connected"
+msgstr "E630: %s(): scrittura in mancanza di connessione"
+
+msgid "E631: %s(): write failed"
+msgstr "E631: %s(): scrittura non riuscita"
+
 #, c-format
 msgid "E917: Cannot use a callback with %s()"
 msgstr "E917: Non posso usare callback con %s()"
@@ -249,7 +277,29 @@ msgid "[crypted]"
 msgstr "[cifrato]"
 
 #, c-format
-msgid "E96: Can not diff more than %ld buffers"
+msgid "E720: Missing colon in Dictionary: %s"
+msgstr "E720: Manca ':' nel Dizionario: %s"
+
+#, c-format
+msgid "E721: Duplicate key in Dictionary: \"%s\""
+msgstr "E721: Chiave duplicata nel Dizionario: \"%s\""
+
+#, c-format
+msgid "E722: Missing comma in Dictionary: %s"
+msgstr "E722: Manca virgola nel Dizionario: %s"
+
+#, c-format
+msgid "E723: Missing end of Dictionary '}': %s"
+msgstr "E723: Manca '}' a fine Dizionario: %s"
+
+msgid "extend() argument"
+msgstr "argomento di extend()"
+
+#, c-format
+msgid "E737: Key already exists: %s"
+msgstr "E737: Chiave già esistente: %s"
+
+msgid "E96: Cannot diff more than %ld buffers"
 msgstr "E96: Non supporto differenze fra più di %ld buffer"
 
 msgid "E810: Cannot read or write temp files"
@@ -377,6 +427,9 @@ msgstr "Scansione: %s"
 msgid "Scanning tags."
 msgstr "Scansione tag."
 
+msgid "match in file"
+msgstr "corrispondenza nel file"
+
 msgid " Adding"
 msgstr " Aggiungo"
 
@@ -404,55 +457,17 @@ msgstr "corrispondenza %d di %d"
 msgid "match %d"
 msgstr "corrispondenza %d"
 
+#. maximum nesting of lists and dicts
 msgid "E18: Unexpected characters in :let"
 msgstr "E18: Caratteri non previsti in :let"
 
 #, c-format
-msgid "E684: list index out of range: %ld"
-msgstr "E684: indice lista fuori intervallo: %ld"
-
-#, c-format
 msgid "E121: Undefined variable: %s"
 msgstr "E121: Variabile non definita: %s"
 
 msgid "E111: Missing ']'"
 msgstr "E111: Manca ']'"
 
-#, c-format
-msgid "E686: Argument of %s must be a List"
-msgstr "E686: L'argomento di %s deve essere una Lista"
-
-#, c-format
-msgid "E712: Argument of %s must be a List or Dictionary"
-msgstr "E712: L'argomento di %s deve essere una Lista o un Dizionario"
-
-msgid "E714: List required"
-msgstr "E714: È necessaria una Lista"
-
-msgid "E715: Dictionary required"
-msgstr "E715: È necessario un Dizionario"
-
-msgid "E928: String required"
-msgstr "E928: Stringa necessaria"
-
-#, c-format
-msgid "E118: Too many arguments for function: %s"
-msgstr "E118: Troppi argomenti per la funzione: %s"
-
-#, c-format
-msgid "E716: Key not present in Dictionary: %s"
-msgstr "E716: Chiave assente dal Dizionario: %s"
-
-#, c-format
-msgid "E122: Function %s already exists, add ! to replace it"
-msgstr "E122: La funzione %s esiste già, aggiungi ! per sostituirla"
-
-msgid "E717: Dictionary entry already exists"
-msgstr "E717: C'è già la voce nel Dizionario"
-
-msgid "E718: Funcref required"
-msgstr "E718: Funcref necessario"
-
 msgid "E719: Cannot use [:] with a Dictionary"
 msgstr "E719: Non posso usare [:] con un Dizionario"
 
@@ -461,10 +476,6 @@ msgid "E734: Wrong variable type for %s=
 msgstr "E734: Tipo di variabile errato per %s="
 
 #, c-format
-msgid "E130: Unknown function: %s"
-msgstr "E130: Funzione sconosciuta: %s"
-
-#, c-format
 msgid "E461: Illegal variable name: %s"
 msgstr "E461: Nome di variabile non ammesso: %s"
 
@@ -504,13 +515,14 @@ msgid "E690: Missing \"in\" after :for"
 msgstr "E690: Manca \"in\" dopo :for"
 
 #, c-format
-msgid "E107: Missing parentheses: %s"
-msgstr "E107: Mancano parentesi: %s"
-
-#, c-format
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: Variabile inesistente: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: Non riesco a bloccare o sbloccare la variabile %s"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: variabile troppo nidificata per lock/unlock"
 
@@ -560,194 +572,12 @@ msgstr "E114: Manca '\"': %s"
 msgid "E115: Missing quote: %s"
 msgstr "E115: Manca apostrofo: %s"
 
-#, c-format
-msgid "E696: Missing comma in List: %s"
-msgstr "E696: Manca virgola nella Lista: %s"
-
-#, c-format
-msgid "E697: Missing end of List ']': %s"
-msgstr "E697: Manca ']' a fine Lista: %s"
-
 msgid "Not enough memory to set references, garbage collection aborted!"
 msgstr "Memoria insufficiente per impostarlo, recupero memoria fallito!"
 
-#, c-format
-msgid "E720: Missing colon in Dictionary: %s"
-msgstr "E720: Manca ':' nel Dizionario: %s"
-
-#, c-format
-msgid "E721: Duplicate key in Dictionary: \"%s\""
-msgstr "E721: Chiave duplicata nel Dizionario: \"%s\""
-
-#, c-format
-msgid "E722: Missing comma in Dictionary: %s"
-msgstr "E722: Manca virgola nel Dizionario: %s"
-
-#, c-format
-msgid "E723: Missing end of Dictionary '}': %s"
-msgstr "E723: Manca '}' a fine Dizionario: %s"
-
-#, c-format
-msgid "E125: Illegal argument: %s"
-msgstr "E125: Argomento non ammesso: %s"
-
-#, c-format
-msgid "E853: Duplicate argument name: %s"
-msgstr "E853: Nome argomento duplicato: %s"
-
 msgid "E724: variable nested too deep for displaying"
 msgstr "E724: variabile troppo nidificata per la visualizzazione"
 
-#, c-format
-msgid "E740: Too many arguments for function %s"
-msgstr "E740: Troppi argomenti per la funzione: %s"
-
-#, c-format
-msgid "E116: Invalid arguments for function %s"
-msgstr "E116: Argomenti non validi per la funzione: %s"
-
-#, c-format
-msgid "E117: Unknown function: %s"
-msgstr "E117: Funzione sconosciuta: %s"
-
-#, c-format
-msgid "E119: Not enough arguments for function: %s"
-msgstr "E119: La funzione: %s richiede più argomenti"
-
-#, c-format
-msgid "E120: Using <SID> not in a script context: %s"
-msgstr "E120: Uso di <SID> fuori dal contesto di uno script: %s"
-
-#, c-format
-msgid "E725: Calling dict function without Dictionary: %s"
-msgstr "E725: Chiamata di funzione dict in assenza di Dizionario: %s"
-
-msgid "E808: Number or Float required"
-msgstr "E808: Ci vuole un Numero o un Numero-a-virgola-mobile"
-
-msgid "add() argument"
-msgstr "argomento di add()"
-
-msgid "E699: Too many arguments"
-msgstr "E699: Troppi argomenti"
-
-msgid "E785: complete() can only be used in Insert mode"
-msgstr "E785: complete() può essere usata solo in modalità inserimento"
-
-#.
-#. * Yes this is ugly, I don't particularly like it either.  But doing it
-#. * this way has the compelling advantage that translations need not to
-#. * be touched at all.  See below what 'ok' and 'ync' are used for.
-#.
-msgid "&Ok"
-msgstr "&OK"
-
-msgid "extend() argument"
-msgstr "argomento di extend()"
-
-#, c-format
-msgid "E737: Key already exists: %s"
-msgstr "E737: Chiave già esistente: %s"
-
-msgid "map() argument"
-msgstr "argomento di map()"
-
-msgid "filter() argument"
-msgstr "argomento di filter()"
-
-#, c-format
-msgid "+-%s%3ld lines: "
-msgstr "+-%s%3ld righe: "
-
-#, c-format
-msgid "E700: Unknown function: %s"
-msgstr "E700: Funzione sconosciuta: %s"
-
-msgid "E922: expected a dict"
-msgstr "E922: aspettavo un Dizionario"
-
-msgid "E923: Second argument of function() must be a list or a dict"
-msgstr ""
-"E923: Il secondo argomento di function() dev'essere una Lista o un Dizionario"
-
-msgid ""
-"&OK\n"
-"&Cancel"
-msgstr ""
-"&OK\n"
-"&Non eseguire"
-
-msgid "called inputrestore() more often than inputsave()"
-msgstr "inputrestore() chiamata più volte di inputsave()"
-
-msgid "insert() argument"
-msgstr "argomento di insert()"
-
-msgid "E786: Range not allowed"
-msgstr "E786: Intervallo non consentito"
-
-msgid "E916: not a valid job"
-msgstr "E916: job non valido"
-
-msgid "E701: Invalid type for len()"
-msgstr "E701: Tipo non valido per len()"
-
-msgid "E726: Stride is zero"
-msgstr "E726: Incremento indice a zero"
-
-msgid "E727: Start past end"
-msgstr "E727: Indice iniziale superiore a quello finale"
-
-msgid "<empty>"
-msgstr "<vuoto>"
-
-msgid "E240: No connection to Vim server"
-msgstr "E240: Manca connessione con server Vim"
-
-#, c-format
-msgid "E241: Unable to send to %s"
-msgstr "E241: Impossibile inviare a %s"
-
-msgid "E277: Unable to read a server reply"
-msgstr "E277: Non riesco a leggere una risposta del server"
-
-msgid "remove() argument"
-msgstr "argomento di remove()"
-
-msgid "E655: Too many symbolic links (cycle?)"
-msgstr "E655: Troppi link simbolici (circolarità?)"
-
-msgid "reverse() argument"
-msgstr "argomento di reverse()"
-
-msgid "E258: Unable to send to client"
-msgstr "E258: Impossibile inviare al client"
-
-#, c-format
-msgid "E927: Invalid action: '%s'"
-msgstr "E927: Azione non valida: '%s'"
-
-msgid "sort() argument"
-msgstr "argomento di sort()"
-
-msgid "uniq() argument"
-msgstr "argomento di uniq()"
-
-msgid "E702: Sort compare function failed"
-msgstr "E702: Funzione confronto nel sort non riuscita"
-
-msgid "E882: Uniq compare function failed"
-msgstr "E882: Funzione confronto in uniq non riuscita"
-
-msgid "(Invalid)"
-msgstr "(Non valido)"
-
-msgid "E677: Error writing temp file"
-msgstr "E677: Errore in scrittura su file temporaneo"
-
-msgid "E921: Invalid callback argument"
-msgstr "E921: Argomento callback non valido"
-
 msgid "E805: Using a Float as a Number"
 msgstr "E805: Uso di un Numero-a-virgola-mobile come Numero"
 
@@ -827,74 +657,6 @@ msgstr "E742: Non riesco a cambiare il v
 msgid "E698: variable nested too deep for making a copy"
 msgstr "E698: Variabile troppo nidificata per poterla copiare"
 
-#, c-format
-msgid "E123: Undefined function: %s"
-msgstr "E123: Funzione non definita: %s"
-
-#, c-format
-msgid "E124: Missing '(': %s"
-msgstr "E124: Manca '(': %s"
-
-msgid "E862: Cannot use g: here"
-msgstr "E862: Non si può usare g: qui"
-
-msgid "E126: Missing :endfunction"
-msgstr "E126: Manca :endfunction"
-
-#, c-format
-msgid "E707: Function name conflicts with variable: %s"
-msgstr "E707: Nome funzione in conflitto con la variabile: %s"
-
-#, c-format
-msgid "E127: Cannot redefine function %s: It is in use"
-msgstr "E127: Non posso ridefinire la funzione %s: È in uso"
-
-#, c-format
-msgid "E746: Function name does not match script file name: %s"
-msgstr "E746: Il nome funzione non corrisponde al nome file dello script: %s"
-
-msgid "E129: Function name required"
-msgstr "E129: Nome funzione necessario"
-
-#, c-format
-msgid "E128: Function name must start with a capital or \"s:\": %s"
-msgstr "E128: Il nome funzione deve iniziare con maiuscola o \"s:\": %s"
-
-#, c-format
-msgid "E884: Function name cannot contain a colon: %s"
-msgstr "E884: Il nome della funzione non può contenere un due punti: %s"
-
-#, c-format
-msgid "E131: Cannot delete function %s: It is in use"
-msgstr "E131: Non posso eliminare la funzione %s: È in uso"
-
-msgid "E132: Function call depth is higher than 'maxfuncdepth'"
-msgstr ""
-"E132: Nidificazione della chiamata di funzione maggiore di 'maxfuncdepth'"
-
-#, c-format
-msgid "calling %s"
-msgstr "chiamo %s"
-
-#, c-format
-msgid "%s aborted"
-msgstr "%s non completata"
-
-#, c-format
-msgid "%s returning #%ld"
-msgstr "%s ritorno #%ld"
-
-#, c-format
-msgid "%s returning %s"
-msgstr "%s ritorno %s"
-
-#, c-format
-msgid "continuing in %s"
-msgstr "continuo in %s"
-
-msgid "E133: :return not inside a function"
-msgstr "E133: :return fuori da una funzione"
-
 msgid ""
 "\n"
 "# global variables:\n"
@@ -909,8 +671,137 @@ msgstr ""
 "\n"
 "\tImpostata l'ultima volta da "
 
-msgid "No old files"
-msgstr "Nessun file elaborato in precedenza"
+msgid "map() argument"
+msgstr "argomento di map()"
+
+msgid "filter() argument"
+msgstr "argomento di filter()"
+
+#, c-format
+msgid "E686: Argument of %s must be a List"
+msgstr "E686: L'argomento di %s deve essere una Lista"
+
+msgid "E928: String required"
+msgstr "E928: Stringa necessaria"
+
+msgid "E808: Number or Float required"
+msgstr "E808: Ci vuole un Numero o un Numero-a-virgola-mobile"
+
+msgid "add() argument"
+msgstr "argomento di add()"
+
+msgid "E785: complete() can only be used in Insert mode"
+msgstr "E785: complete() può essere usata solo in modalità inserimento"
+
+#.
+#. * Yes this is ugly, I don't particularly like it either.  But doing it
+#. * this way has the compelling advantage that translations need not to
+#. * be touched at all.  See below what 'ok' and 'ync' are used for.
+#.
+msgid "&Ok"
+msgstr "&OK"
+
+#, c-format
+msgid "E700: Unknown function: %s"
+msgstr "E700: Funzione sconosciuta: %s"
+
+msgid "E922: expected a dict"
+msgstr "E922: aspettavo un Dizionario"
+
+msgid "E923: Second argument of function() must be a list or a dict"
+msgstr ""
+"E923: Il secondo argomento di function() dev'essere una Lista o un Dizionario"
+
+msgid ""
+"&OK\n"
+"&Cancel"
+msgstr ""
+"&OK\n"
+"&Non eseguire"
+
+msgid "called inputrestore() more often than inputsave()"
+msgstr "inputrestore() chiamata più volte di inputsave()"
+
+msgid "insert() argument"
+msgstr "argomento di insert()"
+
+msgid "E786: Range not allowed"
+msgstr "E786: Intervallo non consentito"
+
+msgid "E916: not a valid job"
+msgstr "E916: job non valido"
+
+msgid "E701: Invalid type for len()"
+msgstr "E701: Tipo non valido per len()"
+
+#, c-format
+msgid "E798: ID is reserved for \":match\": %ld"
+msgstr "E798: ID riservato per \":match\": %ld"
+
+msgid "E726: Stride is zero"
+msgstr "E726: Incremento indice a zero"
+
+msgid "E727: Start past end"
+msgstr "E727: Indice iniziale superiore a quello finale"
+
+msgid "<empty>"
+msgstr "<vuoto>"
+
+msgid "E240: No connection to the X server"
+msgstr "E240: Manca connessione con server Vim"
+
+#, c-format
+msgid "E241: Unable to send to %s"
+msgstr "E241: Impossibile inviare a %s"
+
+msgid "E277: Unable to read a server reply"
+msgstr "E277: Non riesco a leggere una risposta del server"
+
+msgid "E941: already started a server"
+msgstr "E941: un server è già stato predisposto"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: funzionalità +clientserver non disponibile"
+
+msgid "remove() argument"
+msgstr "argomento di remove()"
+
+msgid "E655: Too many symbolic links (cycle?)"
+msgstr "E655: Troppi link simbolici (circolarità?)"
+
+msgid "reverse() argument"
+msgstr "argomento di reverse()"
+
+msgid "E258: Unable to send to client"
+msgstr "E258: Impossibile inviare al client"
+
+#, c-format
+msgid "E927: Invalid action: '%s'"
+msgstr "E927: Azione non valida: '%s'"
+
+msgid "sort() argument"
+msgstr "argomento di sort()"
+
+msgid "uniq() argument"
+msgstr "argomento di uniq()"
+
+msgid "E702: Sort compare function failed"
+msgstr "E702: Funzione confronto nel sort non riuscita"
+
+msgid "E882: Uniq compare function failed"
+msgstr "E882: Funzione confronto in uniq non riuscita"
+
+msgid "(Invalid)"
+msgstr "(Non valido)"
+
+msgid "E935: invalid submatch number: %d"
+msgstr "E935: nomeri di sotto-corrispondenza non valido: %d"
+
+msgid "E677: Error writing temp file"
+msgstr "E677: Errore in scrittura su file temporaneo"
+
+msgid "E921: Invalid callback argument"
+msgstr "E921: Argomento callback non valido"
 
 #, c-format
 msgid "<%s>%s%s  %d,  Hex %02x,  Octal %03o"
@@ -1146,6 +1037,9 @@ msgstr "E149: Spiacente, nessun aiuto pe
 msgid "Sorry, help file \"%s\" not found"
 msgstr "Spiacente, non trovo file di aiuto \"%s\""
 
+msgid "E151: No match: %s"
+msgstr "E151: Nessuna corrispondenza: %s"
+
 #, c-format
 msgid "E152: Cannot open %s for writing"
 msgstr "E152: Non posso aprire %s in scrittura"
@@ -1191,6 +1085,9 @@ msgstr "E159: Manca numero 'sign'"
 msgid "E158: Invalid buffer name: %s"
 msgstr "E158: Nome buffer non valido: %s"
 
+msgid "E934: Cannot jump to a buffer that does not have a name"
+msgstr "E934: Impossibile passare a un buffer che non ha un nome"
+
 #, c-format
 msgid "E157: Invalid sign ID: %ld"
 msgstr "E157: ID 'sign' non valido: %ld"
@@ -1208,6 +1105,9 @@ msgstr " (non supportata)"
 msgid "[Deleted]"
 msgstr "[Cancellato]"
 
+msgid "No old files"
+msgstr "Nessun file elaborato in precedenza"
+
 msgid "Entering Debug mode.  Type \"cont\" to continue."
 msgstr "Entro modalità Debug.  Batti \"cont\" per continuare."
 
@@ -1280,9 +1180,18 @@ msgstr "Cerco \"%s\" in \"%s\""
 msgid "Searching for \"%s\""
 msgstr "Cerco \"%s\""
 
+#, c-format
 msgid "not found in '%s': \"%s\""
 msgstr "non trovato in '%s': \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: Versione richiesta di python 2.x non supportata, ignoro il file: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: Versione richiesta di python 3.x non supportata, ignoro il file: %s"
+
 msgid "Source Vim script"
 msgstr "Esegui script Vim"
 
@@ -1310,6 +1219,10 @@ msgstr "riga %ld: eseguo \"%s\""
 msgid "finished sourcing %s"
 msgstr "esecuzione di %s terminata"
 
+#, c-format
+msgid "continuing in %s"
+msgstr "continuo in %s"
+
 msgid "modeline"
 msgstr "modeline"
 
@@ -1376,6 +1289,9 @@ msgstr "Intervallo rovesciato, OK invert
 msgid "E494: Use w or w>>"
 msgstr "E494: Usa w oppure w>>"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943: Tabella dei comandi da aggiornare, eseguire 'make cmdidxs'"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: Spiacente, comando non disponibile in questa versione"
 
@@ -2081,6 +1997,12 @@ msgstr "auto-rimozione dell'autocomando:
 msgid "E367: No such group: \"%s\""
 msgstr "E367: Gruppo inesistente: \"%s\""
 
+msgid "E936: Cannot delete the current group"
+msgstr "E936: Non posso cancellare il gruppo corrente"
+
+msgid "W19: Deleting augroup that is still in use"
+msgstr "W19: Cancello augroup, ma è ancora in uso"
+
 #, c-format
 msgid "E215: Illegal character after *: %s"
 msgstr "E215: Carattere non ammesso dopo *: %s"
@@ -2141,10 +2063,6 @@ msgstr "E350: Non posso creare piegatura
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: Non posso cancellare piegatura con il 'foldmethod' in uso"
 
-#, c-format
-msgid "+--%3ld lines folded "
-msgstr "+--%3ld righe piegate"
-
 msgid "E222: Add to read buffer"
 msgstr "E222: Aggiunto al buffer di lettura"
 
@@ -2930,6 +2848,17 @@ msgstr "E573: Identificativo di server n
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251: Proprietà registry relative a VIM non adeguate.  Cancellate!"
 
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: Chiave duplicata in JSON: \"%s\"" 
+
+#, c-format
+msgid "E696: Missing comma in List: %s"
+msgstr "E696: Manca virgola nella Lista: %s"
+
+#, c-format
+msgid "E697: Missing end of List ']': %s"
+msgstr "E697: Manca ']' a fine Lista: %s"
+
 msgid "Unknown option argument"
 msgstr "Argomento di opzione sconosciuto"
 
@@ -2955,12 +2884,12 @@ msgstr "%d file da elaborare\n"
 msgid "netbeans is not supported with this GUI\n"
 msgstr "netbeans non è supportato con questa GUI\n"
 
+msgid "'-nb' cannot be used: not enabled at compile time\n"
+msgstr "'-nb' non disponibile: non abilitato in compilazione\n"
+
 msgid "This Vim was not compiled with the diff feature."
 msgstr "Vim non compilato con funzionalità 'diff'."
 
-msgid "'-nb' cannot be used: not enabled at compile time\n"
-msgstr "'-nb' non disponibile: non abilitato in compilazione\n"
-
 msgid "Attempt to open script file again: \""
 msgstr "Tento di riaprire lo script file: \""
 
@@ -2974,8 +2903,8 @@ msgid "Vim: Error: Failure to start gvim
 msgstr "Vim: Errore: Avvio di gvim da NetBeans non riuscito\n"
 
 msgid "Vim: Error: This version of Vim does not run in a Cygwin terminal\n"
-msgstr "Vim: Errore: Questa versione di Vim non funziona in un"
-" terminale Cygwin\n"
+msgstr ""
+"Vim: Errore: Questa versione di Vim non funziona in un terminale Cygwin\n"
 
 msgid "Vim: Warning: Output is not to a terminal\n"
 msgstr "Vim: Avviso: Output non diretto a un terminale\n"
@@ -3144,11 +3073,14 @@ msgstr "-T <terminale>\tImposta tipo ter
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
 msgstr "--not-a-term\t\tNon avvisare se input/output non da terminale"
 
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\tEsce se l'input o l'output non sono da un terminale"
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
-msgstr "-u <vimrc>\t\tUsa <vimrc> invece di .vimrc"
+msgstr "-u <vimrc>\t\tUsa <vimrc> invece di qualche .vimrc"
 
 msgid "-U <gvimrc>\t\tUse <gvimrc> instead of any .gvimrc"
-msgstr "-U <gvimrc>\t\tUsa <gvimrc> invece di .gvimrc"
+msgstr "-U <gvimrc>\t\tUsa <gvimrc> invece di qualche .gvimrc"
 
 msgid "--noplugin\t\tDon't load plugin scripts"
 msgstr "--noplugin\t\tNon caricare script plugin"
@@ -4278,27 +4210,31 @@ msgstr ""
 msgid "%ld Cols; "
 msgstr "%ld Col.; "
 
+#, c-format
 msgid "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Bytes"
 msgstr ""
 "Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt."
 
+#, c-format
 msgid ""
 "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
 "%lld Bytes"
 msgstr ""
-"Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt.;"
-" %lld di %lld Byte"
-
+"Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt.; "
+"%lld di %lld Byte"
+
+#, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
 msgstr ""
 "Col. %s di %s; Riga %ld di %ld; Parola %lld di %lld; Caratt. %lld di %lld"
 
+#, c-format
 msgid ""
 "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
 "%lld of %lld"
 msgstr ""
-"Col. %s di %s; Riga %ld di %ld; Parola %lld di %lld; Caratt. %lld di %lld;"
-" Byte %lld di %lld"
+"Col. %s di %s; Riga %ld di %ld; Parola %lld di %lld; Caratt. %lld di %lld; "
+"Byte %lld di %lld"
 
 #, c-format
 msgid "(+%ld for BOM)"
@@ -4529,9 +4465,6 @@ msgstr "ERRORE I/O"
 msgid "Message"
 msgstr "Messaggio"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns' non vale 80, non riesco ad eseguire comandi esterni"
-
 msgid "E237: Printer selection failed"
 msgstr "E237: Scelta stampante non riuscita"
 
@@ -4760,15 +4693,17 @@ msgstr "(%d di %d)%s%s: "
 msgid " (line deleted)"
 msgstr " (riga cancellata)"
 
+msgid "%serror list %d of %d; %d errors "
+msgstr "%slista errori %d di %d; %d errori"
+
 msgid "E380: At bottom of quickfix stack"
 msgstr "E380: Al fondo dello stack di quickfix"
 
 msgid "E381: At top of quickfix stack"
 msgstr "E381: In cima allo stack di quickfix"
 
-#, c-format
-msgid "error list %d of %d; %d errors"
-msgstr "lista errori %d di %d; %d errori"
+msgid "No entries"
+msgstr "Nessun elemento"
 
 msgid "E382: Cannot write, 'buftype' option is set"
 msgstr "E382: Non posso scrivere, l'opzione 'buftype' è impostata"
@@ -4993,9 +4928,6 @@ msgstr " Ebraico"
 msgid " Arabic"
 msgstr " Arabo"
 
-msgid " (lang)"
-msgstr " (lingua)"
-
 msgid " (paste)"
 msgstr " (incolla)"
 
@@ -5090,8 +5022,47 @@ msgstr ""
 "# Ult. %sEspressione di Ricerca:\n"
 "~"
 
-msgid "E759: Format error in spell file"
-msgstr "E759: Errore di formato nel file ortografico"
+msgid "E756: Spell checking is not enabled"
+msgstr "E756: Controllo ortografico non abilitato"
+
+#, c-format
+msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
+msgstr "Avviso: Non trovo lista parole \"%s_%s.spl\" o \"%s_ascii.spl\""
+
+#, c-format
+msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
+msgstr "Avviso: Non trovo lista parole \"%s.%s.spl\" o \"%s.ascii.spl\""
+
+msgid "E797: SpellFileMissing autocommand deleted buffer"
+msgstr "E797: L'autocomando 'SpellFileMissing' ha cancellato il buffer"
+
+#, c-format
+msgid "Warning: region %s not supported"
+msgstr "Avviso: regione %s non supportata"
+
+msgid "Sorry, no suggestions"
+msgstr "Spiacente, nessun suggerimento"
+
+#, c-format
+msgid "Sorry, only %ld suggestions"
+msgstr "Spiacente, solo %ld suggerimenti"
+
+#. for when 'cmdheight' > 1
+#. avoid more prompt
+#, c-format
+msgid "Change \"%.*s\" to:"
+msgstr "Cambiare \"%.*s\" in:"
+
+#, c-format
+msgid " < \"%.*s\""
+msgstr " < \"%.*s\""
+
+msgid "E752: No previous spell replacement"
+msgstr "E752: Nessuna sostituzione ortografica precedente"
+
+#, c-format
+msgid "E753: Not found: %s"
+msgstr "E753: Non trovato: %s"
 
 msgid "E758: Truncated spell file"
 msgstr "E758: File ortografico troncato"
@@ -5113,17 +5084,6 @@ msgstr "E762: Carattere fuori intervallo
 msgid "Compressing word tree..."
 msgstr "Comprimo albero di parole..."
 
-msgid "E756: Spell checking is not enabled"
-msgstr "E756: Controllo ortografico non abilitato"
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
-msgstr "Avviso: Non trovo lista parole \"%s_%s.spl\" o \"%s_ascii.spl\""
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
-msgstr "Avviso: Non trovo lista parole \"%s.%s.spl\" o \"%s.ascii.spl\""
-
 #, c-format
 msgid "Reading spell file \"%s\""
 msgstr "Lettura file ortografico \"%s\""
@@ -5141,8 +5101,24 @@ msgid "E770: Unsupported section in spel
 msgstr "E770: Sezione non supportata nel file ortografico"
 
 #, c-format
-msgid "Warning: region %s not supported"
-msgstr "Avviso: regione %s non supportata"
+msgid "E778: This does not look like a .sug file: %s"
+msgstr "E778: Questo non sembra un file .sug: %s"
+
+#, c-format
+msgid "E779: Old .sug file, needs to be updated: %s"
+msgstr "E779: File .sug obsoleto, è necessario aggiornarlo: %s"
+
+#, c-format
+msgid "E780: .sug file is for newer version of Vim: %s"
+msgstr "E780: Il file .sug è per versioni di Vim più recenti: %s"
+
+#, c-format
+msgid "E781: .sug file doesn't match .spl file: %s"
+msgstr "E781: Il file .sug non corrisponde al file .spl: %s"
+
+#, c-format
+msgid "E782: error while reading .sug file: %s"
+msgstr "E782: Errore leggendo il file .sug: %s"
 
 #, c-format
 msgid "Reading affix file %s ..."
@@ -5412,50 +5388,6 @@ msgstr "Parola '%.*s' aggiunta a %s"
 msgid "E763: Word characters differ between spell files"
 msgstr "E763: Caratteri di parola differenti nei file ortografici"
 
-msgid "Sorry, no suggestions"
-msgstr "Spiacente, nessun suggerimento"
-
-#, c-format
-msgid "Sorry, only %ld suggestions"
-msgstr "Spiacente, solo %ld suggerimenti"
-
-#. for when 'cmdheight' > 1
-#. avoid more prompt
-#, c-format
-msgid "Change \"%.*s\" to:"
-msgstr "Cambiare \"%.*s\" in:"
-
-#, c-format
-msgid " < \"%.*s\""
-msgstr " < \"%.*s\""
-
-msgid "E752: No previous spell replacement"
-msgstr "E752: Nessuna sostituzione ortografica precedente"
-
-#, c-format
-msgid "E753: Not found: %s"
-msgstr "E753: Non trovato: %s"
-
-#, c-format
-msgid "E778: This does not look like a .sug file: %s"
-msgstr "E778: Questo non sembra un file .sug: %s"
-
-#, c-format
-msgid "E779: Old .sug file, needs to be updated: %s"
-msgstr "E779: File .sug obsoleto, è necessario aggiornarlo: %s"
-
-#, c-format
-msgid "E780: .sug file is for newer version of Vim: %s"
-msgstr "E780: Il file .sug è per versioni di Vim più recenti: %s"
-
-#, c-format
-msgid "E781: .sug file doesn't match .spl file: %s"
-msgstr "E781: Il file .sug non corrisponde al file .spl: %s"
-
-#, c-format
-msgid "E782: error while reading .sug file: %s"
-msgstr "E782: Errore leggendo il file .sug: %s"
-
 #. This should have been checked when generating the .spl
 #. * file.
 msgid "E783: duplicate char in MAP entry"
@@ -5464,10 +5396,31 @@ msgstr "E783: carattere duplicato nell'e
 msgid "No Syntax items defined for this buffer"
 msgstr "Nessun elemento sintattico definito per questo buffer"
 
+msgid "syn conceal on"
+msgstr "syn conceal attivo"
+
+msgid "syn conceal off"
+msgstr "syn conceal inattivo"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Argomento non ammesso: %s"
 
+msgid "syntax case ignore"
+msgstr "syntax, ignorare maiuscolo/minuscolo"
+
+msgid "syntax case match"
+msgstr "syntax, considerare maiuscolo/minuscolo"
+
+msgid "syntax spell toplevel"
+msgstr "syntax, effettua spell sul testo"
+
+msgid "syntax spell notoplevel"
+msgstr "syntax, non effettuare spell sul testo"
+
+msgid "syntax spell default"
+msgstr "syntax, usare valore di default per lo spell"
+
 msgid "syntax iskeyword "
 msgstr "syntax iskeyword "
 
@@ -5943,13 +5896,129 @@ msgstr "E439: lista 'undo' non valida"
 msgid "E440: undo line missing"
 msgstr "E440: riga di 'undo' mancante"
 
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"versione MS-Windows 16/32-bit GUI"
+#, c-format
+msgid "E122: Function %s already exists, add ! to replace it"
+msgstr "E122: La funzione %s esiste già, aggiungi ! per sostituirla"
+
+msgid "E717: Dictionary entry already exists"
+msgstr "E717: C'è già la voce nel Dizionario"
+
+msgid "E718: Funcref required"
+msgstr "E718: Funcref necessario"
+
+#, c-format
+msgid "E130: Unknown function: %s"
+msgstr "E130: Funzione sconosciuta: %s"
+
+#, c-format
+msgid "E125: Illegal argument: %s"
+msgstr "E125: Argomento non ammesso: %s"
+
+#, c-format
+msgid "E853: Duplicate argument name: %s"
+msgstr "E853: Nome argomento duplicato: %s"
+
+#, c-format
+msgid "E740: Too many arguments for function %s"
+msgstr "E740: Troppi argomenti per la funzione: %s"
+
+#, c-format
+msgid "E116: Invalid arguments for function %s"
+msgstr "E116: Argomenti non validi per la funzione: %s"
+
+msgid "E132: Function call depth is higher than 'maxfuncdepth'"
+msgstr ""
+"E132: Nidificazione della chiamata di funzione maggiore di 'maxfuncdepth'"
+
+#, c-format
+msgid "calling %s"
+msgstr "chiamo %s"
+
+#, c-format
+msgid "%s aborted"
+msgstr "%s non completata"
+
+#, c-format
+msgid "%s returning #%ld"
+msgstr "%s ritorno #%ld"
+
+#, c-format
+msgid "%s returning %s"
+msgstr "%s ritorno %s"
+
+msgid "E699: Too many arguments"
+msgstr "E699: Troppi argomenti"
+
+#, c-format
+msgid "E117: Unknown function: %s"
+msgstr "E117: Funzione sconosciuta: %s"
+
+msgid "E933: Function was deleted: %s"
+msgstr "E933: Funzione eliminata: %s"
+
+#, c-format
+msgid "E119: Not enough arguments for function: %s"
+msgstr "E119: La funzione: %s richiede più argomenti"
+
+#, c-format
+msgid "E120: Using <SID> not in a script context: %s"
+msgstr "E120: Uso di <SID> fuori dal contesto di uno script: %s"
+
+#, c-format
+msgid "E725: Calling dict function without Dictionary: %s"
+msgstr "E725: Chiamata di funzione dict in assenza di Dizionario: %s"
+
+msgid "E129: Function name required"
+msgstr "E129: Nome funzione necessario"
+
+#, c-format
+msgid "E128: Function name must start with a capital or \"s:\": %s"
+msgstr "E128: Il nome funzione deve iniziare con maiuscola o \"s:\": %s"
+
+#, c-format
+msgid "E884: Function name cannot contain a colon: %s"
+msgstr "E884: Il nome della funzione non può contenere un due punti: %s"
+
+#, c-format
+msgid "E123: Undefined function: %s"
+msgstr "E123: Funzione non definita: %s"
+
+#, c-format
+msgid "E124: Missing '(': %s"
+msgstr "E124: Manca '(': %s"
+
+msgid "E862: Cannot use g: here"
+msgstr "E862: Non si può usare g: qui"
+
+#, c-format
+msgid "E932: Closure function should not be at top level: %s"
+msgstr "E932: La funzione di chiusura non novrebbe essere al livello più alto: %s"
+
+msgid "E126: Missing :endfunction"
+msgstr "E126: Manca :endfunction"
+
+#, c-format
+msgid "E707: Function name conflicts with variable: %s"
+msgstr "E707: Nome funzione in conflitto con la variabile: %s"
+
+#, c-format
+msgid "E127: Cannot redefine function %s: It is in use"
+msgstr "E127: Non posso ridefinire la funzione %s: È in uso"
+
+#, c-format
+msgid "E746: Function name does not match script file name: %s"
+msgstr "E746: Il nome funzione non corrisponde al nome file dello script: %s"
+
+#, c-format
+msgid "E131: Cannot delete function %s: It is in use"
+msgstr "E131: Non posso eliminare la funzione %s: È in uso"
+
+msgid "E133: :return not inside a function"
+msgstr "E133: :return fuori da una funzione"
+
+#, c-format
+msgid "E107: Missing parentheses: %s"
+msgstr "E107: Mancano parentesi: %s"
 
 msgid ""
 "\n"
@@ -5965,9 +6034,6 @@ msgstr ""
 "\n"
 "Versione MS-Windows 32-bit GUI"
 
-msgid " in Win32s mode"
-msgstr " in modalità Win32s"
-
 msgid " with OLE support"
 msgstr " con supporto OLE"
 
@@ -6144,6 +6210,9 @@ msgstr "   II file gvimrc utente: \""
 msgid "3rd user gvimrc file: \""
 msgstr "  III file gvimrc utente: \""
 
+msgid "       defaults file: \""
+msgstr "        file dei default: \""
+
 msgid "    system menu file: \""
 msgstr "    file menu di sistema: \""
 
@@ -6234,12 +6303,6 @@ msgstr "batti :help register<Invio>   pe
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "menu  Aiuto->Sponsor/Registrazione  per informazioni "
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr "AVVISO: Trovato Windows 95/98/ME"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr "batti :help windows95<Enter>  per info al riguardo"
-
 msgid "Already only one window"
 msgstr "C'è già una finestra sola"
 
@@ -6273,8 +6336,21 @@ msgstr "E446: Nessun nome file sotto il 
 msgid "E447: Can't find file \"%s\" in path"
 msgstr "E447: Non riesco a trovare il file \"%s\" nel percorso"
 
+msgid "E799: Invalid ID: %ld (must be greater than or equal to 1)"
+msgstr "E799: ID non valido: %ld (dev'essere maggiore o uguale a 1)"
+
+#, c-format
+msgid "E801: ID already taken: %ld"
+msgstr "E801: ID già utilizzato: %ld"
+
 msgid "List or number required"
-msgstr "È necessaria una lista o un numero"
+msgstr "È necessaria una Lista o un numero"
+
+msgid "E802: Invalid ID: %ld (must be greater than or equal to 1)"
+msgstr "E802: ID non valido: %ld (dev'essere maggiore o uguale a 1)"
+
+msgid "E803: ID not found: %ld"
+msgstr "E803: ID non trovato: %ld"
 
 #, c-format
 msgid "E370: Could not load library %s"
@@ -6381,6 +6457,10 @@ msgstr "E236: Font \"%s\" non di larghez
 msgid "E473: Internal error"
 msgstr "E473: Errore interno"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: Errore interno: %s"
+
 msgid "Interrupted"
 msgstr "Interrotto"
 
@@ -6568,6 +6648,28 @@ msgstr ""
 msgid "E713: Cannot use empty key for Dictionary"
 msgstr "E713: Non posso usare una chiave nulla per il Dizionario"
 
+msgid "E715: Dictionary required"
+msgstr "E715: È necessario un Dizionario"
+
+#, c-format
+msgid "E684: list index out of range: %ld"
+msgstr "E684: indice lista fuori intervallo: %ld"
+
+#, c-format
+msgid "E118: Too many arguments for function: %s"
+msgstr "E118: Troppi argomenti per la funzione: %s"
+
+#, c-format
+msgid "E716: Key not present in Dictionary: %s"
+msgstr "E716: Chiave assente dal Dizionario: %s"
+
+msgid "E714: List required"
+msgstr "E714: È necessaria una Lista"
+
+#, c-format
+msgid "E712: Argument of %s must be a List or Dictionary"
+msgstr "E712: L'argomento di %s deve essere una Lista o un Dizionario"
+
 msgid "E47: Error while reading errorfile"
 msgstr "E47: Errore leggendo il file errori"
 
@@ -6625,8 +6727,8 @@ msgstr "E592: 'winwidth' non può essere inferiore a 'winminwidth'"
 msgid "E80: Error while writing"
 msgstr "E80: Errore in scrittura"
 
-msgid "Zero count"
-msgstr "Contatore a zero"
+msgid "E939: Positive count required"
+msgstr "E939: Un contatore positivo è necessario"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: Uso di <SID> fuori dal contesto di uno script"
@@ -6640,10 +6742,6 @@ msgstr "E463: Regione protetta, impossib
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans non permette modifiche a file di sola lettura"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: Errore interno: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: l'espressione usa troppa memoria rispetto a 'maxmempattern'"
 
@@ -6944,6 +7042,6 @@ msgid ""
 "Failed to set path: sys.path is not a list\n"
 "You should now append vim.VIM_SPECIAL_PATH to sys.path"
 msgstr ""
-"Impostazione di percorso non riuscita: sys.path non è una lista\n"
+"Impostazione di percorso non riuscita: sys.path non è una Lista\n"
 "Dovresti aggiungere vim.VIM_SPECIAL_PATH a sys.path"