changeset 28379:6dd88e45d47d

Update runtime files Commit: https://github.com/vim/vim/commit/cbaff5e06ec525d31dc44093125c42029e01d508 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Apr 8 17:45:08 2022 +0100 Update runtime files
author Bram Moolenaar <Bram@vim.org>
date Fri, 08 Apr 2022 19:00:04 +0200
parents b8d39e361293
children 90d43a367955
files runtime/autoload/dist/ft.vim runtime/doc/autocmd.txt runtime/doc/builtin.txt runtime/doc/channel.txt runtime/doc/editing.txt runtime/doc/eval.txt runtime/doc/filetype.txt runtime/doc/ft_sql.txt runtime/doc/gui.txt runtime/doc/indent.txt runtime/doc/insert.txt runtime/doc/intro.txt runtime/doc/map.txt runtime/doc/mbyte.txt runtime/doc/motion.txt runtime/doc/netbeans.txt runtime/doc/options.txt runtime/doc/pi_netrw.txt runtime/doc/popup.txt runtime/doc/quickref.txt runtime/doc/repeat.txt runtime/doc/rileft.txt runtime/doc/scroll.txt runtime/doc/syntax.txt runtime/doc/tags runtime/doc/term.txt runtime/doc/terminal.txt runtime/doc/testing.txt runtime/doc/todo.txt runtime/doc/various.txt runtime/doc/version5.txt runtime/doc/version6.txt runtime/doc/vi_diff.txt runtime/doc/vim9.txt runtime/doc/windows.txt runtime/filetype.vim runtime/ftplugin/c.vim runtime/indent/ada.vim runtime/indent/awk.vim runtime/indent/cdl.vim runtime/indent/chaiscript.vim runtime/indent/cmake.vim runtime/indent/d.vim runtime/indent/dictconf.vim runtime/indent/dictdconf.vim runtime/indent/dylan.vim runtime/indent/falcon.vim runtime/indent/gitolite.vim runtime/indent/idlang.vim runtime/indent/make.vim runtime/indent/mma.vim runtime/indent/nginx.vim runtime/indent/objc.vim runtime/indent/occam.vim runtime/indent/postscr.vim runtime/indent/prolog.vim runtime/indent/sas.vim runtime/indent/sml.vim runtime/indent/systemverilog.vim runtime/optwin.vim runtime/syntax/dep3patch.vim runtime/syntax/lua.vim runtime/syntax/neomuttrc.vim runtime/syntax/sml.vim runtime/syntax/vim.vim src/po/it.po
diffstat 66 files changed, 1319 insertions(+), 514 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/autoload/dist/ft.vim
+++ b/runtime/autoload/dist/ft.vim
@@ -3,7 +3,7 @@ vim9script
 # Vim functions for file type detection
 #
 # Maintainer:	Bram Moolenaar <Bram@vim.org>
-# Last Change:	2022 Mar 05
+# Last Change:	2022 Apr 06
 
 # These functions are moved here from runtime/filetype.vim to make startup
 # faster.
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 8.2.  Last change: 2022 Mar 27
+*autocmd.txt*   For Vim version 8.2.  Last change: 2022 Apr 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/builtin.txt
+++ b/runtime/doc/builtin.txt
@@ -1,4 +1,4 @@
-*builtin.txt*	For Vim version 8.2.  Last change: 2022 Mar 26
+*builtin.txt*	For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1754,7 +1754,10 @@ deepcopy({expr} [, {noref}])				*deepcop
 
 delete({fname} [, {flags}])				*delete()*
 		Without {flags} or with {flags} empty: Deletes the file by the
-		name {fname}.  This also works when {fname} is a symbolic link.
+		name {fname}.
+
+		This also works when {fname} is a symbolic link.  The symbolic
+		link itself is deleted, not what it points to.
 
 		When {flags} is "d": Deletes the directory by the name
 		{fname}.  This fails when directory {fname} is not empty.
@@ -1764,8 +1767,6 @@ delete({fname} [, {flags}])				*delete()
 		Note: on MS-Windows it is not possible to delete a directory
 		that is being used.
 
-		A symbolic link itself is deleted, not what it points to.
-
 		The result is a Number, which is 0/false if the delete
 		operation was successful and -1/true when the deletion failed
 		or partly failed.
@@ -2741,7 +2742,7 @@ foreground()	Move the Vim window to the 
 		On Win32 systems this might not work, the OS does not always
 		allow a window to bring itself to the foreground.  Use
 		|remote_foreground()| instead.
-		{only in the Win32, Athena, Motif and GTK GUI versions and the
+		{only in the Win32, Motif and GTK GUI versions and the
 		Win32 console version}
 
 fullcommand({name})						*fullcommand()*
@@ -4833,6 +4834,8 @@ json_encode({expr})					*json_encode()*
 		Note that NaN and Infinity are passed on as values.  This is
 		missing in the JSON standard, but several implementations do
 		allow it.  If not then you will get an error.
+		If a string contains an illegal character then the replacement
+		character 0xfffd is used.
 
 		Can also be used as a |method|: >
 			GetObject()->json_encode()
@@ -6023,8 +6026,10 @@ printf({fmt}, {expr1} ...)				*printf()*
 		When used as a |method| the base is passed as the second
 		argument: >
 			Compute()->printf("result: %d")
-
-<		Often used items are:
+<
+		You can use `call()` to pass the items as a list.
+
+		Often used items are:
 		  %s	string
 		  %6S	string right-aligned in 6 display cells
 		  %6s	string right-aligned in 6 bytes
@@ -6693,7 +6698,7 @@ remote_foreground({server})				*remote_f
 		Can also be used as a |method|: >
 			ServerName()->remote_foreground()
 
-<		{only in the Win32, Athena, Motif and GTK GUI versions and the
+<		{only in the Win32, Motif and GTK GUI versions and the
 		Win32 console version}
 
 
@@ -10025,7 +10030,7 @@ footer			Compiled with GUI footer suppor
 fork			Compiled to use fork()/exec() instead of system().
 gettext			Compiled with message translation |multi-lang|
 gui			Compiled with GUI enabled.
-gui_athena		Compiled with Athena GUI.
+gui_athena		Compiled with Athena GUI (always false).
 gui_gnome		Compiled with Gnome support (gui_gtk is also defined).
 gui_gtk			Compiled with GTK+ GUI (any version).
 gui_gtk2		Compiled with GTK+ 2 GUI (gui_gtk is also defined).
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 8.2.  Last change: 2022 Mar 26
+*channel.txt*      For Vim version 8.2.  Last change: 2022 Apr 05
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -588,7 +588,7 @@ ch_info({handle})						*ch_info()*
 		   "sock_io"	  "socket"
 		   "sock_timeout" timeout in msec
 
-		Note that "pair" is only present for Unix-domain sockets, for
+		Note that "path" is only present for Unix-domain sockets, for
 		regular ones "hostname" and "port" are present instead.
 
 		When opened with job_start():
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 8.2.  Last change: 2022 Feb 16
+*editing.txt*   For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1235,7 +1235,7 @@ If you want to always use ":confirm", se
 			|:diffsplit|, |:diffpatch|, |:open|, |:pedit|,
 			|:redir|, |:source|, |:update|, |:visual|, |:vsplit|,
 			and |:qall| if 'confirm' is set.
-			{only in Win32, Athena, Motif, GTK and Mac GUI, in
+			{only in Win32, Motif, GTK and Mac GUI, in
 			console `browse edit` works if the FileExplorer
 			autocommand group exists}
 			When ":browse" is not possible you get an error
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.2.  Last change: 2022 Mar 05
+*eval.txt*	For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -261,7 +261,7 @@ position in the sequence.
 
 List creation ~
 							*E696* *E697*
-A List is created with a comma separated list of items in square brackets.
+A List is created with a comma-separated list of items in square brackets.
 Examples: >
 	:let mylist = [1, two, 3, "four"]
 	:let emptylist = []
@@ -514,7 +514,7 @@ ordering.
 
 Dictionary creation ~
 						*E720* *E721* *E722* *E723*
-A Dictionary is created with a comma separated list of entries in curly
+A Dictionary is created with a comma-separated list of entries in curly
 braces.  Each entry has a key and a value, separated by a colon.  Each key can
 only appear once.  Examples: >
 	:let mydict = {1: 'one', 2: 'two', 3: 'three'}
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt*  For Vim version 8.2.  Last change: 2022 Jan 21
+*filetype.txt*  For Vim version 8.2.  Last change: 2022 Apr 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -142,6 +142,7 @@ variables can be used to overrule the fi
 	*.asm		g:asmsyntax	|ft-asm-syntax|
 	*.asp		g:filetype_asp	|ft-aspvbs-syntax| |ft-aspperl-syntax|
 	*.bas		g:filetype_bas	|ft-basic-syntax|
+	*.dat		g:filetype_dat
 	*.frm		g:filetype_frm	|ft-form-syntax|
 	*.fs		g:filetype_fs	|ft-forth-syntax|
 	*.i		g:filetype_i	|ft-progress-syntax|
@@ -151,10 +152,15 @@ variables can be used to overrule the fi
 	*.pl		g:filetype_pl
 	*.pp		g:filetype_pp	|ft-pascal-syntax|
 	*.prg		g:filetype_prg
+	*.src		g:filetype_src
 	*.sh		g:bash_is_sh	|ft-sh-syntax|
 	*.tex		g:tex_flavor	|ft-tex-plugin|
 	*.w		g:filetype_w	|ft-cweb-syntax|
 
+For a few filetypes the global variable is used only when the filetype could
+not be detected:
+	*.r		g:filetype_r	|ft-rexx-syntax|
+
 							*filetype-ignore*
 To avoid that certain files are being inspected, the g:ft_ignore_pat variable
 is used.  The default value is set like this: >
--- a/runtime/doc/ft_sql.txt
+++ b/runtime/doc/ft_sql.txt
@@ -1,4 +1,4 @@
-*ft_sql.txt*	For Vim version 8.2.  Last change: 2019 Dec 07
+*ft_sql.txt*	For Vim version 8.2.  Last change: 2022 Apr 06
 
 by David Fishburn
 
@@ -559,7 +559,7 @@ the SQL completion plugin. >
 <	1. After typing SELECT press <C-C>t to display a list of tables.
 	2. Highlight the table you need the column list for.
 	3. Press <Enter> to choose the table from the list.
-	4. Press <C-C>l to request a comma separated list of all columns
+	4. Press <C-C>l to request a comma-separated list of all columns
 	   for this table.
 	5. Based on the table name chosen in step 3, the plugin attempts to
 	   decide on a reasonable table alias.	You are then prompted to
@@ -613,7 +613,7 @@ your |vimrc|: >
 >
     omni_sql_use_tbl_alias
 <	- Default: a
-	- This setting is only used when generating a comma separated
+	- This setting is only used when generating a comma-separated
 	  column list.	By default the map is <C-C>l.  When generating
 	  a column list, an alias can be prepended to the beginning of each
 	  column, for example:	e.emp_id, e.emp_name.  This option has three
@@ -697,9 +697,9 @@ plugin. >
     <C-C>c
 <       - Displays a list of columns for a specific table. >
     <C-C>l
-<       - Displays a comma separated list of columns for a specific table. >
+<       - Displays a comma-separated list of columns for a specific table. >
     <C-C>L
-<       - Displays a comma separated list of columns for a specific table.
+<       - Displays a comma-separated list of columns for a specific table.
 	  This should only be used when the completion window is active. >
     <Right>
 <	- Displays a list of columns for the table currently highlighted in
--- a/runtime/doc/gui.txt
+++ b/runtime/doc/gui.txt
@@ -1,4 +1,4 @@
-*gui.txt*       For Vim version 8.2.  Last change: 2022 Mar 02
+*gui.txt*       For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -1,4 +1,4 @@
-*indent.txt*    For Vim version 8.2.  Last change: 2022 Jan 31
+*indent.txt*    For Vim version 8.2.  Last change: 2022 Apr 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/insert.txt
+++ b/runtime/doc/insert.txt
@@ -1,4 +1,4 @@
-*insert.txt*    For Vim version 8.2.  Last change: 2022 Mar 28
+*insert.txt*    For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -272,7 +272,7 @@ CTRL-]		Trigger abbreviation, without in
 
 						*i_backspacing*
 The effect of the <BS>, CTRL-W, and CTRL-U depend on the 'backspace' option
-(unless 'revins' is set).  This is a comma separated list of items:
+(unless 'revins' is set).  This is a comma-separated list of items:
 
 item	    action ~
 indent	    allow backspacing over autoindent
@@ -1196,7 +1196,7 @@ three lines, but 'previewheight' is used
 						*complete-popup*
 When "popup" is in 'completeopt' a popup window is used to display the "info".
 Then the 'completepopup' option specifies the properties of the popup.  This
-is used when the info popup is created.  The option is a comma separated list
+is used when the info popup is created.  The option is a comma-separated list
 of values:
 	height		maximum height of the popup
 	width		maximum width of the popup
--- a/runtime/doc/intro.txt
+++ b/runtime/doc/intro.txt
@@ -1,4 +1,4 @@
-*intro.txt*     For Vim version 8.2.  Last change: 2022 Mar 03
+*intro.txt*     For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -213,7 +213,7 @@ Vim would never have become what it is n
 	Daniel Elstner		GTK+ 2 port
 	Eric Fischer		Mac port, 'cindent', and other improvements
 	Benji Fisher		Answering lots of user questions
-	Bill Foster		Athena GUI port
+	Bill Foster		Athena GUI port (later removed)
 	Google			Lets me work on Vim one day a week
 	Loic Grenie		xvim (ideas for multi windows version)
 	Sven Guckes		Vim promoter and previous WWW page maintainer
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt*       For Vim version 8.2.  Last change: 2022 Mar 03
+*map.txt*       For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -697,6 +697,10 @@ The special key name "<Plug>" can be use
 not to be matched with any key sequence.  This is useful in plugins
 |using-<Plug>|.
 
+							*<MouseMove>*
+The special key name "<MouseMove>" can be used to handle mouse movement.  It
+needs to be enabled with 'mousemoveevent'.  Currently only works in the GUI.
+
 							*<Char>* *<Char->*
 To map a character by its decimal, octal or hexadecimal number the <Char>
 construct can be used:
--- a/runtime/doc/mbyte.txt
+++ b/runtime/doc/mbyte.txt
@@ -1,4 +1,4 @@
-*mbyte.txt*     For Vim version 8.2.  Last change: 2022 Jan 20
+*mbyte.txt*     For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar et al.
@@ -702,7 +702,7 @@ USING RESOURCE FILES
 Instead of specifying 'guifontset', you can set X11 resources and Vim will
 pick them up.  This is only for people who know how X resource files work.
 
-For Motif and Athena insert these three lines in your $HOME/.Xdefaults file:
+For Motif insert these three lines in your $HOME/.Xdefaults file:
 
 	Vim.font: |base_font_name_list|
 	Vim*fontSet: |base_font_name_list|
@@ -1280,7 +1280,7 @@ internally.
 
 Vim has comprehensive UTF-8 support.  It works well in:
 - xterm with UTF-8 support enabled
-- Athena, Motif and GTK GUI
+- Motif and GTK GUI
 - MS-Windows GUI
 - several other platforms
 
--- a/runtime/doc/motion.txt
+++ b/runtime/doc/motion.txt
@@ -33,7 +33,8 @@ know what the hjkl keys do.  The mnemoni
 at the keyboard.  Think of j as an arrow pointing downwards.
 
 The 'virtualedit' option can be set to make it possible to move the cursor to
-positions where there is no character or halfway a character.
+positions where there is no character or within a multi-column character (like
+a tab).
 
 ==============================================================================
 1. Motions and operators				*operator*
@@ -445,35 +446,35 @@ between Vi and Vim.
 5. Text object motions					*object-motions*
 
 							*(*
-(			[count] sentences backward.  |exclusive| motion.
+(			[count] |sentence|s backward.  |exclusive| motion.
 
 							*)*
-)			[count] sentences forward.  |exclusive| motion.
+)			[count] |sentence|s forward.  |exclusive| motion.
 
 							*{*
-{			[count] paragraphs backward.  |exclusive| motion.
+{			[count] |paragraph|s backward.  |exclusive| motion.
 
 							*}*
-}			[count] paragraphs forward.  |exclusive| motion.
+}			[count] |paragraph|s forward.  |exclusive| motion.
 
 							*]]*
-]]			[count] sections forward or to the next '{' in the
+]]			[count] |section|s forward or to the next '{' in the
 			first column.  When used after an operator, then also
 			stops below a '}' in the first column.  |exclusive|
 			Note that |exclusive-linewise| often applies.
 
 							*][*
-][			[count] sections forward or to the next '}' in the
+][			[count] |section|s forward or to the next '}' in the
 			first column.  |exclusive|
 			Note that |exclusive-linewise| often applies.
 
 							*[[*
-[[			[count] sections backward or to the previous '{' in
+[[			[count] |section|s backward or to the previous '{' in
 			the first column.  |exclusive|
 			Note that |exclusive-linewise| often applies.
 
 							*[]*
-[]			[count] sections backward or to the previous '}' in
+[]			[count] |section|s backward or to the previous '}' in
 			the first column.  |exclusive|
 			Note that |exclusive-linewise| often applies.
 
--- a/runtime/doc/netbeans.txt
+++ b/runtime/doc/netbeans.txt
@@ -1,4 +1,4 @@
-*netbeans.txt*  For Vim version 8.2.  Last change: 2020 Nov 02
+*netbeans.txt*  For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Gordon Prieur et al.
@@ -124,12 +124,12 @@ 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,
-Athena and Motif.
+by gvim when it is run with one of the following GUIs: GTK, GNOME, Windows
+and Motif.
 
 							*netbeans-xpm*
 If Motif support is required the user must supply XPM libraries.
-The XPM library is required to show images within Vim with Motif or Athena.
+The XPM library is required to show images within Vim with Motif.
 Without it the toolbar and signs will be disabled.
 
 The XPM library is provided by Arnaud Le Hors of the French National Institute
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.2.  Last change: 2022 Mar 29
+*options.txt*	For Vim version 8.2.  Last change: 2022 Apr 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -87,7 +87,7 @@ 1. Setting options					*set-option* *E76
 :se[t] {option}+={value}				*:set+=*
 			Add the {value} to a number option, or append the
 			{value} to a string option.  When the option is a
-			comma separated list, a comma is added, unless the
+			comma-separated list, a comma is added, unless the
 			value was empty.
 			If the option is a list of flags, superfluous flags
 			are removed.  When adding a flag that was already
@@ -97,7 +97,7 @@ 1. Setting options					*set-option* *E76
 :se[t] {option}^={value}				*:set^=*
 			Multiply the {value} to a number option, or prepend
 			the {value} to a string option.  When the option is a
-			comma separated list, a comma is added, unless the
+			comma-separated list, a comma is added, unless the
 			value was empty.
 			Also see |:set-args| above.
 
@@ -1019,7 +1019,7 @@ A jump table for the options with a shor
 'backupcopy' 'bkc'	string	(Vi default for Unix: "yes", otherwise: "auto")
 			global or local to buffer |global-local|
 	When writing a file and a backup is made, this option tells how it's
-	done.  This is a comma separated list of words.
+	done.  This is a comma-separated list of words.
 
 	The main values are:
 	"yes"	make a copy of the file and overwrite the original one
@@ -1043,10 +1043,10 @@ A jump table for the options with a shor
 	  file.
 	- When the file is a link the new file will not be a link.
 
-	The "auto" value is the middle way: When Vim sees that renaming file
-	is possible without side effects (the attributes can be passed on and
-	the file is not a link) that is used.  When problems are expected, a
-	copy will be made.
+	The "auto" value is the middle way: When Vim sees that renaming the
+	file is possible without side effects (the attributes can be passed on
+	and the file is not a link) that is used.  When problems are expected,
+	a copy will be made.
 
 	The "breaksymlink" and "breakhardlink" values can be used in
 	combination with any of "yes", "no" and "auto".  When included, they
@@ -1065,13 +1065,13 @@ A jump table for the options with a shor
 
 	When a copy is made, the original file is truncated and then filled
 	with the new text.  This means that protection bits, owner and
-	symbolic links of the original file are unmodified.  The backup file
+	symbolic links of the original file are unmodified.  The backup file,
 	however, is a new file, owned by the user who edited the file.  The
 	group of the backup is set to the group of the original file.  If this
 	fails, the protection bits for the group are made the same as for
 	others.
 
-	When the file is renamed this is the other way around: The backup has
+	When the file is renamed, this is the other way around: The backup has
 	the same attributes of the original file, and the newly written file
 	is owned by the current user.  When the file was a (hard/symbolic)
 	link, the new file will not!  That's why the "auto" value doesn't
@@ -1138,7 +1138,7 @@ A jump table for the options with a shor
 	accidentally overwriting existing files with a backup file.  You might
 	prefer using ".bak", but make sure that you don't have files with
 	".bak" that you want to keep.
-	Only normal file name characters can be used, "/\*?[|<>" are illegal.
+	Only normal file name characters can be used; "/\*?[|<>" are illegal.
 
 	If you like to keep a lot of backups, you could use a BufWritePre
 	autocommand to change 'backupext' just before writing the file to
@@ -1402,7 +1402,7 @@ A jump table for the options with a shor
 						*'browsedir'* *'bsdir'*
 'browsedir' 'bsdir'	string	(default: "last")
 			global
-			{only for Motif, Athena, GTK, Mac and Win32 GUI}
+			{only for Motif, GTK, Mac and Win32 GUI}
 	Which directory to use for the file browser:
 	   last		Use same directory as with last file browser, where a
 			file was opened or saved.
@@ -1416,16 +1416,16 @@ A jump table for the options with a shor
 	This option specifies what happens when a buffer is no longer
 	displayed in a window:
 	  <empty>	follow the global 'hidden' option
-	  hide		hide the buffer (don't unload it), also when 'hidden'
-			is not set
-	  unload	unload the buffer, also when 'hidden' is set or using
-			|:hide|
-	  delete	delete the buffer from the buffer list, also when
-			'hidden' is set or using |:hide|, like using
-			|:bdelete|
-	  wipe		wipe out the buffer from the buffer list, also when
-			'hidden' is set or using |:hide|, like using
-			|:bwipeout|
+	  hide		hide the buffer (don't unload it), even if 'hidden' is
+			not set
+	  unload	unload the buffer, even if 'hidden' is set; the
+			|:hide| command will also unlod the buffer
+	  delete	delete the buffer from the buffer list, even if
+			'hidden' is set; the |:hide| command will also delete
+			the buffer, making it behave like |:bdelete|
+	  wipe		wipe the buffer from the buffer list, even if
+			'hidden' is set; the |:hide| command will also wipe
+			out the buffer, making it behave like |:bwipeout|
 
 	CAREFUL: when "unload", "delete" or "wipe" is used changes in a buffer
 	are lost without a warning.  Also, these values may break autocommands
@@ -1778,7 +1778,7 @@ A jump table for the options with a shor
 			local to window
 			{not available when compiled without the |+syntax|
 			feature}
-	'colorcolumn' is a comma separated list of screen columns that are
+	'colorcolumn' is a comma-separated list of screen columns that are
 	highlighted with ColorColumn |hl-ColorColumn|.  Useful to align
 	text.  Will make screen redrawing slower.
 	The screen column can be an absolute number, or a number preceded with
@@ -1812,7 +1812,7 @@ A jump table for the options with a shor
 'comments' 'com'	string	(default
 				"s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-")
 			local to buffer
-	A comma separated list of strings that can start a comment line.  See
+	A comma-separated list of strings that can start a comment line.  See
 	|format-comments|.  See |option-backslash| about using backslashes to
 	insert a space.
 
@@ -1953,7 +1953,7 @@ A jump table for the options with a shor
 	This option specifies how keyword completion |ins-completion| works
 	when CTRL-P or CTRL-N are used.  It is also used for whole-line
 	completion |i_CTRL-X_CTRL-L|.  It indicates the type of completion
-	and the places to scan.  It is a comma separated list of flags:
+	and the places to scan.  It is a comma-separated list of flags:
 	.	scan the current buffer ('wrapscan' is ignored)
 	w	scan buffers from other windows
 	b	scan other loaded buffers that are in the buffer list
@@ -2022,7 +2022,7 @@ A jump table for the options with a shor
 						*'completeopt'* *'cot'*
 'completeopt' 'cot'	string	(default: "menu,preview")
 			global
-	A comma separated list of options for Insert mode completion
+	A comma-separated list of options for Insert mode completion
 	|ins-completion|.  The supported values are:
 
 	   menu	    Use a popup menu to show the possible completions.  The
@@ -2638,7 +2638,7 @@ A jump table for the options with a shor
 			local to window
 			{not available when compiled without the |+syntax|
 			feature}
-	Comma separated list of settings for how 'cursorline' is displayed.
+	Comma-separated list of settings for how 'cursorline' is displayed.
 	Valid values:
 	"line"		Highlight the text line of the cursor with
 			CursorLine |hl-CursorLine|.
@@ -2918,7 +2918,7 @@ A jump table for the options with a shor
 'display' 'dy'		string	(default "", set to "truncate" in
 							       |defaults.vim|)
 			global
-	Change the way text is displayed.  This is comma separated list of
+	Change the way text is displayed.  This is comma-separated list of
 	flags:
 	lastline	When included, as much as possible of the last line
 			in a window will be displayed.  "@@@" is put in the
@@ -3122,7 +3122,7 @@ A jump table for the options with a shor
 	A list of autocommand event names, which are to be ignored.
 	When set to "all" or when "all" is one of the items, all autocommand
 	events are ignored, autocommands will not be executed.
-	Otherwise this is a comma separated list of event names.  Example: >
+	Otherwise this is a comma-separated list of event names.  Example: >
 	    :set ei=WinEnter,WinLeave
 <
 				 *'expandtab'* *'et'* *'noexpandtab'* *'noet'*
@@ -3382,7 +3382,7 @@ A jump table for the options with a shor
 			{not available when compiled without the |+folding|
 			feature}
 	Characters to fill the statuslines and vertical separators.
-	It is a comma separated list of items:
+	It is a comma-separated list of items:
 
 	  item		default		Used for ~
 	  stl:c		' ' or '^'	statusline of the current window
@@ -3572,7 +3572,7 @@ A jump table for the options with a shor
 			{not available when compiled without the |+folding|
 			feature}
 	Specifies for which type of commands folds will be opened, if the
-	command moves the cursor into a closed fold.  It is a comma separated
+	command moves the cursor into a closed fold.  It is a comma-separated
 	list of items.
 	NOTE: When the command is part of a mapping this option is not used.
 	Add the |zv| command to the mapping to get the same effect.
@@ -3790,7 +3790,7 @@ A jump table for the options with a shor
 	For a console the 't_SI', 't_SR', and 't_EI' escape sequences are
 	used.
 
-	The option is a comma separated list of parts.  Each part consist of a
+	The option is a comma-separated list of parts.  Each part consist of a
 	mode-list and an argument-list:
 		mode-list:argument-list,mode-list:argument-list,..
 	The mode-list is a dash separated list of these modes:
@@ -3909,7 +3909,7 @@ A jump table for the options with a shor
 						*'guioptions'* *'go'*
 'guioptions' 'go'	string	(default "egmrLtT"   (MS-Windows,
 					   "t" is removed in |defaults.vim|),
-					 "aegimrLtT" (GTK, Motif and Athena),
+					 "aegimrLtT" (GTK and Motif),
 					 )
 			global
 			{only available when compiled with GUI enabled}
@@ -3990,13 +3990,12 @@ A jump table for the options with a shor
 								*'go-g'*
 	  'g'	Grey menu items: Make menu items that are not active grey.  If
 		'g' is not included inactive menu items are not shown at all.
-		Exception: Athena will always use grey menu items.
 								*'go-t'*
 	  't'	Include tearoff menu items.  Currently only works for Win32,
 		GTK+, and Motif 1.2 GUI.
 								*'go-T'*
-	  'T'	Include Toolbar.  Currently only in Win32, GTK+, Motif, Photon
-		and Athena GUIs.
+	  'T'	Include Toolbar.  Currently only in Win32, GTK+, Motif and
+		Photon GUIs.
 								*'go-r'*
 	  'r'	Right-hand scrollbar is always present.
 								*'go-R'*
@@ -4102,7 +4101,7 @@ A jump table for the options with a shor
 			global
 			{only available when compiled with the |+multi_lang|
 			feature}
-	Comma separated list of languages.  Vim will use the first language
+	Comma-separated list of languages.  Vim will use the first language
 	for which the desired help can be found.  The English help will always
 	be used as a last resort.  You can add "en" to prefer English over
 	another language, but that will only find tags that exist in that
@@ -4121,10 +4120,14 @@ A jump table for the options with a shor
 	When off a buffer is unloaded when it is |abandon|ed.  When on a
 	buffer becomes hidden when it is |abandon|ed.  If the buffer is still
 	displayed in another window, it does not become hidden, of course.
+
 	The commands that move through the buffer list sometimes make a buffer
-	hidden although the 'hidden' option is off: When the buffer is
-	modified, 'autowrite' is off or writing is not possible, and the '!'
-	flag was used.  See also |windows.txt|.
+	hidden even if the 'hidden' option is off when these three are true:
+	- the buffer is modified
+	- 'autowrite' is off or writing is not possible
+	- the '!' flag was used
+	Also see |windows.txt|.
+
 	To only make one buffer hidden use the 'bufhidden' option.
 	This option is set for one command with ":hide {command}" |:hide|.
 	WARNING: It's easy to forget that you have changes in hidden buffers.
@@ -4150,7 +4153,7 @@ A jump table for the options with a shor
 				     z:StatusLineTerm,Z:StatusLineTermNC")
 			global
 	This option can be used to set highlighting mode for various
-	occasions.  It is a comma separated list of character pairs.  The
+	occasions.  It is a comma-separated list of character pairs.  The
 	first character in a pair gives the occasion, the second the mode to
 	use for that occasion.  The occasions are:
 	|hl-SpecialKey|	 8  Meta and special keys listed with ":map"
@@ -4405,7 +4408,7 @@ A jump table for the options with a shor
 	|i_CTRL-^|.
 	The value is set to 1 when setting 'keymap' to a valid keymap name.
 	It is also used for the argument of commands like "r" and "f".
-	The value 0 may not work correctly with Athena and Motif with some XIM
+	The value 0 may not work correctly with Motif with some XIM
 	methods.  Use 'imdisable' to disable XIM then.
 
 	You can set 'imactivatefunc' and 'imstatusfunc' to handle IME/XIM
@@ -4426,7 +4429,7 @@ A jump table for the options with a shor
 	|c_CTRL-^|.
 	The value is set to 1 when it is not -1 and setting the 'keymap'
 	option to a valid keymap name.
-	The value 0 may not work correctly with Athena and Motif with some XIM
+	The value 0 may not work correctly with Motif with some XIM
 	methods.  Use 'imdisable' to disable XIM then.
 
 						*'imstatusfunc'* *'imsf'*
@@ -4817,7 +4820,7 @@ A jump table for the options with a shor
 					*'keymodel'* *'km'*
 'keymodel' 'km'		string	(default "")
 			global
-	List of comma separated words, which enable special things that keys
+	List of comma-separated words, which enable special things that keys
 	can do.  These values can be used:
 	   startsel	Using a shifted special key starts selection (either
 			Select mode or Visual mode, depending on "key" being
@@ -5018,7 +5021,7 @@ A jump table for the options with a shor
 			global or local to buffer |global-local|
 			{not available when compiled without the |+lispindent|
 			feature}
-	Comma separated list of words that influence the Lisp indenting.
+	Comma-separated list of words that influence the Lisp indenting.
 	|'lisp'|
 
 						*'list'* *'nolist'*
@@ -5042,7 +5045,7 @@ A jump table for the options with a shor
 'listchars' 'lcs'	string	(default "eol:$")
 			global or local to window |global-local|
 	Strings to use in 'list' mode and for the |:list| command.  It is a
-	comma separated list of string settings.
+	comma-separated list of string settings.
 							*lcs-eol*
 	  eol:c		Character to show at the end of each line.  When
 			omitted, there is no extra character at the end of the
@@ -5547,7 +5550,7 @@ A jump table for the options with a shor
 			{only available when compiled with the |+mouseshape|
 			feature}
 	This option tells Vim what the mouse pointer should look like in
-	different modes.  The option is a comma separated list of parts, much
+	different modes.  The option is a comma-separated list of parts, much
 	like used for 'guicursor'.  Each part consist of a mode/location-list
 	and an argument-list:
 		mode-list:shape,mode-list:shape,..
@@ -6688,7 +6691,7 @@ A jump table for the options with a shor
 						*'selectmode'* *'slm'*
 'selectmode' 'slm'	string	(default "")
 			global
-	This is a comma separated list of words, which specifies when to start
+	This is a comma-separated list of words, which specifies when to start
 	Select mode instead of Visual mode, when a selection is started.
 	Possible values:
 	   mouse	when using the mouse
@@ -7307,7 +7310,7 @@ A jump table for the options with a shor
 	commands.  It must end in ".{encoding}.add".  You need to include the
 	path, otherwise the file is placed in the current directory.
 								*E765*
-	It may also be a comma separated list of names.  A count before the
+	It may also be a comma-separated list of names.  A count before the
 	|zg| and |zw| commands can be used to access each.  This allows using
 	a personal word list file and a project word list file.
 	When a word is added while this option is empty Vim will set it for
@@ -7329,7 +7332,7 @@ A jump table for the options with a shor
 			local to buffer
 			{not available when compiled without the |+syntax|
 			feature}
-	A comma separated list of word list names.  When the 'spell' option is
+	A comma-separated list of word list names.  When the 'spell' option is
 	on spellchecking will be done for these languages.  Example: >
 		set spelllang=en_us,nl,medical
 <	This means US English, Dutch and medical words are recognized.  Words
@@ -7374,7 +7377,7 @@ A jump table for the options with a shor
 			local to buffer
 			{not available when compiled without the |+syntax|
 			feature}
-	A comma separated list of options for spell checking:
+	A comma-separated list of options for spell checking:
 	   camel	When a word is CamelCased, assume "Cased" is a
 			separate word: every upper-case character in a word
 			that comes after a lower case character indicates the
@@ -7679,7 +7682,7 @@ A jump table for the options with a shor
 			local to buffer
 			{not available when compiled without the
 			|+file_in_path| feature}
-	Comma separated list of suffixes, which are used when searching for a
+	Comma-separated list of suffixes, which are used when searching for a
 	file for the "gf", "[I", etc. commands.  Example: >
 		:set suffixesadd=.java
 <
@@ -7725,7 +7728,7 @@ A jump table for the options with a shor
 	This option controls the behavior when switching between buffers.
 	Mostly for |quickfix| commands some values are also used for other
 	commands, as mentioned below.
-	Possible values (comma separated list):
+	Possible values (comma-separated list):
 	   useopen	If included, jump to the first open window that
 			contains the specified buffer (if there is one).
 			Otherwise: Do not examine other windows.
@@ -8358,8 +8361,7 @@ A jump table for the options with a shor
 				*'toolbar'* *'tb'*
 'toolbar' 'tb'		string	(default "icons,tooltips")
 			global
-			{only for |+GUI_GTK|, |+GUI_Athena|, |+GUI_Motif| and
-			|+GUI_Photon|}
+			{only for |+GUI_GTK|, |+GUI_Motif| and |+GUI_Photon|}
 	The contents of this option controls various toolbar settings.  The
 	possible values are:
 		icons		Toolbar buttons are shown with icons.
@@ -8373,7 +8375,7 @@ A jump table for the options with a shor
 	If you want the toolbar to be shown with icons as well as text, do the
 	following: >
 		:set tb=icons,text
-<	Motif and Athena cannot display icons and text at the same time.  They
+<	Motif cannot display icons and text at the same time.  They
 	will show icons if both are requested.
 
 	If none of the strings specified in 'toolbar' are valid or if
@@ -8692,7 +8694,7 @@ A jump table for the options with a shor
 			global
 			{not available when compiled without the |+mksession|
 			feature}
-	Changes the effect of the |:mkview| command.  It is a comma separated
+	Changes the effect of the |:mkview| command.  It is a comma-separated
 	list of words.  Each word enables saving and restoring something:
 	   word		save and restore ~
 	   cursor	cursor position in file and in window
@@ -8722,7 +8724,7 @@ A jump table for the options with a shor
 	When non-empty, the viminfo file is read upon startup and written
 	when exiting Vim (see |viminfo-file|). Except when 'viminfofile' is
 	"NONE".
-	The string should be a comma separated list of parameters, each
+	The string should be a comma-separated list of parameters, each
 	consisting of a single character identifying the particular parameter,
 	followed by a number or string which specifies the value of that
 	parameter.  If a particular character is left out, then the default
@@ -8845,7 +8847,7 @@ A jump table for the options with a shor
 					    *'virtualedit'* *'ve'*
 'virtualedit' 've'	string	(default "")
 			global or local to window |global-local|
-	A comma separated list of these words:
+	A comma-separated list of these words:
 	    block	Allow virtual editing in Visual block mode.
 	    insert	Allow virtual editing in Insert mode.
 	    all		Allow virtual editing in all modes.
@@ -9061,7 +9063,7 @@ A jump table for the options with a shor
 'wildmode' 'wim'	string	(Vim default: "full")
 			global
 	Completion mode that is used for the character specified with
-	'wildchar'.  It is a comma separated list of up to four parts.  Each
+	'wildchar'.  It is a comma-separated list of up to four parts.  Each
 	part specifies what to do for each consecutive use of 'wildchar'.  The
 	first part specifies the behavior for the first use of 'wildchar',
 	The second part for the second use, etc.
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt*  For Vim version 8.2.  Last change: 2021 Aug 16
+*pi_netrw.txt*  For Vim version 8.2.  Last change: 2022 Apr 06
 
 	    ------------------------------------------------
 	    NETRW REFERENCE MANUAL    by Charles E. Campbell
@@ -2815,7 +2815,7 @@ your browsing preferences.  (see also: |
 				= 2: wide listing (multiple files in columns)
 				= 3: tree style listing
 
-  *g:netrw_list_hide*		comma separated pattern list for hiding files
+  *g:netrw_list_hide*		comma-separated pattern list for hiding files
 				Patterns are regular expressions (see |regexp|)
 				There's some special support for git-ignore
 				files: you may add the output from the helper
--- a/runtime/doc/popup.txt
+++ b/runtime/doc/popup.txt
@@ -1,4 +1,4 @@
-*popup.txt*  For Vim version 8.2.  Last change: 2022 Jan 08
+*popup.txt*  For Vim version 8.2.  Last change: 2022 Apr 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 8.2.  Last change: 2021 Dec 21
+*quickref.txt*  For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -815,6 +815,7 @@ Short explanation of each option:		*opti
 'mousefocus'	  'mousef'  keyboard focus follows the mouse
 'mousehide'	  'mh'	    hide mouse pointer while typing
 'mousemodel'	  'mousem'  changes meaning of mouse buttons
+'mousemoveevent'  'mousemev'  report mouse moves with <MouseMove>
 'mouseshape'	  'mouses'  shape of the mouse pointer in different modes
 'mousetime'	  'mouset'  max time between mouse double-click
 'mzquantum'	  'mzq'     the interval between polls for MzScheme threads
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 8.2.  Last change: 2022 Mar 30
+*repeat.txt*    For Vim version 8.2.  Last change: 2022 Apr 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
--- a/runtime/doc/rileft.txt
+++ b/runtime/doc/rileft.txt
@@ -1,4 +1,4 @@
-*rileft.txt*    For Vim version 8.2.  Last change: 2021 Jun 13
+*rileft.txt*    For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Avner Lottem
@@ -110,9 +110,6 @@ o  Does not support reverse insert and r
 o  Somewhat slower in right-to-left mode, because right-to-left motion is
    emulated inside Vim, not by the controlling terminal.
 
-o  When the Athena GUI is used, the bottom scrollbar works in the wrong
-   direction.  This is difficult to fix.
-
 o  When both 'rightleft' and 'revins' are on: 'textwidth' does not work.
    Lines do not wrap at all; you just get a single, long line.
 
--- a/runtime/doc/scroll.txt
+++ b/runtime/doc/scroll.txt
@@ -1,4 +1,4 @@
-*scroll.txt*    For Vim version 8.2.  Last change: 2019 May 13
+*scroll.txt*    For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -242,7 +242,7 @@ dragging the scrollbar of the current wi
 depends on your mouse driver.  If the scroll action causes input focus
 problems, see |intellimouse-wheel-problems|.
 
-For the X11 GUIs (Motif, Athena and GTK) scrolling the wheel generates key
+For the X11 GUIs (Motif and GTK) scrolling the wheel generates key
 presses <ScrollWheelUp>, <ScrollWheelDown>, <ScrollWheelLeft> and
 <ScrollWheelRight>.  For example, if you push the scroll wheel upwards a
 <ScrollWheelUp> key press is generated causing the window to scroll upwards
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 8.2.  Last change: 2022 Mar 02
+*syntax.txt*	For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -4898,7 +4898,7 @@ in their own color.
 :hi[ghlight] {group-name}
 			List one highlight group.
 
-						*highlight-clear*
+						*highlight-clear* *:hi-clear*
 :hi[ghlight] clear	Reset all highlighting to the defaults.  Removes all
 			highlighting for groups added by the user!
 			Uses the current value of 'background' to decide which
@@ -4961,7 +4961,7 @@ 1. highlight arguments for normal termin
 					*inverse* *italic* *standout*
 					*nocombine* *strikethrough*
 term={attr-list}			*attr-list* *highlight-term* *E418*
-	attr-list is a comma separated list (without spaces) of the
+	attr-list is a comma-separated list (without spaces) of the
 	following items (in any order):
 		bold
 		underline
@@ -5145,7 +5145,7 @@ font={font-name}					*highlight-font*
 	When setting the font for the "Normal" group, this becomes the default
 	font (until the 'guifont' option is changed; the last one set is
 	used).
-	The following only works with Motif and Athena, not with other GUIs:
+	The following only works with Motif, not with other GUIs:
 	When setting the font for the "Menu" group, the menus will be changed.
 	When setting the font for the "Tooltip" group, the tooltips will be
 	changed.
@@ -5382,7 +5382,7 @@ Menu		Current font, background and foreg
 		Also used for the toolbar.
 		Applicable highlight arguments: font, guibg, guifg.
 
-		NOTE: For Motif and Athena the font argument actually
+		NOTE: For Motif the font argument actually
 		specifies a fontset at all times, no matter if 'guifontset' is
 		empty, and as such it is tied to the current |:language| when
 		set.
@@ -5396,7 +5396,7 @@ Scrollbar	Current background and foregro
 Tooltip		Current font, background and foreground of the tooltips.
 		Applicable highlight arguments: font, guibg, guifg.
 
-		NOTE: For Motif and Athena the font argument actually
+		NOTE: For Motif the font argument actually
 		specifies a fontset at all times, no matter if 'guifontset' is
 		empty, and as such it is tied to the current |:language| when
 		set.
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -134,6 +134,8 @@
 'cinkeys'	options.txt	/*'cinkeys'*
 'cino'	options.txt	/*'cino'*
 'cinoptions'	options.txt	/*'cinoptions'*
+'cinscopedecls'	options.txt	/*'cinscopedecls'*
+'cinsd'	options.txt	/*'cinsd'*
 'cinw'	options.txt	/*'cinw'*
 'cinwords'	options.txt	/*'cinwords'*
 'clipboard'	options.txt	/*'clipboard'*
@@ -487,7 +489,9 @@
 'mousefocus'	options.txt	/*'mousefocus'*
 'mousehide'	options.txt	/*'mousehide'*
 'mousem'	options.txt	/*'mousem'*
+'mousemev'	options.txt	/*'mousemev'*
 'mousemodel'	options.txt	/*'mousemodel'*
+'mousemoveevent'	options.txt	/*'mousemoveevent'*
 'mouses'	options.txt	/*'mouses'*
 'mouseshape'	options.txt	/*'mouseshape'*
 'mouset'	options.txt	/*'mouset'*
@@ -2546,6 +2550,7 @@ 90.5	usr_90.txt	/*90.5*
 :helpt	helphelp.txt	/*:helpt*
 :helptags	helphelp.txt	/*:helptags*
 :hi	syntax.txt	/*:hi*
+:hi-clear	syntax.txt	/*:hi-clear*
 :hi-default	syntax.txt	/*:hi-default*
 :hi-link	syntax.txt	/*:hi-link*
 :hi-normal	syntax.txt	/*:hi-normal*
@@ -3616,6 +3621,7 @@ 90.5	usr_90.txt	/*90.5*
 <MiddleRelease>	term.txt	/*<MiddleRelease>*
 <Mouse>	term.txt	/*<Mouse>*
 <MouseDown>	scroll.txt	/*<MouseDown>*
+<MouseMove>	map.txt	/*<MouseMove>*
 <MouseUp>	scroll.txt	/*<MouseUp>*
 <NL>	motion.txt	/*<NL>*
 <Nop>	map.txt	/*<Nop>*
@@ -3771,7 +3777,6 @@ Aleph	options.txt	/*Aleph*
 Amiga	os_amiga.txt	/*Amiga*
 Arabic	arabic.txt	/*Arabic*
 Atari	os_mint.txt	/*Atari*
-Athena	gui_x11.txt	/*Athena*
 B	motion.txt	/*B*
 BeBox	os_beos.txt	/*BeBox*
 BeOS	os_beos.txt	/*BeOS*
@@ -5513,6 +5518,7 @@ WinClosed	autocmd.txt	/*WinClosed*
 WinEnter	autocmd.txt	/*WinEnter*
 WinLeave	autocmd.txt	/*WinLeave*
 WinNew	autocmd.txt	/*WinNew*
+WinScrolled	autocmd.txt	/*WinScrolled*
 X	change.txt	/*X*
 X11	options.txt	/*X11*
 X11-icon	gui_x11.txt	/*X11-icon*
@@ -5752,7 +5758,6 @@ assert_true()	testing.txt	/*assert_true(
 at	motion.txt	/*at*
 atan()	builtin.txt	/*atan()*
 atan2()	builtin.txt	/*atan2()*
-athena-intellimouse	gui.txt	/*athena-intellimouse*
 attr-list	syntax.txt	/*attr-list*
 author	intro.txt	/*author*
 auto-format	change.txt	/*auto-format*
@@ -6065,6 +6070,7 @@ changenr()	builtin.txt	/*changenr()*
 changetick	eval.txt	/*changetick*
 changing	change.txt	/*changing*
 channel	channel.txt	/*channel*
+channel-address	channel.txt	/*channel-address*
 channel-callback	channel.txt	/*channel-callback*
 channel-close	channel.txt	/*channel-close*
 channel-close-in	channel.txt	/*channel-close-in*
@@ -8257,6 +8263,7 @@ moo.vim	syntax.txt	/*moo.vim*
 more-compatible	version5.txt	/*more-compatible*
 more-prompt	message.txt	/*more-prompt*
 more-variables	eval.txt	/*more-variables*
+motif-intellimouse	gui.txt	/*motif-intellimouse*
 motion-count-multiplied	motion.txt	/*motion-count-multiplied*
 motion.txt	motion.txt	/*motion.txt*
 mouse-mode-table	term.txt	/*mouse-mode-table*
--- a/runtime/doc/term.txt
+++ b/runtime/doc/term.txt
@@ -1,4 +1,4 @@
-*term.txt*      For Vim version 8.2.  Last change: 2022 Mar 04
+*term.txt*      For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -833,7 +833,7 @@ select and copy the text to the system, 
 Another way is to temporarily use ":sh" to run a shell, copy the text, then
 exit the shell.  'mouse' can remain set to "a" then.
 							*xterm-clipboard*
-In the Athena and Motif GUI versions, when running in a terminal and there is
+In the Motif GUI version, when running in a terminal and there is
 access to the X-server (DISPLAY is set), the copy and paste will behave like
 in the GUI.  If not, the middle mouse button will insert the unnamed register.
 In that case, here is how you copy and paste a piece of text:
--- a/runtime/doc/terminal.txt
+++ b/runtime/doc/terminal.txt
@@ -1,4 +1,4 @@
-*terminal.txt*	For Vim version 8.2.  Last change: 2022 Jan 21
+*terminal.txt*	For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -674,7 +674,7 @@ term_getsize({buf})					*term_getsize()*
 
 term_getstatus({buf})					*term_getstatus()*
 		Get the status of terminal {buf}. This returns a String with
-		a comma separated list of these items:
+		a comma-separated list of these items:
 			running		job is running
 			finished	job has finished
 			normal		in Terminal-Normal mode
--- a/runtime/doc/testing.txt
+++ b/runtime/doc/testing.txt
@@ -1,4 +1,4 @@
-*testing.txt*	For Vim version 8.2.  Last change: 2022 Feb 10
+*testing.txt*	For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -174,22 +174,6 @@ test_gui_event({event}, {args})
 		    dragging:	1 to drag the scrollbar and 0 to click in the
 				scrollbar.
 
-		"scrollbar":
-		  Set or drag the left, right or horizontal scrollbar.  Only
-		  works when the scrollbar actually exists.  The supported
-		  items in {args} are:
-		    which:	scrollbar. The supported values are:
-				    left  Left scrollbar of the current window
-				    right Right scrollbar of the current window
-				    hor   Horizontal scrollbar
-		    value:	amount to scroll.  For the vertical scrollbars
-				the value can be 1 to the line-count of the
-				buffer.  For the horizontal scrollbar the
-				value can be between 1 and the maximum line
-				length, assuming 'wrap' is not set.
-		    dragging:	1 to drag the scrollbar and 0 to click in the
-				scrollbar.
-
 		"tabline":
 		  Inject a mouse click event on the tabline to select a
 		  tabpage. The supported items in {args} are:
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.2.  Last change: 2022 Mar 30
+*todo.txt*      For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,15 +38,10 @@ browser use: https://github.com/vim/vim/
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Allow for: "import autoload '../lib/script.vim'"
-    avoids going through 'runtimepath' and avoids name collisions.
-
-Really drop the Athena and NeXtaw GUI?  Decide end of March.
-
 Once Vim9 is stable:
 - Use Vim9 for more runtime files.
 - Check code coverage, add more tests if needed.
-	vim9execute.c  line 1900
+	vim9execute.c  line 3500
 	vim9expr.c
 	vim9instr.c
 	vim9script.c
@@ -55,6 +50,7 @@ Once Vim9 is stable:
 
 Further Vim9 improvements, possibly after launch:
 - Check performance with callgrind and kcachegrind.
+    getline()/substitute()/setline() in #5632
 - Better implementation for partial and tests for that.
 - when using "const" mark the variable type as const with TTFLAG_CONST, so
   that an error is given at compile time when trying to change it.  E.g. for a
@@ -200,7 +196,7 @@ Terminal emulator window:
 - When the job only outputs lines, we could handle resizing the terminal
   better: store lines separated by line breaks, instead of screen lines,
   then when the window is resized redraw those lines.
-- Redrawing is slow with Athena and Motif. (Ramel Eshed)
+- Redrawing is slow with Motif. (Ramel Eshed)
 - For the GUI fill termios with default values, perhaps like pangoterm:
   http://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/head:/main.c#L134
 - When 'encoding' is not utf-8, or the job is using another encoding, setup
@@ -231,6 +227,8 @@ Add expanding <script> which works like 
 
 Rename getdigraphlist -> digraph_getlist() etc.
 
+Can "CSI nr X" be used instead of outputting spaces?  Is it faster?  #8002
+
 Valgrind reports memory leaks in test_options.
 Valgrind reports overlapping memcpy in
     test_conceal.3
@@ -309,8 +307,7 @@ inconsistent with the documentation.
 Making breakat support multibyte characters (Yasuhiro Matsumoto, #6598)
 Scroll doesn't work correctly, why?
 
-glob() and globfile() do not always honor 'wildignorecase'. #8350
-globpath() does not use 'wildignorecase' at all?
+globpath() does not use 'wildignorecase' at all? (related to #8350)
 
 Add 'termguiattr' option, use "gui=" attributes in the terminal?  Would work
 with 'termguicolors'. #1740
@@ -2393,11 +2390,6 @@ probably causes this.
 'scrollbind' is not respected when deleting lines or undo. (Milan Vancura,
 2009 Jan 16)
 
-Document that default font in Athena can be set with resources:
-   XtDefaultFont: "9x15"
-   XtDefaultFontSet: "9x15"
-(Richard Sherman, 2009 Apr 12)
-
 Having "Syntax" in 'eventignore' for :bufdo may cause problems, e.g. for
 ":bufdo e" when buffers are open in windows.  ex_listdo(eap) could set the
 option only for when jumping to another buffer, not when the command argument
@@ -3239,7 +3231,7 @@ 8   When gui_init_font() is called with 
     the font name).
 
 
-Athena and Motif:
+Motif:
 6   New Motif toolbar button from Marcin Dalecki:
     - When the mouse pointer is over an Agide button the red becomes black.
       Something with the way colors are specified in the .xpm file.
@@ -3251,7 +3243,7 @@ 8   When using the resource "Vim*borderw
     wrong.
 9   XIM is disabled by default for SGI/IRIX.  Fix XIM so that 'imdisable' can
     be off by default.
-9   XIM doesn't work properly for Athena/Motif. (Yasuhiro Matsumoto)  For now,
+9   XIM doesn't work properly for Motif. (Yasuhiro Matsumoto)  For now,
     keep XIM active at all times when the input method has the preediting
     flag.
 8   X11: A menu that contains an umlaut is truncated at that character.
@@ -3269,27 +3261,6 @@ 8   When 'encoding' is different from th
     current locale.  Workaround: set 'langmenu'.
 
 
-Athena GUI:
-9   The first event for any button in the menu or toolbar appears to get lost.
-    The second click on a menu does work.
-9   When dragging the scrollbar thumb very fast, focus is only obtained in
-    the scrollbar itself.  And the thumb is no longer updated when moving
-    through files.
-7   The file selector is not resizable.  With a big font it is difficult to
-    read long file names. (Schroeder)
-4   Re-write the widget attachments and code so that we will not have to go
-    through and calculate the absolute position of every widget every time the
-    window is refreshed/changes size.  This will help the "flashing-widgets"
-    problem during a refresh.
-5   When starting gvim with all the default colors and then typing
-    ":hi Menu guibg=cyan", the menus change color but the background of the
-    pullright pixmap doesn't change colors.
-    If you type ":hi Menu guibg=cyan font=anyfont", then the pixmap changes
-    colors as it should.
-    Allocating a new pixmap and setting the resource doesn't change the
-    pullright pixmap's colors.  Why?  Possible Athena bug?
-
-
 Motif GUI:
 -   gui_mch_browsedir() is missing, browsedir() doesn't work nicely.
 7   Use XmStringCreateLocalized() instead of XmStringCreateSimple()?
@@ -3768,7 +3739,7 @@ Problems that will (probably) not be sol
 
 Most interesting new features to be added when all bugs have been fixed:
 -   Using ":exe edit fname" has escaping problems.  Use ":edit ++(fname)".
-    Thus use "++=" to give arguments as expressions, comma separated as if
+    Thus use "++=" to give arguments as expressions, comma-separated as if
     calling a function.
     With options: ":edit ++(['!', '++enc=abc'], ['+/pat'], fname)".
     Alternative: Make a function for Ex commands: cmd_edit().
@@ -5659,7 +5630,7 @@ Options:
 7   ":with option=value | command": temporarily set an option value and
     restore it after the command has executed.
 8   Make "old" number options that really give a number of effects into string
-    options that are a comma separated list.  The old number values should
+    options that are a comma-separated list.  The old number values should
     also be supported.
 8   Add commands to save and restore an option, which also preserves the flag
     that marks if the option was set.  Useful to keep the effect of setting
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 8.2.  Last change: 2022 Mar 04
+*various.txt*   For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -381,7 +381,7 @@ N  *+folding*		|folding|
    *+fork*		Unix only: |fork| shell commands
    *+float*		Floating point support
 N  *+gettext*		message translations |multi-lang|
-   *+GUI_Athena*	Unix only: Athena |GUI|
+-  *+GUI_Athena*	Unix only: Athena |GUI|
    *+GUI_neXtaw*	Unix only: neXtaw |GUI|
    *+GUI_GTK*		Unix only: GTK+ |GUI|
    *+GUI_Motif*		Unix only: Motif |GUI|
--- a/runtime/doc/version5.txt
+++ b/runtime/doc/version5.txt
@@ -1,4 +1,4 @@
-*version5.txt*  For Vim version 8.2.  Last change: 2021 Apr 05
+*version5.txt*  For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -2494,7 +2494,7 @@ regexp character classes (for fast synta
 
 ":set" now accepts "+=", |^=" and "-=": add or remove parts of a string
 option, add or subtract a number from a number option.  A comma is
-automagically inserted or deleted for options that are a comma separated list.
+automagically inserted or deleted for options that are a comma-separated list.
 
 Filetype feature, for autocommands.  Uses a file type instead of a pattern to
 match a file.  Currently only used for RISC OS.  (Leonard)
--- a/runtime/doc/version6.txt
+++ b/runtime/doc/version6.txt
@@ -1,4 +1,4 @@
-*version6.txt*  For Vim version 8.2.  Last change: 2021 Apr 05
+*version6.txt*  For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -12447,7 +12447,7 @@ Solution:   Make sure ".out" files are d
 Files:	    src/Make_bc5.mak, src/testdir/Make_dos.mak
 
 Patch 6.2.381
-Problem:    Setting 'fileencoding' to a comma separated list (confusing it
+Problem:    Setting 'fileencoding' to a comma-separated list (confusing it
 	    with 'fileencodings') does not result in an error message.
 	    Setting 'fileencoding' in an empty file marks it as modified.
 	    There is no "+" in the title after setting 'fileencoding'.
--- a/runtime/doc/vi_diff.txt
+++ b/runtime/doc/vi_diff.txt
@@ -1,4 +1,4 @@
-*vi_diff.txt*   For Vim version 8.2.  Last change: 2021 Jan 21
+*vi_diff.txt*   For Vim version 8.2.  Last change: 2022 Apr 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -160,8 +160,8 @@ Graphical User Interface (GUI).				|gui|
 	Included support for GUI: menu's, mouse, scrollbars, etc.  You can
 	define your own menus.  Better support for CTRL/SHIFT/ALT keys in
 	combination with special keys and mouse.  Supported for various
-	platforms, such as X11 (with Motif and Athena interfaces), GTK, Win32
-	(Windows XP and later), Amiga and Macintosh.
+	platforms, such as X11 with Motif, GTK, Win32 (Windows XP and later),
+	Amiga and Macintosh.
 
 Multiple windows and buffers.				|windows.txt|
 	Vim can split the screen into several windows, each editing a
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -1,4 +1,4 @@
-*vim9.txt*	For Vim version 8.2.  Last change: 2022 Mar 28
+*vim9.txt*	For Vim version 8.2.  Last change: 2022 Mar 30
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -185,7 +185,7 @@ For now you will need to pass the dictio
 	   echo d[arg]
 	enddef
 	var ad = {item: 'value', func: DictFunc}
-	ad.func(d, 'item')
+	ad.func(ad, 'item')
 
 You can call a legacy dict function though: >
 	func Legacy() dict
@@ -1745,7 +1745,8 @@ 1. In the plugin define user commands, f
    The "autoload" argument to `:import` means that the script is not loaded
    until one of the items is actually used.  The script will be found under
    the "autoload" directory in 'runtimepath' instead of the "import"
-   directory.
+   directory.  Alternatively a relative or absolute name can be used, see
+   below.
 
 2. In the autoload script put the bulk of the code. >
 	vim9script
@@ -1765,6 +1766,14 @@ 2. In the autoload script put the bulk o
    You can split up the functionality and import other scripts from the
    autoload script as you like.  This way you can share code between plugins.
 
+Searching for the autoload script in all entries in 'runtimepath' can be a bit
+slow.  If the plugin knows where the script is located, quite often a relative
+path can be used.  This avoids the search and should be quite a bit faster.
+Another advantage is that the script name does not need to be unique.  An
+absolute path is also possible.  Examples: >
+	import autoload '../lib/implement.vim'
+	import autoload MyScriptsDir .. '/lib/implement.vim'
+
 For defining a mapping that uses the imported autoload script the special key
 |<ScriptCmd>| is useful.  It allows for a command in a mapping to use the
 script context of where the mapping was defined.
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -1,4 +1,4 @@
-*windows.txt*   For Vim version 8.2.  Last change: 2022 Feb 03
+*windows.txt*   For Vim version 8.2.  Last change: 2022 Apr 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -892,7 +892,7 @@ windows.
 						*preview-popup*
 Alternatively, a popup window can be used by setting the 'previewpopup'
 option.  When set, it overrules the 'previewwindow' and 'previewheight'
-settings.  The option is a comma separated list of values:
+settings.  The option is a comma-separated list of values:
 	height		maximum height of the popup
 	width		maximum width of the popup
 	highlight	highlight group of the popup (default is Pmenu)
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
 " Vim support file to detect file types
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2022 Feb 13
+" Last Change:	2022 Apr 07
 
 " Listen very carefully, I will say this only once
 if exists("did_load_filetypes")
--- a/runtime/ftplugin/c.vim
+++ b/runtime/ftplugin/c.vim
@@ -1,7 +1,7 @@
 " Vim filetype plugin file
 " Language:	C
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2021 Sep 21
+" Last Change:	2022 Apr 08
 
 " Only do this when not done yet for this buffer
 if exists("b:did_ftplugin")
@@ -31,7 +31,8 @@ if exists('&ofu')
 endif
 
 " Set 'comments' to format dashed lists in comments.
-setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
+" Also include ///, used for Doxygen.
+setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,:///,://
 
 " In VMS C keywords contain '$' characters.
 if has("vms")
--- a/runtime/indent/ada.vim
+++ b/runtime/indent/ada.vim
@@ -16,6 +16,7 @@
 "		15.10.2006 MK Bram's suggestion for runtime integration
 "		05.11.2006 MK Bram suggested to save on spaces
 "		19.09.2007 NO g: missing before ada#Comment
+"		2022 April: b:undo_indent added by Doug Kearns
 "    Help Page: ft-vim-indent
 "------------------------------------------------------------------------------
 " ToDo:
@@ -35,6 +36,8 @@ setlocal indentexpr=GetAdaIndent()
 setlocal indentkeys-=0{,0}
 setlocal indentkeys+=0=~then,0=~end,0=~elsif,0=~when,0=~exception,0=~begin,0=~is,0=~record
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the functions once.
 if exists("*GetAdaIndent")
    finish
--- a/runtime/indent/awk.vim
+++ b/runtime/indent/awk.vim
@@ -24,6 +24,7 @@
 " 29-04-2002 Fixed problems in function headers and max line width
 "	     Added support for two-line if's without curly braces
 " Fixed hang: 2011 Aug 31
+" 2022 April: b:undo_indent added by Doug Kearns
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -36,6 +37,8 @@ setlocal indentexpr=GetAwkIndent()
 " Mmm, copied from the tcl indent program. Is this okay?
 setlocal indentkeys-=:,0#
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once.
 if exists("*GetAwkIndent")
     finish
--- a/runtime/indent/cdl.vim
+++ b/runtime/indent/cdl.vim
@@ -1,7 +1,7 @@
 " Description:	Comshare Dimension Definition Language (CDL)
 " Maintainer:	Raul Segura Acevedo <raulseguraaceved@netscape.net> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
-" Last Change:	Fri Nov 30 13:35:48  2001 CST
+" Last Change:	2022 Apr 06
 
 if exists("b:did_indent")
     "finish
@@ -12,6 +12,8 @@ setlocal indentexpr=CdlGetIndent(v:lnum)
 setlocal indentkeys&
 setlocal indentkeys+==~else,=~endif,=~then,;,),=
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once.
 if exists("*CdlGetIndent")
     "finish
--- a/runtime/indent/chaiscript.vim
+++ b/runtime/indent/chaiscript.vim
@@ -1,6 +1,7 @@
 " Vim indent file
 " Language:     ChaiScript
 " Maintainer:	Jason Turner <lefticus 'at' gmail com>
+" Last Change: 	2022 Apr 06
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -11,6 +12,8 @@ let b:did_indent = 1
 setlocal indentexpr=GetChaiScriptIndent()
 setlocal autoindent
 
+let b:undo_indent = "setl ai< inde<"
+
 " Only define the function once.
 if exists("*GetChaiScriptIndent")
   finish
--- a/runtime/indent/cmake.vim
+++ b/runtime/indent/cmake.vim
@@ -3,7 +3,7 @@
 " Author:       Andy Cedilnik <andy.cedilnik@kitware.com>
 " Maintainer:   Dimitri Merejkowsky <d.merej@gmail.com>
 " Former Maintainer: Karthik Krishnan <karthik.krishnan@kitware.com>
-" Last Change:  2017 Sep 24
+" Last Change:  2022 Apr 06
 "
 " Licence:      The CMake license applies to this file. See
 "               https://cmake.org/licensing
@@ -17,6 +17,8 @@ let b:did_indent = 1
 setlocal indentexpr=CMakeGetIndent(v:lnum)
 setlocal indentkeys+==ENDIF(,ENDFOREACH(,ENDMACRO(,ELSE(,ELSEIF(,ENDWHILE(
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once.
 if exists("*CMakeGetIndent")
   finish
--- a/runtime/indent/d.vim
+++ b/runtime/indent/d.vim
@@ -2,7 +2,7 @@
 " Language:	D
 " Maintainer:	Jason Mills <jmills@cs.mun.ca> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
-" Last Change:	2005 Nov 22
+" Last Change:	2022 Apr 06
 " Version:	0.1
 "
 " Please email me with bugs, comments, and suggestion. Put vim in the subject
@@ -19,4 +19,6 @@ let b:did_indent = 1
 " D indenting is a lot like the built-in C indenting.
 setlocal cindent
 
+let b:undo_indent = "setl cin<"
+
 " vim: ts=8 noet
--- a/runtime/indent/dictconf.vim
+++ b/runtime/indent/dictconf.vim
@@ -1,7 +1,7 @@
 " Vim indent file
 " Language:             dict(1) configuration file
 " Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
-" Latest Revision:      2006-12-20
+" Last Change:      	2022 Apr 06
 
 if exists("b:did_indent")
   finish
@@ -11,3 +11,5 @@ let b:did_indent = 1
 setlocal indentkeys=0{,0},!^F,o,O cinwords= autoindent smartindent
 setlocal nosmartindent
 inoremap <buffer> # X#
+
+let b:undo_indent = "setl ai< cinw< indk< si< | silent! iunmap <buffer> #"
--- a/runtime/indent/dictdconf.vim
+++ b/runtime/indent/dictdconf.vim
@@ -11,3 +11,5 @@ let b:did_indent = 1
 setlocal indentkeys=0{,0},!^F,o,O cinwords= autoindent smartindent
 setlocal nosmartindent
 inoremap <buffer> # X#
+
+let b:undo_indent = "setl ai< cinw< indk< si< | silent! iunmap <buffer> #"
--- a/runtime/indent/dylan.vim
+++ b/runtime/indent/dylan.vim
@@ -3,7 +3,7 @@
 " Maintainer:	Brent A. Fulgham <bfulgham@debian.org> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
 " Version:	0.01
-" Last Change:	2017 Jun 13
+" Last Change:	2022 Apr 06
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -15,6 +15,9 @@ setlocal indentkeys+==~begin,=~block,=~c
 
 " Define the appropriate indent function but only once
 setlocal indentexpr=DylanGetIndent()
+
+let b:undo_indent = "setl inde< indk<"
+
 if exists("*DylanGetIndent")
   finish
 endif
--- a/runtime/indent/falcon.vim
+++ b/runtime/indent/falcon.vim
@@ -3,6 +3,7 @@
 " Maintainer: Steven Oliver <oliver.steven@gmail.com>
 " Website: https://steveno@github.com/steveno/falconpl-vim.git
 " Credits: This is, to a great extent, a copy n' paste of ruby.vim.
+"		2022 April: b:undo_indent added by Doug Kearns
 
 " 1. Setup {{{1
 " ============
@@ -20,6 +21,8 @@ setlocal indentexpr=FalconGetIndent(v:ln
 setlocal indentkeys=0{,0},0),0],!^F,o,O,e
 setlocal indentkeys+==~case,=~catch,=~default,=~elif,=~else,=~end,=~\"
 
+let b:undo_indent = "setl inde< indk< si<"
+
 " Define the appropriate indent function but only once
 if exists("*FalconGetIndent")
     finish
--- a/runtime/indent/gitolite.vim
+++ b/runtime/indent/gitolite.vim
@@ -4,7 +4,7 @@
 "	(https://raw.githubusercontent.com/sitaramc/gitolite/master/contrib/vim/indent/gitolite.vim)
 " Maintainer:	Sitaram Chamarty <sitaramc@gmail.com>
 " (former Maintainer:	Teemu Matilainen <teemu.matilainen@iki.fi>)
-" Last Change:	2017 Oct 05
+" Last Change:	2022 Apr 06
 
 if exists("b:did_indent")
   finish
@@ -15,6 +15,8 @@ setlocal autoindent
 setlocal indentexpr=GetGitoliteIndent()
 setlocal indentkeys=o,O,*<Return>,!^F,=repo,\",=
 
+let b:undo_indent = "setl ai< inde< indk<"
+
 " Only define the function once.
 if exists("*GetGitoliteIndent")
   finish
--- a/runtime/indent/idlang.vim
+++ b/runtime/indent/idlang.vim
@@ -2,7 +2,7 @@
 " Language:	IDL (ft=idlang)
 " Maintainer:	Aleksandar Jelenak <ajelenak AT yahoo.com> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
-" Last change:	2017 Jun 13
+" Last change:	2022 Apr 06
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -14,6 +14,8 @@ setlocal indentkeys=o,O,0=endif,0=ENDIF,
 
 setlocal indentexpr=GetIdlangIndent(v:lnum)
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once.
 if exists("*GetIdlangIndent")
    finish
--- a/runtime/indent/make.vim
+++ b/runtime/indent/make.vim
@@ -2,7 +2,7 @@
 " Language:		Makefile
 " Maintainer:		Doug Kearns <dougkearns@gmail.com>
 " Previous Maintainer:	Nikolai Weibull <now@bitwi.se>
-" Last Change:		24 Sep 2021
+" Last Change:		2022 Apr 06
 
 if exists("b:did_indent")
   finish
@@ -13,7 +13,7 @@ setlocal indentexpr=GetMakeIndent()
 setlocal indentkeys=!^F,o,O,<:>,=else,=endif
 setlocal nosmartindent
 
-let b:undo_indent = "setl ai< inde< indk<"
+let b:undo_indent = "setl inde< indk< si<"
 
 if exists("*GetMakeIndent")
   finish
--- a/runtime/indent/mma.vim
+++ b/runtime/indent/mma.vim
@@ -3,6 +3,7 @@
 " Maintainer:	Steve Layland <layland@wolfram.com> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
 " Last Change:	Sat May  10 18:56:22 CDT 2005
+"		2022 April: b:undo_indent added by Doug Kearns
 " Source:	http://vim.sourceforge.net/scripts/script.php?script_id=1274
 " 		http://members.wolfram.com/layland/vim/indent/mma.vim
 "
@@ -26,6 +27,8 @@ setlocal indentexpr=GetMmaIndent()
 setlocal indentkeys+=0[,0],0(,0)
 setlocal nosi "turn off smart indent so we don't over analyze } blocks
 
+let b:undo_indent = "setl inde< indk< si<"
+
 if exists("*GetMmaIndent")
     finish
 endif
--- a/runtime/indent/nginx.vim
+++ b/runtime/indent/nginx.vim
@@ -1,7 +1,7 @@
 " Vim indent file
 " Language: nginx.conf
 " Maintainer: Chris Aumann <me@chr4.org>
-" Last Change: Apr 15, 2017
+" Last Change:  2022 Apr 06
 
 if exists("b:did_indent")
     finish
@@ -15,3 +15,5 @@ setlocal cindent
 
 " Just make sure that the comments are not reset as defs would be.
 setlocal cinkeys-=0#
+
+let b:undo_indent = "setl inde< cin< cink<"
--- a/runtime/indent/objc.vim
+++ b/runtime/indent/objc.vim
@@ -1,9 +1,7 @@
 "   Vim indent file
 "   Language:	    Objective-C
 "   Maintainer:	    Kazunobu Kuriyama <kazunobu.kuriyama@nifty.com>
-"   Last Change:    2004 May 16
-"
-
+"   Last Change:    2022 Apr 06
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -19,6 +17,8 @@ setlocal indentexpr=GetObjCIndent()
 setlocal indentkeys-=:
 setlocal indentkeys+=<:>
 
+let b:undo_indent = "setl cin< inde< indk<"
+
 " Only define the function once.
 if exists("*GetObjCIndent")
     finish
--- a/runtime/indent/occam.vim
+++ b/runtime/indent/occam.vim
@@ -2,7 +2,7 @@
 " Language:	occam
 " Maintainer:	Mario Schweigler <ms44@kent.ac.uk> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
-" Last Change:	23 April 2003
+" Last Change:	2022 Apr 06
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -17,6 +17,8 @@ setlocal indentexpr=GetOccamIndent()
 setlocal indentkeys=o,O,0=:
 "}}}
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once
 if exists("*GetOccamIndent")
   finish
--- a/runtime/indent/postscr.vim
+++ b/runtime/indent/postscr.vim
@@ -2,8 +2,8 @@
 " Language:	PostScript
 " Maintainer:	Mike Williams <mrw@netcomuk.co.uk> (Invalid email address)
 " 		Doug Kearns <dougkearns@gmail.com>
-" Last Change:	2nd July 2001
-"
+" Last Change:	2022 Apr 06
+
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -14,6 +14,8 @@ let b:did_indent = 1
 setlocal indentexpr=PostscrIndentGet(v:lnum)
 setlocal indentkeys+=0],0=>>,0=%%,0=end,0=restore,0=grestore indentkeys-=:,0#,e
 
+let b:undo_indent = "setl inde< indk<"
+
 " Catch multiple instantiations
 if exists("*PostscrIndentGet")
   finish
--- a/runtime/indent/prolog.vim
+++ b/runtime/indent/prolog.vim
@@ -4,6 +4,7 @@
 " 		Doug Kearns <dougkearns@gmail.com>
 "  Revised on:	2002.02.18. 23:34:05
 "  Last change by: Takuya Fujiwara, 2018 Sep 23
+"		2022 April: b:undo_indent added by Doug Kearns
 
 " TODO:
 "   checking with respect to syntax highlighting
@@ -21,6 +22,8 @@ setlocal indentexpr=GetPrologIndent()
 setlocal indentkeys-=:,0#
 setlocal indentkeys+=0%,-,0;,>,0)
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once.
 "if exists("*GetPrologIndent")
 "    finish
--- a/runtime/indent/sas.vim
+++ b/runtime/indent/sas.vim
@@ -2,7 +2,7 @@
 " Language:     SAS
 " Maintainer:   Zhen-Huan Hu <wildkeny@gmail.com>
 " Version:      3.0.3
-" Last Change:  Jun 26, 2018
+" Last Change:  2022 Apr 06
 
 if exists("b:did_indent")
   finish
@@ -12,6 +12,8 @@ let b:did_indent = 1
 setlocal indentexpr=GetSASIndent()
 setlocal indentkeys+=;,=~data,=~proc,=~macro
 
+let b:undo_indent = "setl inde< indk<"
+
 if exists("*GetSASIndent")
   finish
 endif
--- a/runtime/indent/sml.vim
+++ b/runtime/indent/sml.vim
@@ -7,10 +7,11 @@
 "               Mike Leary          <leary@nwlink.com>
 "               Markus Mottl        <markus@oefai.at>
 " OCaml URL:    http://www.oefai.at/~markus/vim/indent/ocaml.vim
-" Last Change:  2003 Jan 04	- Adapted to SML
+" Last Change:  2022 Apr 06
 " 				2002 Nov 06 - Some fixes (JY)
 "               2002 Oct 28 - Fixed bug with indentation of ']' (MM)
 "               2002 Oct 22 - Major rewrite (JY)
+"		2022 April: b:undo_indent added by Doug Kearns
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -26,6 +27,8 @@ setlocal nosmartindent
 setlocal textwidth=80
 setlocal shiftwidth=2
 
+let b:undo_indent = "setl et< inde< indk< lisp< si< sw< tw<"
+
 " Comment formatting
 if (has("comments"))
   set comments=sr:(*,mb:*,ex:*)
--- a/runtime/indent/systemverilog.vim
+++ b/runtime/indent/systemverilog.vim
@@ -2,6 +2,7 @@
 " Language:    SystemVerilog
 " Maintainer:  kocha <kocha.lsifrontend@gmail.com>
 " Last Change: 05-Feb-2017 by Bilal Wasim
+"		2022 April: b:undo_indent added by Doug Kearns
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -16,6 +17,8 @@ setlocal indentkeys+==endclass,=endpacka
 setlocal indentkeys+==endinterface,=endgroup,=endprogram,=endproperty,=endchecker
 setlocal indentkeys+==`else,=`endif
 
+let b:undo_indent = "setl inde< indk<"
+
 " Only define the function once.
 if exists("*SystemVerilogIndent")
   finish
--- a/runtime/optwin.vim
+++ b/runtime/optwin.vim
@@ -1,7 +1,7 @@
 " These commands create the option window.
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2021 Dec 21
+" Last Change:	2022 Apr 07
 
 " If there already is an option window, jump to that one.
 let buf = bufnr('option-window')
--- a/runtime/syntax/dep3patch.vim
+++ b/runtime/syntax/dep3patch.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:    Debian DEP3 Patch headers
 " Maintainer:  Gabriel Filion <gabster@lelutin.ca>
-" Last Change: 2021-01-09
+" Last Change: 2022 Apr 06
 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/dep3patch.vim
 "
 " Specification of the DEP3 patch header format is available at:
@@ -28,7 +28,7 @@ syn region dep3patchMultiField matchgrou
 syn region dep3patchMultiField matchgroup=dep3patchKey start="^Forwarded\ze: *" end="$" contained contains=dep3patchHTTPUrl,dep3patchForwardedShort oneline keepend
 syn region dep3patchMultiField matchgroup=dep3patchKey start="^\%(Author\|From\)\ze: *" end="$" contained contains=dep3patchEmail oneline keepend
 syn region dep3patchMultiField matchgroup=dep3patchKey start="^\%(Reviewed-by\|Acked-by\)\ze: *" end="$" contained contains=dep3patchEmail oneline keepend
-syn region dep3patchMultiField matchgroup=dep3patchKey start="^Last-Updated\ze: *" end="$" contained contains=dep3patchISODate oneline keepend
+syn region dep3patchMultiField matchgroup=dep3patchKey start="^Last-Update\ze: *" end="$" contained contains=dep3patchISODate oneline keepend
 syn region dep3patchMultiField matchgroup=dep3patchKey start="^Applied-Upstream\ze: *" end="$" contained contains=dep3patchHTTPUrl,dep3patchCommitID oneline keepend
 
 syn match dep3patchHTTPUrl contained "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
--- a/runtime/syntax/lua.vim
+++ b/runtime/syntax/lua.vim
@@ -2,7 +2,7 @@
 " Language:	Lua 4.0, Lua 5.0, Lua 5.1 and Lua 5.2
 " Maintainer:	Marcus Aurelius Farias <masserahguard-lua 'at' yahoo com>
 " First Author:	Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
-" Last Change:	2012 Aug 12
+" Last Change:	2022 Mar 31
 " Options:	lua_version = 4 or 5
 "		lua_subversion = 0 (4.0, 5.0) or 1 (5.1) or 2 (5.2)
 "		default 5.2
@@ -319,6 +319,15 @@ elseif lua_version == 5
     syn match luaFunc /\<debug\.upvalueid\>/
     syn match luaFunc /\<debug\.upvaluejoin\>/
   endif
+  if lua_subversion >= 3
+    "https://www.lua.org/manual/5.3/manual.html#6.5
+    syn match luaFunc /\<utf8\.char\>/
+    syn match luaFunc /\<utf8\.charpattern\>/
+    syn match luaFunc /\<utf8\.codes\>/
+    syn match luaFunc /\<utf8\.codepoint\>/
+    syn match luaFunc /\<utf8\.len\>/
+    syn match luaFunc /\<utf8\.offset\>/
+  endif
 endif
 
 " Define the default highlighting.
--- a/runtime/syntax/neomuttrc.vim
+++ b/runtime/syntax/neomuttrc.vim
@@ -2,10 +2,10 @@
 " Language:	NeoMutt setup files
 " Maintainer:	Richard Russon <rich@flatcap.org>
 " Previous Maintainer:	Guillaume Brogi <gui-gui@netcourrier.com>
-" Last Change:	2020-06-21
+" Last Change:	2022-04-08
 " Original version based on syntax/muttrc.vim
 
-" This file covers NeoMutt 2020-06-19
+" This file covers NeoMutt 2022-04-08
 
 " quit when a syntax file was already loaded
 if exists("b:current_syntax")
@@ -115,6 +115,8 @@ syntax region muttrcIndexFormatStr      
 syntax region muttrcIndexFormatStr      contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes           nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 syntax region muttrcMixFormatStr        contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors                                 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 syntax region muttrcMixFormatStr        contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors                                 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+syntax region muttrcPatternFormatStr    contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPatternFormatEscapes,muttrcPatternFormatConditionals,muttrcFormatErrors                                 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+syntax region muttrcPatternFormatStr    contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPatternFormatEscapes,muttrcPatternFormatConditionals,muttrcFormatErrors                                 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 syntax region muttrcPGPCmdFormatStr     contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors            nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 syntax region muttrcPGPCmdFormatStr     contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors            nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 syntax region muttrcPGPFormatStr        contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes            nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
@@ -144,35 +146,37 @@ function! s:escapesConditionals(baseName
 	endif
 endfunction
 
-" CHECKED 2020-06-21
-" Ref: alias_format_str() in alias/dlgalias.c
+" CHECKED 2022-04-08
+" Ref: alias_format_str() in alias/dlg_alias.c
 call s:escapesConditionals('AliasFormat', '[acfnrt]', 1, 0)
-" Ref: attach_format_str() in recvattach.c
+" Ref: attach_format_str() in attach/dlg_attach.c
 call s:escapesConditionals('AttachFormat', '[CcDdeFfIMmnQsTtuX]', 1, 1)
-" Ref: compose_format_str() in compose.c
+" Ref: compose_format_str() in compose/cbar.c
 call s:escapesConditionals('ComposeFormat', '[ahlv]', 1, 1)
-" Ref: folder_format_str() in browser.c
+" Ref: folder_format_str() in browser/browser.c
 call s:escapesConditionals('FolderFormat', '[CDdFfgilmNnstu]', 1, 0)
-" Ref: group_index_format_str() in browser.c
+" Ref: group_index_format_str() in nntp/browse.c
 call s:escapesConditionals('GroupIndexFormat', '[CdfMNns]', 1, 1)
 " Ref: index_format_str() in hdrline.c
 call s:escapesConditionals('IndexFormat', '[AaBbCDdEefgHIiJKLlMmNnOPqRrSsTtuvWXxYyZ(<[{]\|@\i\+@\|G[a-zA-Z]\+\|Fp\=\|z[cst]\|cr\=', 1, 1)
 " Ref: mix_format_str() in remailer.c
 call s:escapesConditionals('MixFormat', '[acns]', 1, 0)
+" Ref: pattern_format_str() in pattern/dlg_pattern.c
+call s:escapesConditionals('PatternFormat', '[den]', 1, 0)
 " Ref: pgp_command_format_str() in ncrypt/pgpinvoke.c
 call s:escapesConditionals('PGPCmdFormat', '[afprs]', 0, 1)
-" Ref: crypt_format_str() in ncrypt/crypt_gpgme.c
-" Ref: pgp_entry_format_str() in ncrypt/pgpkey.c
+" Ref: crypt_format_str() in ncrypt/dlg_gpgme.c
+" Ref: pgp_entry_format_str() in ncrypt/dlg_pgp.c
 " Note: crypt_format_str() supports 'p', but pgp_entry_fmt() does not
 call s:escapesConditionals('PGPFormat', '[AaCcFfKkLlnptu[]', 0, 0)
-" Ref: query_format_str() in alias/dlgquery.c
+" Ref: query_format_str() in alias/dlg_query.c
 call s:escapesConditionals('QueryFormat', '[acent]', 1, 1)
-" Ref: sidebar_format_str() in sidebar.c
+" Ref: sidebar_format_str() in sidebar/window.c
 call s:escapesConditionals('SidebarFormat', '[!BDdFLNnorStZ]', 1, 1)
 " Ref: smime_command_format_str() in ncrypt/smime.c
 call s:escapesConditionals('SmimeFormat', '[aCcdfiks]', 0, 1)
 " Ref: status_format_str() in status.c
-call s:escapesConditionals('StatusFormat', '[bDdFfhLlMmnoPpRrSstuVv]', 1, 1)
+call s:escapesConditionals('StatusFormat', '[bDdFfhLlMmnoPpRrSsTtuVv]', 1, 1)
 
 syntax region muttrcPGPTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes
 syntax region muttrcTimeEscapes    contained start=+%(+  end=+)+  contains=muttrcStrftimeEscapes
@@ -187,6 +191,7 @@ syntax match muttrcVarEqualsFolderFmt   
 syntax match muttrcVarEqualsGrpIdxFmt     contained skipwhite "=" nextgroup=muttrcGroupIndexFormatStr
 syntax match muttrcVarEqualsIdxFmt        contained skipwhite "=" nextgroup=muttrcIndexFormatStr
 syntax match muttrcVarEqualsMixFmt        contained skipwhite "=" nextgroup=muttrcMixFormatStr
+syntax match muttrcVarEqualsPatternFmt    contained skipwhite "=" nextgroup=muttrcPatternFormatStr
 syntax match muttrcVarEqualsPGPCmdFmt     contained skipwhite "=" nextgroup=muttrcPGPCmdFormatStr
 syntax match muttrcVarEqualsPGPFmt        contained skipwhite "=" nextgroup=muttrcPGPFormatStr
 syntax match muttrcVarEqualsQueryFmt      contained skipwhite "=" nextgroup=muttrcQueryFormatStr
@@ -197,9 +202,9 @@ syntax match muttrcVarEqualsStrftimeFmt 
 
 syntax match muttrcVPrefix contained /[?&]/ nextgroup=muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 
-" CHECKED 2020-06-21
-" List of the different screens in mutt (see Menus in keymap.c)
-syntax keyword muttrcMenu contained alias attach browser compose editor generic index key_select_pgp key_select_smime mix pager pgp postpone query smime
+" CHECKED 2022-04-08
+" List of the different screens in NeoMutt (see MenuNames in menu/type.c)
+syntax keyword muttrcMenu contained alias attach autocrypt browser compose editor generic index key_select_pgp key_select_smime mix pager pgp postpone query smime
 syntax match muttrcMenuList "\S\+" contained contains=muttrcMenu
 syntax match muttrcMenuCommas /,/ contained
 
@@ -234,12 +239,12 @@ syntax match muttrcEscapedVariable	conta
 syntax match muttrcBadAction	contained "[^<>]\+" contains=muttrcEmail
 syntax match muttrcAction		contained "<[^>]\{-}>" contains=muttrcBadAction,muttrcFunction,muttrcKeyName
 
-" CHECKED 2020-06-21
-" First, functions that take regular expressions:
+" CHECKED 2022-04-08
+" First, hooks that take regular expressions:
 syntax match  muttrcRXHookNot	contained /!\s*/ skipwhite nextgroup=muttrcRXHookString,muttrcRXHookStringNL
 syntax match  muttrcRXHooks	/\<\%(account\|append\|close\|crypt\|folder\|mbox\|open\|pgp\)-hook\>/ skipwhite nextgroup=muttrcRXHookNot,muttrcRXHookString,muttrcRXHookStringNL
 
-" Now, functions that take patterns
+" Now, hooks that take patterns
 syntax match muttrcPatHookNot	contained /!\s*/ skipwhite nextgroup=muttrcPattern
 syntax match muttrcPatHooks	/\<\%(charset\|iconv\|index-format\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcPattern
 syntax match muttrcPatHooks	/\<\%(message\|reply\|send\|send2\|save\|fcc\|fcc-save\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcOptPattern
@@ -295,10 +300,10 @@ syntax match muttrcAliasNL		contained /\
 syntax match muttrcUnAliasKey	contained "\s*\w\+\s*" skipwhite nextgroup=muttrcUnAliasKey,muttrcUnAliasNL
 syntax match muttrcUnAliasNL	contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcUnAliasKey,muttrcUnAliasNL
 
-" CHECKED 2020-06-21
-" List of letters in Flags in pattern.c
+" CHECKED 2022-04-08
+" List of letters in Flags in pattern/flags.c
 " Parameter: none
-syntax match muttrcSimplePat contained "!\?\^\?[~][ADEFGgklNOPpQRSTuUvV#$=]"
+syntax match muttrcSimplePat contained "!\?\^\?[~][ADEFGgklNOPpQRSTUuVv#$=]"
 " Parameter: range
 syntax match muttrcSimplePat contained "!\?\^\?[~][mnXz]\s*\%([<>-][0-9]\+[kM]\?\|[0-9]\+[kM]\?[-]\%([0-9]\+[kM]\?\)\?\)"
 " Parameter: date
@@ -306,7 +311,7 @@ syntax match muttrcSimplePat contained "
 " Parameter: regex
 syntax match muttrcSimplePat contained "!\?\^\?[~][BbCcefHhIiLMstwxYy]\s*" nextgroup=muttrcSimplePatRXContainer
 " Parameter: pattern
-syntax match muttrcSimplePat contained "!\?\^\?[%][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString
+syntax match muttrcSimplePat contained "!\?\^\?[%][BbCcefHhiLstxy]\s*" nextgroup=muttrcSimplePatString
 " Parameter: pattern
 syntax match muttrcSimplePat contained "!\?\^\?[=][bcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString
 syntax region muttrcSimplePat contained keepend start=+!\?\^\?[~](+ end=+)+ contains=muttrcSimplePat
@@ -369,8 +374,8 @@ syntax keyword muttrcMonoAttrib	containe
 syntax keyword muttrcMono	contained mono		skipwhite nextgroup=muttrcColorField,muttrcColorCompose
 syntax match   muttrcMonoLine	"^\s*mono\s\+\S\+"	skipwhite nextgroup=muttrcMonoAttrib contains=muttrcMono
 
-" CHECKED 2020-06-21
-" List of fields in Fields in color.c
+" CHECKED 2022-04-08
+" List of fields in ColorFields in color/commmand.c
 syntax keyword muttrcColorField skipwhite contained
 	\ attachment attach_headers body bold error hdrdefault header index index_author
 	\ index_collapsed index_date index_flags index_label index_number index_size index_subject
@@ -383,8 +388,8 @@ syntax match   muttrcColorField	containe
 
 syntax match muttrcColorCompose skipwhite contained /\s*compose\s*/ nextgroup=muttrcColorComposeField
 
-" CHECKED 2020-06-21
-" List of fields in ComposeFields in color.c
+" CHECKED 2022-04-08
+" List of fields in ComposeColorFields in color/command.c
 syntax keyword muttrcColorComposeField skipwhite contained
 	\ header security_both security_encrypt security_none security_sign
 	\ nextgroup=muttrcColorFG,muttrcColorFGNL
@@ -411,20 +416,21 @@ function! s:boolQuadGen(type, vars, depr
 
 endfunction
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of DT_BOOL in MuttVars in mutt_config.c
 call s:boolQuadGen('Bool', [
-	\ 'abort_backspace', 'allow_8bit', 'allow_ansi', 'arrow_cursor', 'ascii_chars', 'askbcc',
-	\ 'askcc', 'ask_follow_up', 'ask_x_comment_to', 'attach_save_without_prompting',
-	\ 'attach_split', 'autocrypt', 'autocrypt_reply', 'autoedit', 'auto_subscribe', 'auto_tag',
+	\ 'abort_backspace', 'allow_8bit', 'allow_ansi', 'arrow_cursor', 'ascii_chars', 'ask_bcc',
+	\ 'ask_cc', 'ask_follow_up', 'ask_x_comment_to', 'attach_save_without_prompting',
+	\ 'attach_split', 'autocrypt', 'autocrypt_reply', 'auto_edit', 'auto_subscribe', 'auto_tag',
 	\ 'beep', 'beep_new', 'bounce_delivered', 'braille_friendly',
 	\ 'browser_abbreviate_mailboxes', 'change_folder_next', 'check_mbox_size', 'check_new',
-	\ 'collapse_all', 'collapse_flagged', 'collapse_unread', 'confirmappend', 'confirmcreate',
-	\ 'crypt_autoencrypt', 'crypt_autopgp', 'crypt_autosign', 'crypt_autosmime',
-	\ 'crypt_confirmhook', 'crypt_opportunistic_encrypt',
+	\ 'collapse_all', 'collapse_flagged', 'collapse_unread', 'compose_show_user_headers',
+	\ 'confirm_append', 'confirm_create', 'copy_decode_weed', 'count_alternatives',
+	\ 'crypt_auto_encrypt', 'crypt_auto_pgp', 'crypt_auto_sign', 'crypt_auto_smime',
+	\ 'crypt_confirm_hook', 'crypt_opportunistic_encrypt',
 	\ 'crypt_opportunistic_encrypt_strong_keys', 'crypt_protected_headers_read',
-	\ 'crypt_protected_headers_save', 'crypt_protected_headers_write', 'crypt_replyencrypt',
-	\ 'crypt_replysign', 'crypt_replysignencrypted', 'crypt_timestamp', 'crypt_use_gpgme',
+	\ 'crypt_protected_headers_save', 'crypt_protected_headers_write', 'crypt_reply_encrypt',
+	\ 'crypt_reply_sign', 'crypt_reply_sign_encrypted', 'crypt_timestamp', 'crypt_use_gpgme',
 	\ 'crypt_use_pka', 'delete_untag', 'digest_collapse', 'duplicate_threads', 'edit_headers',
 	\ 'encode_from', 'fast_reply', 'fcc_before_send', 'fcc_clear', 'flag_safe', 'followup_to',
 	\ 'force_name', 'forward_decode', 'forward_decrypt', 'forward_quote', 'forward_references',
@@ -433,45 +439,52 @@ call s:boolQuadGen('Bool', [
 	\ 'history_remove_dups', 'honor_disposition', 'idn_decode', 'idn_encode',
 	\ 'ignore_list_reply_to', 'imap_check_subscribed', 'imap_condstore', 'imap_deflate',
 	\ 'imap_idle', 'imap_list_subscribed', 'imap_passive', 'imap_peek', 'imap_qresync',
-	\ 'imap_rfc5161', 'imap_servernoise', 'implicit_autoview', 'include_encrypted',
-	\ 'include_onlyfirst', 'keep_flagged', 'mailcap_sanitize', 'maildir_check_cur',
-	\ 'maildir_header_cache_verify', 'maildir_trash', 'mail_check_recent', 'mail_check_stats',
-	\ 'markers', 'mark_old', 'menu_move_off', 'menu_scroll', 'message_cache_clean', 'meta_key',
-	\ 'metoo', 'mh_purge', 'mime_forward_decode', 'mime_subject', 'mime_type_query_first',
-	\ 'narrow_tree', 'nm_record', 'nntp_listgroup', 'nntp_load_description', 'pager_stop',
-	\ 'pgp_autoinline', 'pgp_auto_decode', 'pgp_check_exit', 'pgp_check_gpg_decrypt_status_fd',
-	\ 'pgp_ignore_subkeys', 'pgp_long_ids', 'pgp_replyinline', 'pgp_retainable_sigs',
+	\ 'imap_rfc5161', 'imap_server_noise', 'implicit_autoview', 'include_encrypted',
+	\ 'include_only_first', 'keep_flagged', 'local_date_header', 'mailcap_sanitize',
+	\ 'maildir_check_cur', 'maildir_header_cache_verify', 'maildir_trash', 'mail_check_recent',
+	\ 'mail_check_stats', 'markers', 'mark_old', 'menu_move_off', 'menu_scroll',
+	\ 'message_cache_clean', 'meta_key', 'me_too', 'mh_purge', 'mime_forward_decode',
+	\ 'mime_type_query_first', 'narrow_tree', 'nm_query_window_enable', 'nm_record',
+	\ 'nntp_listgroup', 'nntp_load_description', 'pager_stop', 'pgp_auto_decode',
+	\ 'pgp_auto_inline', 'pgp_check_exit', 'pgp_check_gpg_decrypt_status_fd',
+	\ 'pgp_ignore_subkeys', 'pgp_long_ids', 'pgp_reply_inline', 'pgp_retainable_sigs',
 	\ 'pgp_self_encrypt', 'pgp_show_unusable', 'pgp_strict_enc', 'pgp_use_gpg_agent',
-	\ 'pipe_decode', 'pipe_split', 'pop_auth_try_all', 'pop_last', 'postpone_encrypt',
-	\ 'print_decode', 'print_split', 'prompt_after', 'read_only', 'reflow_space_quotes',
-	\ 'reflow_text', 'reply_self', 'reply_with_xorig', 'resolve', 'resume_draft_files',
-	\ 'resume_edited_draft_files', 'reverse_alias', 'reverse_name', 'reverse_realname',
-	\ 'rfc2047_parameters', 'save_address', 'save_empty', 'save_name', 'save_unsubscribed',
-	\ 'score', 'show_new_news', 'show_only_unread', 'sidebar_folder_indent',
-	\ 'sidebar_new_mail_only', 'sidebar_next_new_wrap', 'sidebar_non_empty_mailbox_only',
-	\ 'sidebar_on_right', 'sidebar_short_path', 'sidebar_visible', 'sig_dashes', 'sig_on_top',
-	\ 'size_show_bytes', 'size_show_fractions', 'size_show_mb', 'size_units_on_left',
-	\ 'smart_wrap', 'smime_ask_cert_label', 'smime_decrypt_use_default_key', 'smime_is_default',
-	\ 'smime_self_encrypt', 'sort_re', 'ssl_force_tls', 'ssl_usesystemcerts', 'ssl_use_sslv2',
-	\ 'ssl_use_sslv3', 'ssl_use_tlsv1', 'ssl_use_tlsv1_1', 'ssl_use_tlsv1_2', 'ssl_use_tlsv1_3',
+	\ 'pipe_decode', 'pipe_decode_weed', 'pipe_split', 'pop_auth_try_all', 'pop_last',
+	\ 'postpone_encrypt', 'print_decode', 'print_decode_weed', 'print_split', 'prompt_after',
+	\ 'read_only', 'reflow_space_quotes', 'reflow_text', 'reply_self', 'reply_with_xorig',
+	\ 'resolve', 'resume_draft_files', 'resume_edited_draft_files', 'reverse_alias',
+	\ 'reverse_name', 'reverse_real_name', 'rfc2047_parameters', 'save_address', 'save_empty',
+	\ 'save_name', 'save_unsubscribed', 'score', 'show_new_news', 'show_only_unread',
+	\ 'sidebar_folder_indent', 'sidebar_new_mail_only', 'sidebar_next_new_wrap',
+	\ 'sidebar_non_empty_mailbox_only', 'sidebar_on_right', 'sidebar_short_path',
+	\ 'sidebar_visible', 'sig_dashes', 'sig_on_top', 'size_show_bytes', 'size_show_fractions',
+	\ 'size_show_mb', 'size_units_on_left', 'smart_wrap', 'smime_ask_cert_label',
+	\ 'smime_decrypt_use_default_key', 'smime_is_default', 'smime_self_encrypt', 'sort_re',
+	\ 'ssl_force_tls', 'ssl_use_sslv2', 'ssl_use_sslv3', 'ssl_use_system_certs',
+	\ 'ssl_use_tlsv1', 'ssl_use_tlsv1_1', 'ssl_use_tlsv1_2', 'ssl_use_tlsv1_3',
 	\ 'ssl_verify_dates', 'ssl_verify_host', 'ssl_verify_partial_chains', 'status_on_top',
 	\ 'strict_threads', 'suspend', 'text_flowed', 'thorough_search', 'thread_received', 'tilde',
-	\ 'ts_enabled', 'uncollapse_jump', 'uncollapse_new', 'user_agent', 'use_8bitmime',
-	\ 'use_domain', 'use_envelope_from', 'use_from', 'use_ipv6', 'virtual_spoolfile',
-	\ 'wait_key', 'weed', 'wrap_search', 'write_bcc', 'x_comment_to'
+	\ 'ts_enabled', 'tunnel_is_secure', 'uncollapse_jump', 'uncollapse_new', 'user_agent',
+	\ 'use_8bit_mime', 'use_domain', 'use_envelope_from', 'use_from', 'use_ipv6',
+	\ 'virtual_spool_file', 'wait_key', 'weed', 'wrap_search', 'write_bcc', 'x_comment_to'
 	\ ], 0)
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " Deprecated Bools
 " List of DT_SYNONYM or DT_DEPRECATED Bools in MuttVars in mutt_config.c
 call s:boolQuadGen('Bool', [
-	\ 'edit_hdrs', 'envelope_from', 'forw_decode', 'forw_decrypt', 'forw_quote',
-	\ 'header_cache_compress', 'ignore_linear_white_space', 'pgp_autoencrypt', 'pgp_autosign',
-	\ 'pgp_auto_traditional', 'pgp_create_traditional', 'pgp_replyencrypt', 'pgp_replysign',
-	\ 'pgp_replysignencrypted', 'xterm_set_titles'
+	\ 'askbcc', 'askcc', 'autoedit', 'confirmappend', 'confirmcreate', 'crypt_autoencrypt',
+	\ 'crypt_autopgp', 'crypt_autosign', 'crypt_autosmime', 'crypt_confirmhook',
+	\ 'crypt_replyencrypt', 'crypt_replysign', 'crypt_replysignencrypted', 'edit_hdrs',
+	\ 'envelope_from', 'forw_decode', 'forw_decrypt', 'forw_quote', 'header_cache_compress',
+	\ 'ignore_linear_white_space', 'imap_servernoise', 'include_onlyfirst', 'metoo',
+	\ 'mime_subject', 'pgp_autoencrypt', 'pgp_autoinline', 'pgp_autosign',
+	\ 'pgp_auto_traditional', 'pgp_create_traditional', 'pgp_replyencrypt', 'pgp_replyinline',
+	\ 'pgp_replysign', 'pgp_replysignencrypted', 'reverse_realname', 'ssl_usesystemcerts',
+	\ 'use_8bitmime', 'virtual_spoolfile', 'xterm_set_titles'
 	\ ], 1)
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of DT_QUAD in MuttVars in mutt_config.c
 call s:boolQuadGen('Quad', [
 	\ 'abort_noattach', 'abort_nosubject', 'abort_unmodified', 'bounce', 'catchup_newsgroup',
@@ -481,31 +494,32 @@ call s:boolQuadGen('Quad', [
 	\ 'post_moderated', 'print', 'quit', 'recall', 'reply_to', 'ssl_starttls', 
 	\ ], 0)
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " Deprecated Quads
 " List of DT_SYNONYM or DT_DEPRECATED Quads in MuttVars in mutt_config.c
 call s:boolQuadGen('Quad', [
 	\ 'mime_fwd', 'pgp_encrypt_self', 'pgp_verify_sig', 'smime_encrypt_self'
 	\ ], 1)
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of DT_NUMBER or DT_LONG in MuttVars in mutt_config.c
 syntax keyword muttrcVarNum	skipwhite contained
-	\ connect_timeout debug_level header_cache_compress_level history
-	\ imap_fetch_chunk_size imap_keepalive imap_pipeline_depth imap_poll_timeout mail_check
-	\ mail_check_stats_interval menu_context net_inc nm_db_limit nm_open_timeout
-	\ nm_query_window_current_position nm_query_window_duration nntp_context nntp_poll
-	\ pager_context pager_index_lines pgp_timeout pop_checkinterval read_inc reflow_wrap
-	\ save_history score_threshold_delete score_threshold_flag score_threshold_read
-	\ search_context sendmail_wait sidebar_component_depth sidebar_width skip_quoted_offset
-	\ sleep_time smime_timeout ssl_min_dh_prime_bits timeout time_inc toggle_quoted_show_levels
-	\ wrap wrap_headers write_inc
+	\ connect_timeout debug_level header_cache_compress_level history imap_fetch_chunk_size
+	\ imap_keepalive imap_pipeline_depth imap_poll_timeout mail_check mail_check_stats_interval
+	\ menu_context net_inc nm_db_limit nm_open_timeout nm_query_window_current_position
+	\ nm_query_window_duration nntp_context nntp_poll pager_context pager_index_lines
+	\ pager_read_delay pager_skip_quoted_context pgp_timeout pop_check_interval read_inc
+	\ reflow_wrap save_history score_threshold_delete score_threshold_flag score_threshold_read
+	\ search_context sendmail_wait sidebar_component_depth sidebar_width sleep_time
+	\ smime_timeout ssl_min_dh_prime_bits timeout time_inc toggle_quoted_show_levels wrap
+	\ wrap_headers write_inc
 	\ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+" CHECKED 2022-04-08
+" Deprecated Numbers
 syntax keyword muttrcVarDeprecatedNum	contained skipwhite
-	\ header_cache_pagesize wrapmargin
-	\ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+	\ header_cache_pagesize pop_checkinterval skip_quoted_offset
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of DT_STRING in MuttVars in mutt_config.c
 " Special cases first, and all the rest at the end
 " Formats themselves must be updated in their respective groups
@@ -517,19 +531,19 @@ syntax keyword muttrcVarStr	contained sk
 syntax keyword muttrcVarStr	contained skipwhite folder_format vfolder_format nextgroup=muttrcVarEqualsFolderFmt
 syntax keyword muttrcVarStr	contained skipwhite attribution forward_format index_format message_format pager_format nextgroup=muttrcVarEqualsIdxFmt
 syntax keyword muttrcVarStr	contained skipwhite mix_entry_format nextgroup=muttrcVarEqualsMixFmt
+syntax keyword muttrcVarStr	contained skipwhite pattern_format nextgroup=muttrcVarEqualsPatternFmt
 syntax keyword muttrcVarStr	contained skipwhite
-	\ pgp_clearsign_command pgp_decode_command pgp_decrypt_command
-	\ pgp_encrypt_only_command pgp_encrypt_sign_command pgp_export_command pgp_getkeys_command
-	\ pgp_import_command pgp_list_pubring_command pgp_list_secring_command
-	\ pgp_sign_command pgp_verify_command pgp_verify_key_command
+	\ pgp_clear_sign_command pgp_decode_command pgp_decrypt_command pgp_encrypt_only_command
+	\ pgp_encrypt_sign_command pgp_export_command pgp_get_keys_command pgp_import_command
+	\ pgp_list_pubring_command pgp_list_secring_command pgp_sign_command pgp_verify_command
+	\ pgp_verify_key_command
 	\ nextgroup=muttrcVarEqualsPGPCmdFmt
 syntax keyword muttrcVarStr	contained skipwhite pgp_entry_format nextgroup=muttrcVarEqualsPGPFmt
 syntax keyword muttrcVarStr	contained skipwhite query_format nextgroup=muttrcVarEqualsQueryFmt
 syntax keyword muttrcVarStr	contained skipwhite
 	\ smime_decrypt_command smime_encrypt_command smime_get_cert_command
-	\ smime_get_cert_email_command smime_get_signer_cert_command
-	\ smime_import_cert_command smime_pk7out_command smime_sign_command
-	\ smime_verify_command smime_verify_opaque_command
+	\ smime_get_cert_email_command smime_get_signer_cert_command smime_import_cert_command
+	\ smime_pk7out_command smime_sign_command smime_verify_command smime_verify_opaque_command
 	\ nextgroup=muttrcVarEqualsSmimeFmt
 syntax keyword muttrcVarStr	contained skipwhite status_format ts_icon_format ts_status_format nextgroup=muttrcVarEqualsStatusFmt
 syntax keyword muttrcVarStr	contained skipwhite date_format nextgroup=muttrcVarEqualsStrftimeFmt
@@ -538,64 +552,66 @@ syntax keyword muttrcVarStr	contained sk
 syntax keyword muttrcVarStr	contained skipwhite
 	\ abort_key arrow_string assumed_charset attach_charset attach_sep attribution_locale
 	\ autocrypt_acct_format charset config_charset content_type crypt_protected_headers_subject
-	\ default_hook dsn_notify dsn_return empty_subject escape forward_attribution_intro
-	\ forward_attribution_trailer header_cache_backend header_cache_compress_method hidden_tags
-	\ hostname imap_authenticators imap_delim_chars imap_headers imap_login imap_pass imap_user
-	\ indent_string mailcap_path mark_macro_prefix mh_seq_flagged mh_seq_replied mh_seq_unseen
-	\ newsgroups_charset news_server nm_default_url nm_exclude_tags nm_flagged_tag nm_query_type
-	\ nm_query_window_current_search nm_query_window_timebase nm_record_tags nm_replied_tag
-	\ nm_unread_tag nntp_authenticators nntp_pass nntp_user pgp_default_key pgp_sign_as pipe_sep
-	\ pop_authenticators pop_host pop_pass pop_user postpone_encrypt_as post_indent_string
-	\ preconnect preferred_languages realname send_charset show_multipart_alternative
-	\ sidebar_delim_chars sidebar_divider_char sidebar_indent_string simple_search
-	\ smime_default_key smime_encrypt_with smime_sign_as smime_sign_digest_alg
-	\ smtp_authenticators smtp_pass smtp_url smtp_user spam_separator ssl_ciphers
+	\ default_hook dsn_notify dsn_return empty_subject forward_attribution_intro
+	\ forward_attribution_trailer greeting header_cache_backend header_cache_compress_method
+	\ hidden_tags hostname imap_authenticators imap_delim_chars imap_headers imap_login
+	\ imap_pass imap_user indent_string mailcap_path mark_macro_prefix mh_seq_flagged
+	\ mh_seq_replied mh_seq_unseen newsgroups_charset news_server nm_default_url nm_exclude_tags
+	\ nm_flagged_tag nm_query_type nm_query_window_current_search nm_query_window_or_terms
+	\ nm_query_window_timebase nm_record_tags nm_replied_tag nm_unread_tag nntp_authenticators
+	\ nntp_pass nntp_user pgp_default_key pgp_sign_as pipe_sep pop_authenticators pop_host
+	\ pop_pass pop_user postpone_encrypt_as post_indent_string preconnect preferred_languages
+	\ real_name send_charset show_multipart_alternative sidebar_delim_chars sidebar_divider_char
+	\ sidebar_indent_string simple_search smime_default_key smime_encrypt_with smime_sign_as
+	\ smime_sign_digest_alg smtp_authenticators smtp_pass smtp_url smtp_user spam_separator
+	\ ssl_ciphers
 	\ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 
 " Deprecated strings
 syntax keyword muttrcVarDeprecatedStr
-	\ abort_noattach_regexp attach_keyword forw_format hdr_format indent_str msg_format
-	\ nm_default_uri pgp_self_encrypt_as post_indent_str print_cmd quote_regexp reply_regexp
-	\ smime_self_encrypt_as xterm_icon xterm_title
+	\ abort_noattach_regexp attach_keyword escape forw_format hdr_format indent_str msg_format
+	\ nm_default_uri pgp_clearsign_command pgp_getkeys_command pgp_self_encrypt_as
+	\ post_indent_str print_cmd quote_regexp realname reply_regexp smime_self_encrypt_as
+	\ spoolfile visual xterm_icon xterm_title
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of DT_ADDRESS
 syntax keyword muttrcVarStr	contained skipwhite envelope_from_address from nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 " List of DT_ENUM
-syntax keyword muttrcVarStr	contained skipwhite mbox_type nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+syntax keyword muttrcVarStr	contained skipwhite mbox_type use_threads nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 " List of DT_MBTABLE
 syntax keyword muttrcVarStr	contained skipwhite crypt_chars flag_chars from_chars status_chars to_chars nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 
-" CHECKED 2020-06-21
-" List of DT_PATH
+" CHECKED 2022-04-08
+" List of DT_PATH or DT_MAILBOX
 syntax keyword muttrcVarStr	contained skipwhite
 	\ alias_file attach_save_dir autocrypt_dir certificate_file debug_file
 	\ entropy_file folder header_cache history_file mbox message_cachedir newsrc
 	\ news_cache_dir postponed record signature smime_ca_location
-	\ smime_certificates smime_keys spoolfile ssl_ca_certificates_file
-	\ ssl_client_cert tmpdir trash
+	\ smime_certificates smime_keys spool_file ssl_ca_certificates_file ssl_client_cert
+	\ tmpdir trash
 	\ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 " List of DT_COMMAND (excluding pgp_*_command and smime_*_command)
 syntax keyword muttrcVarStr	contained skipwhite
 	\ display_filter editor inews ispell mixmaster new_mail_command pager
-	\ print_command query_command sendmail shell visual external_search_command
+	\ print_command query_command sendmail shell external_search_command
 	\ imap_oauth_refresh_command pop_oauth_refresh_command
 	\ mime_type_query_command smtp_oauth_refresh_command tunnel
 	\ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of DT_REGEX
 syntax keyword muttrcVarStr	contained skipwhite
-	\ abort_noattach_regex gecos_mask mask pgp_decryption_okay pgp_good_sign
-	\ quote_regex reply_regex smileys
+	\ abort_noattach_regex gecos_mask mask pgp_decryption_okay pgp_good_sign quote_regex 
+	\ reply_regex smileys
 	\ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 " List of DT_SORT
 syntax keyword muttrcVarStr	contained skipwhite
 	\ pgp_sort_keys sidebar_sort_method sort sort_alias sort_aux sort_browser
 	\ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
 
-" CHECKED 2020-06-21
-" List of commands in Commands in mutt_config.c
+" CHECKED 2022-04-08
+" List of commands in mutt_commands in mutt_commands.c
 " Remember to remove hooks, they have already been dealt with
 syntax keyword muttrcCommand	skipwhite alias nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL
 syntax keyword muttrcCommand	skipwhite bind nextgroup=muttrcBindMenuList,muttrcBindMenuListNL
@@ -607,14 +623,12 @@ syntax keyword muttrcCommand	skipwhite s
 syntax keyword muttrcCommand	skipwhite unalias nextgroup=muttrcUnAliasKey,muttrcUnAliasNL
 syntax keyword muttrcCommand	skipwhite unhook nextgroup=muttrcHooks
 syntax keyword muttrcCommand	skipwhite
-	\ alternative_order attachments auto_view finish hdr_order ifdef ifndef
-	\ ignore lua lua-source mailboxes mailto_allow mime_lookup my_hdr push score
-	\ setenv sidebar_whitelist source subjectrx subscribe-to tag-formats
-	\ tag-transforms unalternative_order unattachments unauto_view uncolor
-	\ unhdr_order unignore unmailboxes unmailto_allow unmime_lookup unmono
-	\ unmy_hdr unscore unsetenv unsidebar_whitelist unsubjectrx unsubscribe-from
-	\ unvirtual-mailboxes virtual-mailboxes named-mailboxes
-	\ echo unbind unmacro
+	\ alternative_order attachments auto_view cd echo finish hdr_order ifdef ifndef ignore lua
+	\ lua-source mailboxes mailto_allow mime_lookup my_hdr named-mailboxes push score setenv
+	\ sidebar_whitelist source subjectrx subscribe-to tag-formats tag-transforms
+	\ unalternative_order unattachments unauto_view unbind uncolor unhdr_order unignore unmacro
+	\ unmailboxes unmailto_allow unmime_lookup unmono unmy_hdr unscore unsetenv
+	\ unsidebar_whitelist unsubjectrx unsubscribe-from unvirtual-mailboxes virtual-mailboxes
 
 function! s:genFunctions(functions)
 	for f in a:functions
@@ -622,66 +636,68 @@ function! s:genFunctions(functions)
 	endfor
 endfunction
 
-" CHECKED 2020-06-21
+" CHECKED 2022-04-08
 " List of functions in functions.c
 " Note: 'noop' is included but is elsewhere in the source
 call s:genFunctions(['noop',
-	\ 'accept', 'append', 'attach-file', 'attach-key', 'attach-message', 'attach-news-message',
-	\ 'autocrypt-acct-menu', 'autocrypt-menu', 'backspace', 'backward-char', 'backward-word',
-	\ 'bol', 'bottom-page', 'bottom', 'bounce-message', 'break-thread', 'buffy-cycle',
-	\ 'buffy-list', 'capitalize-word', 'catchup', 'chain-next', 'chain-prev', 'change-dir',
-	\ 'change-folder-readonly', 'change-folder', 'change-newsgroup-readonly',
-	\ 'change-newsgroup', 'change-vfolder', 'check-new', 'check-stats',
+	\ 'accept', 'alias-dialog', 'append', 'attach-file', 'attach-key', 'attach-message',
+	\ 'attach-news-message', 'autocrypt-acct-menu', 'autocrypt-menu', 'backspace',
+	\ 'backward-char', 'backward-word', 'bol', 'bottom', 'bottom-page', 'bounce-message',
+	\ 'break-thread', 'buffy-cycle', 'buffy-list', 'capitalize-word', 'catchup', 'chain-next',
+	\ 'chain-prev', 'change-dir', 'change-folder', 'change-folder-readonly', 'change-newsgroup',
+	\ 'change-newsgroup-readonly', 'change-vfolder', 'check-new', 'check-stats',
 	\ 'check-traditional-pgp', 'clear-flag', 'collapse-all', 'collapse-parts',
-	\ 'collapse-thread', 'complete-query', 'complete', 'compose-to-sender', 'copy-file',
+	\ 'collapse-thread', 'complete', 'complete-query', 'compose-to-sender', 'copy-file',
 	\ 'copy-message', 'create-account', 'create-alias', 'create-mailbox', 'current-bottom',
 	\ 'current-middle', 'current-top', 'decode-copy', 'decode-save', 'decrypt-copy',
-	\ 'decrypt-save', 'delete-account', 'delete-char', 'delete-entry', 'delete-mailbox',
-	\ 'delete-message', 'delete-pattern', 'delete-subthread', 'delete-thread', 'delete',
+	\ 'decrypt-save', 'delete', 'delete-account', 'delete-char', 'delete-entry',
+	\ 'delete-mailbox', 'delete-message', 'delete-pattern', 'delete-subthread', 'delete-thread',
 	\ 'descend-directory', 'detach-file', 'display-address', 'display-filename',
-	\ 'display-message', 'display-toggle-weed', 'downcase-word', 'edit-bcc', 'edit-cc',
-	\ 'edit-description', 'edit-encoding', 'edit-fcc', 'edit-file', 'edit-followup-to',
-	\ 'edit-from', 'edit-headers', 'edit-label', 'edit-language', 'edit-message', 'edit-mime',
-	\ 'edit-newsgroups', 'edit-or-view-raw-message', 'edit-raw-message', 'edit-reply-to',
-	\ 'edit-subject', 'edit-to', 'edit-type', 'edit-x-comment-to', 'edit', 'end-cond',
-	\ 'enter-command', 'enter-mask', 'entire-thread', 'eol', 'exit', 'extract-keys',
-	\ 'fetch-mail', 'filter-entry', 'first-entry', 'flag-message', 'followup-message',
-	\ 'forget-passphrase', 'forward-char', 'forward-message', 'forward-to-group',
-	\ 'forward-word', 'get-attachment', 'get-children', 'get-message', 'get-parent',
-	\ 'goto-folder', 'goto-parent', 'group-alternatives', 'group-chat-reply',
-	\ 'group-multilingual', 'group-reply', 'half-down', 'half-up', 'help', 'history-down',
-	\ 'history-search', 'history-up', 'imap-fetch-mail', 'imap-logout-all', 'insert', 'ispell',
-	\ 'jump', 'kill-eol', 'kill-eow', 'kill-line', 'kill-word', 'last-entry',
-	\ 'limit-current-thread', 'limit', 'link-threads', 'list-reply', 'mail-key',
-	\ 'mailbox-cycle', 'mailbox-list', 'mail', 'mark-as-new', 'mark-message', 'middle-page',
-	\ 'mix', 'modify-labels-then-hide', 'modify-labels', 'modify-tags-then-hide',
-	\ 'modify-tags', 'move-down', 'move-up', 'new-mime', 'next-entry', 'next-line',
-	\ 'next-new-then-unread', 'next-new', 'next-page', 'next-subthread', 'next-thread',
-	\ 'next-undeleted', 'next-unread-mailbox', 'next-unread', 'parent-message', 'pgp-menu',
-	\ 'pipe-entry', 'pipe-message', 'post-message', 'postpone-message', 'previous-entry',
-	\ 'previous-line', 'previous-new-then-unread', 'previous-new', 'previous-page',
-	\ 'previous-subthread', 'previous-thread', 'previous-undeleted', 'previous-unread',
-	\ 'print-entry', 'print-message', 'purge-message', 'purge-thread', 'quasi-delete',
-	\ 'query-append', 'query', 'quit', 'quote-char', 'read-subthread', 'read-thread',
-	\ 'recall-message', 'reconstruct-thread', 'redraw-screen', 'refresh', 'reload-active',
-	\ 'rename-attachment', 'rename-file', 'rename-mailbox', 'reply', 'resend-message',
-	\ 'root-message', 'save-entry', 'save-message', 'search-next', 'search-opposite',
-	\ 'search-reverse', 'search-toggle', 'search', 'select-entry', 'select-new',
+	\ 'display-message', 'display-toggle-weed', 'downcase-word', 'edit', 'edit-bcc', 'edit-cc',
+	\ 'edit-content-id', 'edit-description', 'edit-encoding', 'edit-fcc', 'edit-file',
+	\ 'edit-followup-to', 'edit-from', 'edit-headers', 'edit-label', 'edit-language',
+	\ 'edit-message', 'edit-mime', 'edit-newsgroups', 'edit-or-view-raw-message',
+	\ 'edit-raw-message', 'edit-reply-to', 'edit-subject', 'edit-to', 'edit-type',
+	\ 'edit-x-comment-to', 'end-cond', 'enter-command', 'enter-mask', 'entire-thread', 'eol',
+	\ 'error-history', 'exit', 'extract-keys', 'fetch-mail', 'filter-entry', 'first-entry',
+	\ 'flag-message', 'followup-message', 'forget-passphrase', 'forward-char',
+	\ 'forward-message', 'forward-to-group', 'forward-word', 'get-attachment', 'get-children',
+	\ 'get-message', 'get-parent', 'goto-folder', 'goto-parent', 'group-alternatives',
+	\ 'group-chat-reply', 'group-multilingual', 'group-related', 'group-reply', 'half-down',
+	\ 'half-up', 'help', 'history-down', 'history-search', 'history-up', 'imap-fetch-mail',
+	\ 'imap-logout-all', 'insert', 'ispell', 'jump', 'kill-eol', 'kill-eow', 'kill-line',
+	\ 'kill-word', 'last-entry', 'limit', 'limit-current-thread', 'link-threads', 'list-reply',
+	\ 'list-subscribe', 'list-unsubscribe', 'mail', 'mail-key', 'mailbox-cycle', 'mailbox-list',
+	\ 'mark-as-new', 'mark-message', 'middle-page', 'mix', 'modify-labels',
+	\ 'modify-labels-then-hide', 'modify-tags', 'modify-tags-then-hide', 'move-down', 'move-up',
+	\ 'new-mime', 'next-entry', 'next-line', 'next-new', 'next-new-then-unread', 'next-page',
+	\ 'next-subthread', 'next-thread', 'next-undeleted', 'next-unread', 'next-unread-mailbox',
+	\ 'parent-message', 'pgp-menu', 'pipe-entry', 'pipe-message', 'post-message',
+	\ 'postpone-message', 'previous-entry', 'previous-line', 'previous-new',
+	\ 'previous-new-then-unread', 'previous-page', 'previous-subthread', 'previous-thread',
+	\ 'previous-undeleted', 'previous-unread', 'print-entry', 'print-message', 'purge-message',
+	\ 'purge-thread', 'quasi-delete', 'query', 'query-append', 'quit', 'quote-char',
+	\ 'read-subthread', 'read-thread', 'recall-message', 'reconstruct-thread', 'redraw-screen',
+	\ 'refresh', 'reload-active', 'rename-attachment', 'rename-file', 'rename-mailbox', 'reply',
+	\ 'resend-message', 'root-message', 'save-entry', 'save-message', 'search', 'search-next',
+	\ 'search-opposite', 'search-reverse', 'search-toggle', 'select-entry', 'select-new',
 	\ 'send-message', 'set-flag', 'shell-escape', 'show-limit', 'show-log-messages',
-	\ 'show-version', 'sidebar-next-new', 'sidebar-first', 'sidebar-last', 'sidebar-next',
-	\ 'sidebar-open', 'sidebar-page-down', 'sidebar-page-up', 'sidebar-prev-new',
-	\ 'sidebar-prev', 'sidebar-toggle-virtual', 'sidebar-toggle-visible', 'skip-quoted',
-	\ 'smime-menu', 'sort-mailbox', 'sort-reverse', 'sort', 'subscribe-pattern',
-	\ 'sync-mailbox', 'tag-entry', 'tag-message', 'tag-pattern', 'tag-prefix-cond',
-	\ 'tag-prefix', 'tag-subthread', 'tag-thread', 'toggle-active', 'toggle-disposition',
-	\ 'toggle-mailboxes', 'toggle-new', 'toggle-prefer-encrypt', 'toggle-quoted',
-	\ 'toggle-read', 'toggle-recode', 'toggle-subscribed', 'toggle-unlink', 'toggle-write',
-	\ 'top-page', 'top', 'transpose-chars', 'uncatchup', 'undelete-entry', 'undelete-message',
-	\ 'undelete-pattern', 'undelete-subthread', 'undelete-thread', 'unsubscribe-pattern',
-	\ 'untag-pattern', 'upcase-word', 'update-encoding', 'verify-key',
-	\ 'vfolder-from-query-readonly', 'vfolder-from-query', 'vfolder-window-backward',
-	\ 'vfolder-window-forward', 'view-attachments', 'view-attach', 'view-file', 'view-mailcap',
-	\ 'view-name', 'view-raw-message', 'view-text', 'what-key', 'write-fcc'
+	\ 'show-version', 'sidebar-first', 'sidebar-last', 'sidebar-next', 'sidebar-next-new',
+	\ 'sidebar-open', 'sidebar-page-down', 'sidebar-page-up', 'sidebar-prev',
+	\ 'sidebar-prev-new', 'sidebar-toggle-virtual', 'sidebar-toggle-visible', 'skip-headers',
+	\ 'skip-quoted', 'smime-menu', 'sort', 'sort-alias', 'sort-alias-reverse', 'sort-mailbox',
+	\ 'sort-reverse', 'subscribe', 'subscribe-pattern', 'sync-mailbox', 'tag-entry',
+	\ 'tag-message', 'tag-pattern', 'tag-prefix', 'tag-prefix-cond', 'tag-subthread',
+	\ 'tag-thread', 'toggle-active', 'toggle-disposition', 'toggle-mailboxes', 'toggle-new',
+	\ 'toggle-prefer-encrypt', 'toggle-quoted', 'toggle-read', 'toggle-recode',
+	\ 'toggle-subscribed', 'toggle-unlink', 'toggle-write', 'top', 'top-page',
+	\ 'transpose-chars', 'uncatchup', 'undelete-entry', 'undelete-message', 'undelete-pattern',
+	\ 'undelete-subthread', 'undelete-thread', 'ungroup-attachment', 'unsubscribe',
+	\ 'unsubscribe-pattern', 'untag-pattern', 'upcase-word', 'update-encoding', 'verify-key',
+	\ 'vfolder-from-query', 'vfolder-from-query-readonly', 'vfolder-window-backward',
+	\ 'vfolder-window-forward', 'vfolder-window-reset', 'view-attach', 'view-attachments',
+	\ 'view-file', 'view-mailcap', 'view-name', 'view-pager', 'view-raw-message', 'view-text',
+	\ 'what-key', 'write-fcc'
 	\ ])
 
 " Define the default highlighting.
@@ -758,6 +774,7 @@ highlight def link muttrcFolderFormatEsc
 highlight def link muttrcGroupIndexFormatEscapes	muttrcEscape
 highlight def link muttrcIndexFormatEscapes		muttrcEscape
 highlight def link muttrcMixFormatEscapes		muttrcEscape
+highlight def link muttrcPatternFormatEscapes		muttrcEscape
 highlight def link muttrcPGPCmdFormatEscapes		muttrcEscape
 highlight def link muttrcPGPFormatEscapes		muttrcEscape
 highlight def link muttrcPGPTimeEscapes			muttrcEscape
@@ -774,6 +791,7 @@ highlight def link muttrcComposeFormatCo
 highlight def link muttrcFolderFormatConditionals	muttrcFormatConditionals2
 highlight def link muttrcIndexFormatConditionals	muttrcFormatConditionals2
 highlight def link muttrcMixFormatConditionals		muttrcFormatConditionals2
+highlight def link muttrcPatternFormatConditionals	muttrcFormatConditionals2
 highlight def link muttrcPGPCmdFormatConditionals	muttrcFormatConditionals2
 highlight def link muttrcPGPFormatConditionals		muttrcFormatConditionals2
 highlight def link muttrcSmimeFormatConditionals	muttrcFormatConditionals2
@@ -789,6 +807,7 @@ highlight def link muttrcFolderFormatStr
 highlight def link muttrcGroupIndexFormatStr            muttrcString
 highlight def link muttrcIndexFormatStr			muttrcString
 highlight def link muttrcMixFormatStr			muttrcString
+highlight def link muttrcPatternFormatStr		muttrcString
 highlight def link muttrcPGPCmdFormatStr		muttrcString
 highlight def link muttrcPGPFormatStr			muttrcString
 highlight def link muttrcQueryFormatStr			muttrcString
--- a/runtime/syntax/sml.vim
+++ b/runtime/syntax/sml.vim
@@ -1,9 +1,10 @@
 " Vim syntax file
 " Language:     SML
 " Filenames:    *.sml *.sig
-" Maintainers:  Markus Mottl            <markus.mottl@gmail.com>
-"               Fabrizio Zeno Cornelli  <zeno@filibusta.crema.unimi.it>
-" Last Change:  2021 Oct 04
+" Maintainer:   Markus Mottl <markus.mottl@gmail.com>
+" Previous Maintainer: Fabrizio Zeno Cornelli
+"				<zeno@filibusta.crema.unimi.it> (invalid)
+" Last Change:  2022 Apr 01
 "               2015 Aug 31 - Fixed opening of modules (Ramana Kumar)
 "               2006 Oct 23 - Fixed character highlighting bug (MM)
 
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -1,8 +1,8 @@
 " Vim syntax file
 " Language:	Vim 8.2 script
 " Maintainer:	Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
-" Last Change:	March 14, 2022
-" Version:	8.2-29
+" Last Change:	April 08, 2022
+" Version:	8.2-33
 " URL:	http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
 " Automatically generated keyword lists: {{{1
 
@@ -30,14 +30,14 @@ syn match   vimCommand contained	"\<z[-+
 syn keyword vimStdPlugin contained	Arguments Asm Break Cfilter Clear Continue DiffOrig Evaluate Finish Gdb Lfilter Man N[ext] Over P[rint] Program Run S Source Step Stop Termdebug TermdebugCommand TOhtml Winbar XMLent XMLns
 
 " vimOptions are caught only when contained in a vimSet {{{2
-syn keyword vimOption contained	acd ambw arshape aw backupskip beval bk bri bufhidden cdh ci cinwords cocu complete copyindent cryptmethod csl cuc debug dictionary display ef endofline esckeys fdc fdt fileencoding fixeol foldcolumn foldminlines fp gfn grepprg guiligatures hf hkmap icon imc imsf inde is isprint kmp lbr listchars lsp makeencoding maxmem mh mmp more mouseshape mzschemedll odev pa path pheader previewheight printmbcharset pvp pyxversion redrawtime ri rs sb scroll sections shcf shelltype showbreak sidescroll smartindent sp spf srr statusline sw sxq tabstop tags tbs termguicolors textmode thesaurusfunc titlestring tpm ttimeoutlen ttyscroll tx undolevels vartabstop vfile virtualedit warn wfh wildchar wim winminheight wmh write
-syn keyword vimOption contained	ai anti asd awa balloondelay bevalterm bkc briopt buflisted cdhome cin clipboard cole completefunc cot cscopepathcomp cspc cul deco diff dy efm eol et fde fen fileencodings fk foldenable foldnestmax fs gfs gtl guioptions hh hkmapp iconstring imcmdline imst indentexpr isf joinspaces kp lcs lm luadll makeprg maxmempattern mis mmt mouse mouset mzschemegcdll oft packpath pdev pi previewpopup printmbfont pvw qe regexpengine rightleft rtp sbo scrollbind secure shell shellxescape showcmd sidescrolloff smarttab spc spl ss stl swapfile syn tag tagstack tc termwinkey textwidth tildeop tl tr ttm ttytype uc undoreload vb vi visualbell wb wfw wildcharm winaltkeys winminwidth wmnu writeany
-syn keyword vimOption contained	akm antialias autochdir background ballooneval bex bl brk buftype cdpath cindent cm colorcolumn completeopt cp cscopeprg csprg culopt def diffexpr ea ei ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw gtt guipty hi hkp ignorecase imd imstatusfunc indentkeys isfname js langmap linebreak lmap lw mat maxmemtot mkspellmem mod mousef mousetime nf ofu para penc pm previewwindow printoptions pw qftf relativenumber rightleftcmd ru sbr scrollfocus sel shellcmdflag shellxquote showfulltag signcolumn smc spell splitbelow ssl stmp swapsync synmaxcol tagbsearch tal tcldll termwinscroll tf timeout tm ts tty tw udf updatecount vbs viewdir vop wc wh wildignore wincolor winptydll wmw writebackup
-syn keyword vimOption contained	al ar autoindent backspace balloonevalterm bexpr bo browsedir casemap cedit cink cmdheight columns completepopup cpo cscopequickfix csqf cursorbind define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guicursor guitablabel hid hl im imdisable imstyle indk isi key langmenu lines lnr lz matchpairs mco ml modeline mousefocus mp nrformats omnifunc paragraphs perldll pmbcs printdevice prompt pythondll quickfixtextfunc remap rl rubydll sc scrolljump selection shellpipe shiftround showmatch siso smd spellcapcheck splitright ssop sts swb syntax tagcase tb tenc termwinsize tfu timeoutlen to tsl ttybuiltin twk udir updatetime vdir viewoptions vsts wcm whichwrap wildignorecase window winwidth wop writedelay
-syn keyword vimOption contained	aleph arab autoread backup balloonexpr bg bomb bs cb cf cinkeys cmdwinheight com completeslash cpoptions cscoperelative csre cursorcolumn delcombine digraph eadirection emo equalprg expandtab fdls fex fileignorecase fml foldlevel formatexpr gcr gli guifont guitabtooltip hidden hlg imactivatefunc imi inc inex isident keymap langnoremap linespace loadplugins ma matchtime mef mle modelineexpr mousehide mps nu opendevice paste pex pmbfn printencoding pt pythonhome quoteescape renderoptions rlc ruf scb scrolloff selectmode shellquote shiftwidth showmode sj sn spellfile spo st su swf ta tagfunc tbi term termwintype tgc title toolbar tsr ttyfast tws ul ur ve vif vts wcr wi wildmenu winfixheight wiv wrap ws
-syn keyword vimOption contained	allowrevins arabic autoshelldir backupcopy bdir bh breakat bsdir cc cfu cino cmp comments concealcursor cpp cscopetag cst cursorline dex dip eb emoji errorbells exrc fdm ff filetype fmr foldlevelstart formatlistpat gd go guifontset helpfile highlight hls imactivatekey iminsert include inf isk keymodel langremap lisp lpl macatsui maxcombine menc mls modelines mousem msm number operatorfunc pastetoggle pexpr popt printexpr pumheight pythonthreedll rdt report rnu ruler scf scrollopt sessionoptions shellredir shm showtabline slm so spelllang spr sta sua switchbuf tabline taglength tbidi termbidi terse tgst titlelen toolbariconsize tsrfu ttym twsl undodir ut verbose viminfo wa wd wic wildmode winfixwidth wiw wrapmargin ww
-syn keyword vimOption contained	altkeymap arabicshape autowrite backupdir bdlay bin breakindent bsk ccv ch cinoptions cms commentstring conceallevel cpt cscopetagorder csto cursorlineopt dg dir ed enc errorfile fcl fdn ffs fillchars fo foldmarker formatoptions gdefault gp guifontwide helpheight history hlsearch imaf ims includeexpr infercase iskeyword keywordprg laststatus lispwords lrm magic maxfuncdepth menuitems mm modifiable mousemodel mzq numberwidth opfunc patchexpr pfn pp printfont pumwidth pythonthreehome re restorescreen ro rulerformat scl scs sft shellslash shortmess shq sm softtabstop spelloptions sps stal suffixes sws tabpagemax tagrelative tbis termencoding textauto thesaurus titleold top ttimeout ttymouse twt undofile varsofttabstop verbosefile viminfofile wak weirdinvert wig wildoptions winheight wm wrapscan xtermcodes
-syn keyword vimOption contained	ambiwidth ari autowriteall backupext belloff binary breakindentopt bt cd charconvert cinw co compatible confirm crb cscopeverbose csverb cwh dict directory edcompatible encoding errorformat fcs fdo fic fixendofline foldclose foldmethod formatprg gfm grepformat guiheadroom helplang hk ic imak imsearch incsearch insertmode isp km lazyredraw list ls makeef maxmapdepth mfd mmd modified mouses mzquantum nuw osfiletype patchmode ph preserveindent printheader pvh pyx readonly revins rop runtimepath scr sect sh shelltemp shortname si smartcase sol spellsuggest sr startofline suffixesadd sxe
+syn keyword vimOption contained	acd ambw arshape aw backupskip beval bk bri bufhidden cdh ci cinsd cms commentstring conceallevel cpt cscopetagorder csto cursorlineopt dg dir ed enc errorfile fcl fdn ffs fillchars fo foldmarker formatoptions gdefault gp guifontwide helpheight history hlsearch imaf ims includeexpr infercase iskeyword keywordprg laststatus lispwords lrm magic maxfuncdepth menuitems mm modifiable mousemev mps nu opendevice paste pex pmbfn printencoding pt pythonhome quoteescape renderoptions rlc ruf scb scrolloff selectmode shellquote shiftwidth showmode sj sn spellfile spo st su swf ta taglength tbis termguicolors textmode thesaurusfunc titlestring tpm ttimeoutlen ttyscroll tx undolevels vartabstop vfile virtualedit warn wfh wildchar wim winminheight wmh write
+syn keyword vimOption contained	ai anti asd awa balloondelay bevalterm bkc briopt buflisted cdhome cin cinw co compatible confirm crb cscopeverbose csverb cwh dict directory edcompatible encoding errorformat fcs fdo fic fixendofline foldclose foldmethod formatprg gfm grepformat guiheadroom helplang hk ic imak imsearch incsearch insertmode isp km lazyredraw list ls makeef maxmapdepth mfd mmd modified mousemodel msm number operatorfunc pastetoggle pexpr popt printexpr pumheight pythonthreedll rdt report rnu ruler scf scrollopt sessionoptions shellredir shm showtabline slm so spelllang spr sta sua switchbuf tabline tagrelative tbs termwinkey textwidth tildeop tl tr ttm ttytype uc undoreload vb vi visualbell wb wfw wildcharm winaltkeys winminwidth wmnu writeany
+syn keyword vimOption contained	akm antialias autochdir background ballooneval bex bl brk buftype cdpath cindent cinwords cocu complete copyindent cryptmethod csl cuc debug dictionary display ef endofline esckeys fdc fdt fileencoding fixeol foldcolumn foldminlines fp gfn grepprg guiligatures hf hkmap icon imc imsf inde is isprint kmp lbr listchars lsp makeencoding maxmem mh mmp more mousemoveevent mzq numberwidth opfunc patchexpr pfn pp printfont pumwidth pythonthreehome re restorescreen ro rulerformat scl scs sft shellslash shortmess shq sm softtabstop spelloptions sps stal suffixes sws tabpagemax tags tc termwinscroll tf timeout tm ts tty tw udf updatecount vbs viewdir vop wc wh wildignore wincolor winptydll wmw writebackup
+syn keyword vimOption contained	al ar autoindent backspace balloonevalterm bexpr bo browsedir casemap cedit cink clipboard cole completefunc cot cscopepathcomp cspc cul deco diff dy efm eol et fde fen fileencodings fk foldenable foldnestmax fs gfs gtl guioptions hh hkmapp iconstring imcmdline imst indentexpr isf joinspaces kp lcs lm luadll makeprg maxmempattern mis mmt mouse mouses mzquantum nuw osfiletype patchmode ph preserveindent printheader pvh pyx readonly revins rop runtimepath scr sect sh shelltemp shortname si smartcase sol spellsuggest sr startofline suffixesadd sxe tabstop tagstack tcldll termwinsize tfu timeoutlen to tsl ttybuiltin twk udir updatetime vdir viewoptions vsts wcm whichwrap wildignorecase window winwidth wop writedelay
+syn keyword vimOption contained	aleph arab autoread backup balloonexpr bg bomb bs cb cf cinkeys cm colorcolumn completeopt cp cscopeprg csprg culopt def diffexpr ea ei ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw gtt guipty hi hkp ignorecase imd imstatusfunc indentkeys isfname js langmap linebreak lmap lw mat maxmemtot mkspellmem mod mousef mouseshape mzschemedll odev pa path pheader previewheight printmbcharset pvp pyxversion redrawtime ri rs sb scroll sections shcf shelltype showbreak sidescroll smartindent sp spf srr statusline sw sxq tag tal tenc termwintype tgc title toolbar tsr ttyfast tws ul ur ve vif vts wcr wi wildmenu winfixheight wiv wrap ws
+syn keyword vimOption contained	allowrevins arabic autoshelldir backupcopy bdir bh breakat bsdir cc cfu cino cmdheight columns completepopup cpo cscopequickfix csqf cursorbind define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guicursor guitablabel hid hl im imdisable imstyle indk isi key langmenu lines lnr lz matchpairs mco ml modeline mousefocus mouset mzschemegcdll oft packpath pdev pi previewpopup printmbfont pvw qe regexpengine rightleft rtp sbo scrollbind secure shell shellxescape showcmd sidescrolloff smarttab spc spl ss stl swapfile syn tagbsearch tb term terse tgst titlelen toolbariconsize tsrfu ttym twsl undodir ut verbose viminfo wa wd wic wildmode winfixwidth wiw wrapmargin ww
+syn keyword vimOption contained	altkeymap arabicshape autowrite backupdir bdlay bin breakindent bsk ccv ch cinoptions cmdwinheight com completeslash cpoptions cscoperelative csre cursorcolumn delcombine digraph eadirection emo equalprg expandtab fdls fex fileignorecase fml foldlevel formatexpr gcr gli guifont guitabtooltip hidden hlg imactivatefunc imi inc inex isident keymap langnoremap linespace loadplugins ma matchtime mef mle modelineexpr mousehide mousetime nf ofu para penc pm previewwindow printoptions pw qftf relativenumber rightleftcmd ru sbr scrollfocus sel shellcmdflag shellxquote showfulltag signcolumn smc spell splitbelow ssl stmp swapsync synmaxcol tagcase tbi termbidi textauto thesaurus titleold top ttimeout ttymouse twt undofile varsofttabstop verbosefile viminfofile wak weirdinvert wig wildoptions winheight wm wrapscan xtermcodes
+syn keyword vimOption contained	ambiwidth ari autowriteall backupext belloff binary breakindentopt bt cd charconvert cinscopedecls cmp comments concealcursor cpp cscopetag cst cursorline dex dip eb emoji errorbells exrc fdm ff filetype fmr foldlevelstart formatlistpat gd go guifontset helpfile highlight hls imactivatekey iminsert include inf isk keymodel langremap lisp lpl macatsui maxcombine menc mls modelines mousem mp nrformats omnifunc paragraphs perldll pmbcs printdevice prompt pythondll quickfixtextfunc remap rl rubydll sc scrolljump selection shellpipe shiftround showmatch siso smd spellcapcheck splitright ssop sts swb syntax tagfunc tbidi termencoding
 
 " vimOptions: These are the turn-off setting variants {{{2
 syn keyword vimOption contained	noacd noallowrevins noantialias noarabic noarshape noautoindent noautowrite noawa noballoonevalterm nobin nobl nobri noci nocompatible nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noemoji noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs nolazyredraw nolisp noloadplugins nolz nomagic nomle nomodelineexpr nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscf noscrollfocus nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
@@ -67,8 +67,8 @@ syn keyword vimErrSetting contained	bios
 
 " AutoCmd Events {{{2
 syn case ignore
-syn keyword vimAutoEvent contained	BufAdd BufDelete BufFilePost BufHidden BufNew BufRead BufReadPost BufUnload BufWinLeave BufWrite BufWritePost CmdlineChanged CmdlineLeave CmdwinEnter ColorScheme CompleteChanged CompleteDone CompleteDonePre CursorHold CursorHoldI CursorMoved CursorMovedI DiffUpdated DirChanged DirChangedPre EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileExplorer FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave InsertLeavePre MenuPopup ModeChanged OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SafeState SafeStateAgain SessionLoadPost ShellCmdPost ShellFilterPost SigUSR1 SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TerminalWinOpen TermResponse TextChanged TextChangedI TextChangedP TextYankPost User VimEnter VimLeave VimLeavePre VimResized VimResume VimSuspend WinClosed WinEnter WinLeave WinNew
-syn keyword vimAutoEvent contained	BufCreate BufEnter BufFilePre BufLeave BufNewFile BufReadCmd BufReadPre BufWinEnter BufWipeout BufWriteCmd BufWritePre CmdlineEnter CmdUndefined CmdwinLeave ColorSchemePre
+syn keyword vimAutoEvent contained	BufAdd BufDelete BufFilePost BufHidden BufNew BufRead BufReadPost BufUnload BufWinLeave BufWrite BufWritePost CmdlineChanged CmdlineLeave CmdwinEnter ColorScheme CompleteChanged CompleteDonePre CursorHold CursorHoldI CursorMoved CursorMovedI DiffUpdated DirChanged DirChangedPre EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileExplorer FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave InsertLeavePre MenuPopup ModeChanged OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SafeState SafeStateAgain SessionLoadPost ShellCmdPost ShellFilterPost SigUSR1 SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TerminalWinOpen TermResponse TextChanged TextChangedI TextChangedP TextYankPost User VimEnter VimLeave VimLeavePre VimResized VimResume VimSuspend WinClosed WinEnter WinLeave WinNew WinScrolled
+syn keyword vimAutoEvent contained	BufCreate BufEnter BufFilePre BufLeave BufNewFile BufReadCmd BufReadPre BufWinEnter BufWipeout BufWriteCmd BufWritePre CmdlineEnter CmdUndefined CmdwinLeave ColorSchemePre CompleteDone
 
 " Highlight commonly used Groupnames {{{2
 syn keyword vimGroup contained	Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
@@ -230,7 +230,7 @@ syn keyword vimAugroupKey contained	aug[
 
 " Operators: {{{2
 " =========
-syn cluster	vimOperGroup	contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimType,vimRegister,vimContinue,vim9Comment
+syn cluster	vimOperGroup	contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimType,vimRegister,vimContinue,vim9Comment,vimVar
 syn match	vimOper	"||\|&&\|[-+.!]"				skipwhite nextgroup=vimString,vimSpecFile
 syn match	vimOper	"\%#=1\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\|!\~#\)[?#]\{0,2}"	skipwhite nextgroup=vimString,vimSpecFile
 syn match	vimOper	"\(\<is\|\<isnot\)[?#]\{0,2}\>"			skipwhite nextgroup=vimString,vimSpecFile
@@ -465,8 +465,9 @@ syn case match
 " User Function Highlighting: {{{2
 " (following Gautam Iyer's suggestion)
 " ==========================
-syn match vimFunc		"\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*("		contains=vimFuncName,vimUserFunc,vimExecute
-syn match vimUserFunc contained	"\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>"	contains=vimNotation
+syn match vimFunc		"\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*("		contains=vimCommand,vimFuncEcho,vimFuncName,vimUserFunc,vimExecute
+syn match vimUserFunc contained	"\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>"	contains=vimCommand,vimNotation
+syn keyword vimFuncEcho contained	ec ech echo
 
 " User Command Highlighting: {{{2
 "syn match vimUsrCmd	'^\s*\zs\u\w*.*$'
@@ -898,6 +899,7 @@ if !exists("skip_vim_syntax_inits")
  hi def link vimError	Error
  hi def link vimFBVar	vimVar
  hi def link vimFgBgAttrib	vimHiAttrib
+ hi def link vimFuncEcho	vimCommand
  hi def link vimHiCtermul	vimHiTerm
  hi def link vimFold	Folded
  hi def link vimFTCmd	vimCommand
--- a/src/po/it.po
+++ b/src/po/it.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: vim 8.2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-02-01 10:42+0100\n"
-"PO-Revision-Date: 2022-02-01 11:40+0100\n"
+"POT-Creation-Date: 2022-04-08 10:22+0200\n"
+"PO-Revision-Date: 2022-04-08 11:03+0100\n"
 "Last-Translator: Antonio Colombo <azc100@gmail.com>\n"
 "Language-Team: Italian\n"
 "Language: it\n"
@@ -28,6 +28,7 @@ msgstr ""
 msgid "ERROR: "
 msgstr "ERRORE: "
 
+#, c-format
 msgid ""
 "\n"
 "[bytes] total alloc-freed %lu-%lu, in use %lu, peak use %lu\n"
@@ -35,6 +36,7 @@ msgstr ""
 "\n"
 "[byte] totali alloc-rilasc %lu-%lu, in uso %lu, max uso %lu\n"
 
+#, c-format
 msgid ""
 "[calls] total re/malloc()'s %lu, total free()'s %lu\n"
 "\n"
@@ -45,6 +47,7 @@ msgstr ""
 msgid "--Deleted--"
 msgstr "--Cancellato--"
 
+#, c-format
 msgid "auto-removing autocommand: %s <buffer=%d>"
 msgstr "auto-rimozione dell'autocomando: %s <buffer=%d>"
 
@@ -58,15 +61,19 @@ msgstr ""
 "\n"
 "--- Autocomandi ---"
 
+#, c-format
 msgid "No matching autocommands: %s"
 msgstr "Nessun autocomando corrispondente: %s"
 
+#, c-format
 msgid "%s Autocommands for \"%s\""
 msgstr "%s Autocomandi per \"%s\""
 
+#, c-format
 msgid "Executing %s"
 msgstr "Eseguo %s"
 
+#, c-format
 msgid "autocommand %s"
 msgstr "autocomando %s"
 
@@ -82,16 +89,19 @@ msgstr "[Lista Locazioni]"
 msgid "[Quickfix List]"
 msgstr "[Lista Quickfix]"
 
+#, c-format
 msgid "%d buffer unloaded"
 msgid_plural "%d buffers unloaded"
 msgstr[0] "%d buffer scaricato"
 msgstr[1] "%d buffer scaricati"
 
+#, c-format
 msgid "%d buffer deleted"
 msgid_plural "%d buffers deleted"
 msgstr[0] "%d buffer tolto dalla lista"
 msgstr[1] "%d buffer tolti dalla lista"
 
+#, c-format
 msgid "%d buffer wiped out"
 msgid_plural "%d buffers wiped out"
 msgstr[0] "%d buffer cancellato"
@@ -100,6 +110,7 @@ msgstr[1] "%d buffer cancellati"
 msgid "W14: Warning: List of file names overflow"
 msgstr "W14: Avviso: Superato limite della lista dei nomi di file"
 
+#, c-format
 msgid "line %ld"
 msgstr "riga %ld"
 
@@ -118,11 +129,13 @@ msgstr "[Sola-Lettura]"
 msgid "[readonly]"
 msgstr "[sola-lettura]"
 
+#, c-format
 msgid "%ld line --%d%%--"
 msgid_plural "%ld lines --%d%%--"
 msgstr[0] "%ld riga --%d%%--"
 msgstr[1] "%ld righe --%d%%--"
 
+#, c-format
 msgid "line %ld of %ld --%d%%-- col "
 msgstr "riga %ld di %ld --%d%%-- col "
 
@@ -171,6 +184,7 @@ msgstr "[File nuovo]"
 msgid " CONVERSION ERROR"
 msgstr " ERRORE DI CONVERSIONE"
 
+#, c-format
 msgid " in line %ld;"
 msgstr " alla riga %ld;"
 
@@ -217,6 +231,7 @@ msgstr ": Invio fallito.\n"
 msgid ": Send failed. Trying to execute locally\n"
 msgstr ": Invio fallito. Tento di eseguire localmente\n"
 
+#, c-format
 msgid "%d of %d edited"
 msgstr "%d di %d elaborato"
 
@@ -261,39 +276,48 @@ msgstr "[cifrato]"
 msgid "Entering Debug mode.  Type \"cont\" to continue."
 msgstr "Entro modalità Debug.  Batti \"cont\" per continuare."
 
+#, c-format
 msgid "Oldval = \"%s\""
 msgstr "Vecchioval = \"%s\""
 
+#, c-format
 msgid "Newval = \"%s\""
 msgstr "Nuovoval = \"%s\""
 
+#, c-format
 msgid "line %ld: %s"
 msgstr "riga %ld: %s"
 
+#, c-format
 msgid "cmd: %s"
 msgstr "com: %s"
 
 msgid "frame is zero"
 msgstr "al livello zero"
 
+#, c-format
 msgid "frame at highest level: %d"
 msgstr "al livello più alto: %d"
 
+#, c-format
 msgid "Breakpoint in \"%s%s\" line %ld"
 msgstr "Pausa in \"%s%s\" riga %ld"
 
 msgid "No breakpoints defined"
 msgstr "Nessun 'breakpoint' definito"
 
+#, c-format
 msgid "%3d  %s %s  line %ld"
 msgstr "%3d  %s %s riga %ld"
 
+#, c-format
 msgid "%3d  expr %s"
 msgstr "%3d  espr %s"
 
 msgid "extend() argument"
 msgstr "argomento di extend()"
 
+#, c-format
 msgid "Not enough memory to use internal diff for buffer \"%s\""
 msgstr "Memoria insufficiente per usare diff interna per il buffer \"%s\""
 
@@ -398,29 +422,37 @@ msgstr ""
 msgid "called inputrestore() more often than inputsave()"
 msgstr "inputrestore() chiamata più volte di inputsave()"
 
+#, c-format
 msgid "<%s>%s%s  %d,  Hex %02x,  Oct %03o, Digr %s"
 msgstr "<%s>%s%s  %d,  Esa %02x,  Ottale %03o, Digr %s"
 
+#, c-format
 msgid "<%s>%s%s  %d,  Hex %02x,  Octal %03o"
 msgstr "<%s>%s%s  %d,  Esa %02x,  Ottale %03o"
 
+#, c-format
 msgid "> %d, Hex %04x, Oct %o, Digr %s"
 msgstr "> %d, Esa %04x, Ottale %o, Digr %s"
 
+#, c-format
 msgid "> %d, Hex %08x, Oct %o, Digr %s"
 msgstr "> %d, Esa %08x, Ottale %o, Digr %s"
 
+#, c-format
 msgid "> %d, Hex %04x, Octal %o"
 msgstr "> %d, Esa %04x, Ottale %o"
 
+#, c-format
 msgid "> %d, Hex %08x, Octal %o"
 msgstr "> %d, Esa %08x, Ottale %o"
 
+#, c-format
 msgid "%ld line moved"
 msgid_plural "%ld lines moved"
 msgstr[0] "%ld riga mossa"
 msgstr[1] "%ld righe mosse"
 
+#, c-format
 msgid "%ld lines filtered"
 msgstr "%ld righe filtrate"
 
@@ -433,12 +465,15 @@ msgstr "Salva con Nome"
 msgid "Write partial file?"
 msgstr "Scrivo il file incompleto?"
 
+#, c-format
 msgid "Overwrite existing file \"%s\"?"
 msgstr "Riscrittura del file esistente \"%s\"?"
 
+#, c-format
 msgid "Swap file \"%s\" exists, overwrite anyway?"
 msgstr "Il file swap \"%s\" esiste già, sovrascrivo?"
 
+#, c-format
 msgid ""
 "'readonly' option is set for \"%s\".\n"
 "Do you wish to write anyway?"
@@ -446,6 +481,7 @@ msgstr ""
 "opzione 'readonly' attiva per \"%s\".\n"
 "Vuoi scrivere comunque?"
 
+#, c-format
 msgid ""
 "File permissions of \"%s\" are read-only.\n"
 "It may still be possible to write it.\n"
@@ -458,41 +494,49 @@ msgstr ""
 msgid "Edit File"
 msgstr "Elabora File"
 
+#, c-format
 msgid "replace with %s (y/n/a/q/l/^E/^Y)?"
 msgstr "sostituire con %s (y/n/a/q/l/^E/^Y)?"
 
 msgid "(Interrupted) "
 msgstr "(Interrotto) "
 
+#, c-format
 msgid "%ld match on %ld line"
 msgid_plural "%ld matches on %ld line"
 msgstr[0] "%ld corrispondenza in %ld riga"
 msgstr[1] "%ld corrispondenze in %ld riga"
 
+#, c-format
 msgid "%ld substitution on %ld line"
 msgid_plural "%ld substitutions on %ld line"
 msgstr[0] "%ld sostituzione su %ld riga"
 msgstr[1] "%ld sostituzioni su %ld riga"
 
+#, c-format
 msgid "%ld match on %ld lines"
 msgid_plural "%ld matches on %ld lines"
 msgstr[0] "%ld corrispondenza in %ld righe"
 msgstr[1] "%ld corrispondenze in %ld righe"
 
+#, c-format
 msgid "%ld substitution on %ld lines"
 msgid_plural "%ld substitutions on %ld lines"
 msgstr[0] "%ld sostituzione in %ld righe"
 msgstr[1] "%ld sostituzioni in %ld righe"
 
+#, c-format
 msgid "Pattern found in every line: %s"
 msgstr "Espressione trovata su ogni riga: %s"
 
+#, c-format
 msgid "Pattern not found: %s"
 msgstr "Espressione non trovata: %s"
 
 msgid "No old files"
 msgstr "Nessun file elaborato in precedenza"
 
+#, c-format
 msgid "Save changes to \"%s\"?"
 msgstr "Salvare modifiche a \"%s\"?"
 
@@ -500,10 +544,12 @@ msgid "Warning: Entered other buffer une
 msgstr ""
 "Avviso: Entrato in altro buffer inaspettatamente (controllare autocomandi)"
 
+#, 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"
@@ -511,6 +557,7 @@ msgstr ""
 msgid "Entering Ex mode.  Type \"visual\" to go to Normal mode."
 msgstr "Entro modalità Ex.  Batti \"visual\" per tornare a modalità Normale."
 
+#, c-format
 msgid "Executing: %s"
 msgstr "Sto eseguendo:  %s"
 
@@ -529,6 +576,7 @@ msgstr ""
 "INTERNO: Non posso usare EX_DFLALL con ADDR_NONE, ADDR_UNSIGNED o "
 "ADDR_QUICKFIX"
 
+#, c-format
 msgid "%d more file to edit.  Quit anyway?"
 msgid_plural "%d more files to edit.  Quit anyway?"
 msgstr[0] "%d ulteriore file da elaborare.  Esco lo stesso?"
@@ -549,6 +597,7 @@ msgstr "Apri il File in una nuova pagina
 msgid "Edit File in new window"
 msgstr "Apri il File in una nuova finestra"
 
+#, c-format
 msgid "Tab page %d"
 msgstr "Pagina di linguette %d"
 
@@ -558,6 +607,7 @@ msgstr "Non posso creare un file di swap
 msgid "Append File"
 msgstr "In aggiunta al File"
 
+#, c-format
 msgid "Window position: X %d, Y %d"
 msgstr "Posizione finestra: X %d, Y %d"
 
@@ -567,27 +617,35 @@ msgstr "Salva Ridirezione"
 msgid "Untitled"
 msgstr "Senza Nome"
 
+#, c-format
 msgid "Exception thrown: %s"
 msgstr "Eccezione lanciata: %s"
 
+#, c-format
 msgid "Exception finished: %s"
 msgstr "Eccezione finita: %s"
 
+#, c-format
 msgid "Exception discarded: %s"
 msgstr "Eccezione scartata: %s"
 
+#, c-format
 msgid "%s, line %ld"
 msgstr "%s, riga %ld"
 
+#, c-format
 msgid "Exception caught: %s"
 msgstr "Eccezione intercettata: %s"
 
+#, c-format
 msgid "%s made pending"
 msgstr "%s reso 'pending'"
 
+#, c-format
 msgid "%s resumed"
 msgstr "%s ripristinato"
 
+#, c-format
 msgid "%s discarded"
 msgstr "%s scartato"
 
@@ -648,9 +706,11 @@ msgstr "[manca CR]"
 msgid "[long lines split]"
 msgstr "[righe lunghe divise]"
 
+#, c-format
 msgid "[CONVERSION ERROR in line %ld]"
 msgstr "[ERRORE DI CONVERSIONE alla riga %ld]"
 
+#, c-format
 msgid "[ILLEGAL BYTE in line %ld]"
 msgstr "[BYTE NON CONSENTITO alla riga %ld]"
 
@@ -684,11 +744,13 @@ msgstr "[Unix]"
 msgid "[unix format]"
 msgstr "[in formato Unix]"
 
+#, c-format
 msgid "%ld line, "
 msgid_plural "%ld lines, "
 msgstr[0] "%ld riga,"
 msgstr[1] "%ld righe,"
 
+#, c-format
 msgid "%lld byte"
 msgid_plural "%lld bytes"
 msgstr[0] "%lld byte"
@@ -700,6 +762,7 @@ msgstr "[noeol]"
 msgid "[Incomplete last line]"
 msgstr "[Manca carattere di fine riga]"
 
+#, c-format
 msgid ""
 "W12: Warning: File \"%s\" has changed and the buffer was changed in Vim as "
 "well"
@@ -709,18 +772,21 @@ msgstr ""
 msgid "See \":help W12\" for more info."
 msgstr "Vedere \":help W12\" per ulteriori informazioni."
 
+#, c-format
 msgid "W11: Warning: File \"%s\" has changed since editing started"
 msgstr "W11: Avviso: File \"%s\" modificato dopo inizio edit"
 
 msgid "See \":help W11\" for more info."
 msgstr "Vedere \":help W11\" per ulteriori informazioni."
 
+#, c-format
 msgid "W16: Warning: Mode of file \"%s\" has changed since editing started"
 msgstr "W16: Avviso: Modo File \"%s\" modificato dopo inizio edit"
 
 msgid "See \":help W16\" for more info."
 msgstr "Vedere \":help W16\" per ulteriori informazioni."
 
+#, c-format
 msgid "W13: Warning: File \"%s\" has been created after editing started"
 msgstr "W13: Avviso: Il file \"%s\" risulta creato dopo inizio edit"
 
@@ -729,10 +795,12 @@ msgstr "Avviso"
 
 msgid ""
 "&OK\n"
-"&Load File"
+"&Load File\n"
+"Load File &and Options"
 msgstr ""
 "&OK\n"
-"&Carica File"
+"&Carica File\n"
+"Caric&a File e Opzioni"
 
 msgid "<empty>"
 msgstr "<vuoto>"
@@ -752,11 +820,13 @@ msgstr "Apri File dialogo"
 msgid "no matches"
 msgstr "nessuna corrispondenza"
 
+#, c-format
 msgid "+--%3ld line folded "
 msgid_plural "+--%3ld lines folded "
 msgstr[0] "+--%3ld riga piegata "
 msgstr[1] "+--%3ld righe piegate "
 
+#, c-format
 msgid "+-%s%3ld line: "
 msgid_plural "+-%s%3ld lines: "
 msgstr[0] "+-%s%3ld riga: "
@@ -765,24 +835,6 @@ msgstr[1] "+-%s%3ld righe: "
 msgid "No match at cursor, finding next"
 msgstr "Nessuna corrispondenza al cursore, cerco la prossima"
 
-msgid "<cannot open> "
-msgstr "<non posso aprire> "
-
-msgid "Pathname:"
-msgstr "Nome percorso:"
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Cancel"
-msgstr "Non eseguire"
-
-msgid "Scrollbar Widget: Could not get geometry of thumb pixmap."
-msgstr "Scrollbar Widget: Non riesco a ottenere geometria di 'thumb pixmap'."
-
-msgid "Vim dialog"
-msgstr "Dialogo Vim"
-
 msgid "_Save"
 msgstr "_Salva"
 
@@ -804,12 +856,18 @@ msgstr ""
 "&No\n"
 "&C Ignora"
 
+msgid "OK"
+msgstr "OK"
+
 msgid "Yes"
 msgstr "Sì"
 
 msgid "No"
 msgstr "No"
 
+msgid "Cancel"
+msgstr "Non eseguire"
+
 msgid "Input _Methods"
 msgstr "_Metodi di inserimento"
 
@@ -891,6 +949,9 @@ msgstr "&OK"
 msgid "Selection"
 msgstr "Selezione"
 
+msgid "Vim dialog"
+msgstr "Dialogo Vim"
+
 msgid "Find &Next"
 msgstr "&N Trova il Prossimo"
 
@@ -918,18 +979,23 @@ msgstr "Non Utilizzato"
 msgid "Directory\t*.nothing\n"
 msgstr "Directory\t*.niente\n"
 
+#, c-format
 msgid "Font0: %s"
 msgstr "Font0: %s"
 
+#, c-format
 msgid "Font%d: %s"
 msgstr "Font%d: %s"
 
+#, c-format
 msgid "Font%d width is not twice that of font0"
 msgstr "La larghezza di font%d non è doppia di quella di font0"
 
+#, c-format
 msgid "Font0 width: %d"
 msgstr "Larghezza di Font0: %d"
 
+#, c-format
 msgid "Font%d width: %d"
 msgstr "Larghezza di Font%d: %d"
 
@@ -963,18 +1029,22 @@ msgstr "Stile:"
 msgid "Size:"
 msgstr "Dimensione:"
 
+#, c-format
 msgid "Page %d"
 msgstr "Pagina %d"
 
 msgid "No text to be printed"
 msgstr "Manca testo da stampare"
 
+#, c-format
 msgid "Printing page %d (%d%%)"
 msgstr "Sto stampando pagina %d (%d%%)"
 
+#, c-format
 msgid " Copy %d of %d"
 msgstr " Copia %d di %d"
 
+#, c-format
 msgid "Printed: %s"
 msgstr "Stampato: %s"
 
@@ -987,6 +1057,7 @@ msgstr "Invio a stampante..."
 msgid "Print job sent."
 msgstr "Richiesta di stampa inviata."
 
+#, c-format
 msgid "Sorry, help file \"%s\" not found"
 msgstr "Spiacente, non trovo file di aiuto \"%s\""
 
@@ -1014,6 +1085,7 @@ msgstr "Visualizza connessioni"
 msgid "This cscope command does not support splitting the window.\n"
 msgstr "Questo comando cscope non gestisce la divisione della finestra.\n"
 
+#, c-format
 msgid "Added cscope database %s"
 msgstr "Aggiunto database cscope %s"
 
@@ -1032,6 +1104,7 @@ msgstr "cs_create_connection: fdopen di 
 msgid "cscope commands:\n"
 msgstr "comandi cscope:\n"
 
+#, c-format
 msgid "%-5s: %s%*s (Usage: %s)"
 msgstr "%-5s: %s%*s (Uso: %s)"
 
@@ -1058,9 +1131,11 @@ msgstr ""
 "       s: Trova questo simbolo C\n"
 "       t: Trova questa stringa di testo\n"
 
+#, c-format
 msgid "cscope connection %s closed"
 msgstr "connessione cscope %s chiusa"
 
+#, c-format
 msgid "Cscope tag: %s"
 msgstr "Tag cscope: %s"
 
@@ -1155,6 +1230,7 @@ msgstr "nome di marcatura non valido"
 msgid "mark not set"
 msgstr "marcatura non impostata"
 
+#, c-format
 msgid "row %d column %d"
 msgstr "riga %d colonna %d"
 
@@ -1193,9 +1269,11 @@ msgstr "non riesco a ottenere la riga"
 msgid "Unable to register a command server name"
 msgstr "Non riesco a registrare un nome di server comando"
 
+#, c-format
 msgid "%ld lines to indent... "
 msgstr "%ld righe da rientrare... "
 
+#, c-format
 msgid "%ld line indented "
 msgid_plural "%ld lines indented "
 msgstr[0] "%ld riga rientrata "
@@ -1252,6 +1330,7 @@ msgstr "l'opzione 'dictionary' non è impostata"
 msgid "'thesaurus' option is empty"
 msgstr "l'opzione 'thesaurus' non è impostata"
 
+#, c-format
 msgid "Scanning dictionary: %s"
 msgstr "Scansione Dizionario: %s"
 
@@ -1261,6 +1340,7 @@ msgstr " (inserisci) Scroll (^E/^Y)"
 msgid " (replace) Scroll (^E/^Y)"
 msgstr " (sostituisci) Scroll (^E/^Y)"
 
+#, c-format
 msgid "Scanning: %s"
 msgstr "Scansione: %s"
 
@@ -1285,9 +1365,11 @@ msgstr "Parola da un'altra riga"
 msgid "The only match"
 msgstr "L'unica corrispondenza"
 
+#, c-format
 msgid "match %d of %d"
 msgstr "corrispondenza %d di %d"
 
+#, c-format
 msgid "match %d"
 msgstr "corrispondenza %d"
 
@@ -1318,6 +1400,7 @@ msgstr "argomento di remove()"
 msgid "reverse() argument"
 msgstr "argomento di reverse()"
 
+#, c-format
 msgid "Current %slanguage: \"%s\""
 msgstr "Lingua %sin uso: \"%s\""
 
@@ -1339,6 +1422,7 @@ msgstr "Troppi argomenti \"+command\", \
 msgid "Invalid argument for"
 msgstr "Argomento non valido per"
 
+#, c-format
 msgid "%d files to edit\n"
 msgstr "%d file da elaborare\n"
 
@@ -1640,20 +1724,6 @@ msgstr ""
 "\n"
 "Opzioni accettate da gvim (versione Motif):\n"
 
-msgid ""
-"\n"
-"Arguments recognised by gvim (neXtaw version):\n"
-msgstr ""
-"\n"
-"Opzioni accettate da gvim (versione neXtaw):\n"
-
-msgid ""
-"\n"
-"Arguments recognised by gvim (Athena version):\n"
-msgstr ""
-"\n"
-"Opzioni accettate da gvim (versione Athena):\n"
-
 msgid "-display <display>\tRun Vim on <display>"
 msgstr "-display <schermo>\tEsegui Vim su <schermo>"
 
@@ -1684,9 +1754,6 @@ msgstr "-borderwidth <larg>\tUsa larghez
 msgid "-scrollbarwidth <width>  Use a scrollbar width of <width> (also: -sw)"
 msgstr "-scrollbarwidth <larg>  Usa larghezza <larg> per scorrere (anche: -sw)"
 
-msgid "-menuheight <height>\tUse a menu bar height of <height> (also: -mh)"
-msgstr "-menuheight <alt>\tUsa altezza <alt> per barra menù (anche: -mh)"
-
 msgid "-reverse\t\tUse reverse video (also: -rv)"
 msgstr "-reverse\t\tUsa colori invertiti (anche: -rv)"
 
@@ -1789,12 +1856,15 @@ msgid " has been damaged (page size is s
 msgstr ""
 " è stato danneggiato (la dimensione della pagina è inferiore al minimo).\n"
 
+#, c-format
 msgid "Using swap file \"%s\""
 msgstr "Uso swap file \"%s\""
 
+#, c-format
 msgid "Original file \"%s\""
 msgstr "File originale \"%s\""
 
+#, c-format
 msgid "Swap file is encrypted: \"%s\""
 msgstr "Il file swap è cifrato: \"%s\""
 
@@ -2099,12 +2169,15 @@ msgstr ""
 msgid "Tear off this menu"
 msgstr "Togli questo Menù"
 
+#, c-format
 msgid "Error detected while compiling %s:"
 msgstr "Trovato errore compilando %s:"
 
+#, c-format
 msgid "Error detected while processing %s:"
 msgstr "Trovato errore eseguendo %s:"
 
+#, c-format
 msgid "line %4ld:"
 msgstr "riga %4ld:"
 
@@ -2120,6 +2193,7 @@ msgstr "Premi INVIO o un comando per pro
 msgid "Unknown"
 msgstr "Sconosciuto"
 
+#, c-format
 msgid "%s line %ld"
 msgstr "%s riga %ld"
 
@@ -2160,11 +2234,13 @@ msgstr ""
 msgid "Type number and <Enter> (q or empty cancels): "
 msgstr "Inserire numero e dare <Invio> (q o vuoto per annullare): "
 
+#, c-format
 msgid "%ld more line"
 msgid_plural "%ld more lines"
 msgstr[0] "%ld riga in più"
 msgstr[1] "%ld righe in più"
 
+#, c-format
 msgid "%ld line less"
 msgid_plural "%ld fewer lines"
 msgstr[0] "%ld riga in meno"
@@ -2176,6 +2252,7 @@ msgstr " (Interrotto)"
 msgid "Beep!"
 msgstr "Beep!"
 
+#, c-format
 msgid "Calling shell to execute: \"%s\""
 msgstr "Chiamo la shell per eseguire: \"%s\""
 
@@ -2188,11 +2265,13 @@ msgstr "Batti  :qa! e premi <Invio> per 
 msgid "Type  :qa  and press <Enter> to exit Vim"
 msgstr "Batti  :qa  e premi <Invio> per uscire da Vim"
 
+#, c-format
 msgid "%ld line %sed %d time"
 msgid_plural "%ld line %sed %d times"
 msgstr[0] "%ld riga %sa %d volta"
 msgstr[1] "%ld riga %se %d volte"
 
+#, c-format
 msgid "%ld lines %sed %d time"
 msgid_plural "%ld lines %sed %d times"
 msgstr[0] "%ld righe %sa %d volta"
@@ -2201,23 +2280,28 @@ msgstr[1] "%ld righe %se %d volte"
 msgid "cannot yank; delete anyway"
 msgstr "non riesco a salvare in un registro; cancello comunque"
 
+#, c-format
 msgid "%ld line changed"
 msgid_plural "%ld lines changed"
 msgstr[0] "%ld riga cambiata"
 msgstr[1] "%ld righe cambiate"
 
+#, c-format
 msgid "%d line changed"
 msgid_plural "%d lines changed"
 msgstr[0] "%d riga cambiata"
 msgstr[1] "%d righe cambiate"
 
+#, c-format
 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"
@@ -2225,10 +2309,12 @@ msgstr ""
 "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"
@@ -2236,6 +2322,7 @@ msgstr ""
 "Col. %s di %s; Riga %ld di %ld; Parola %lld di %lld; Caratt. %lld di %lld; "
 "Byte %lld di %lld"
 
+#, c-format
 msgid "(+%lld for BOM)"
 msgstr "(+%lld per BOM)"
 
@@ -2270,6 +2357,7 @@ msgstr ""
 "\n"
 "--- Opzioni ---"
 
+#, c-format
 msgid "For option %s"
 msgstr "Per opzione %s"
 
@@ -2282,6 +2370,7 @@ msgstr "VIM: Non riesco ad aprire la fin
 msgid "Need Amigados version 2.04 or later\n"
 msgstr "Serve Amigados versione 2.04 o successiva\n"
 
+#, c-format
 msgid "Need %s version %ld\n"
 msgstr "Serve %s versione %ld\n"
 
@@ -2291,6 +2380,7 @@ msgstr "Non riesco ad aprire NIL:\n"
 msgid "Cannot create "
 msgstr "Non riesco a creare "
 
+#, c-format
 msgid "Vim exiting with %d\n"
 msgstr "Vim esce con %d\n"
 
@@ -2318,12 +2408,15 @@ msgstr "ERRORE I/O"
 msgid "Message"
 msgstr "Messaggio"
 
+#, c-format
 msgid "to %s on %s"
 msgstr "a %s su %s"
 
+#, c-format
 msgid "Printing '%s'"
 msgstr "Stampato: '%s'"
 
+#, c-format
 msgid "Opening the X display took %ld msec"
 msgstr "Attivazione visualizzazione X ha richiesto %ld msec"
 
@@ -2334,6 +2427,7 @@ msgstr ""
 "\n"
 "Vim: Ottenuto errore X\n"
 
+#, c-format
 msgid "restoring display %s"
 msgstr "ripristino display %s"
 
@@ -2357,9 +2451,11 @@ msgstr ""
 "\n"
 "Non posso impostare il contesto di sicurezza per "
 
+#, c-format
 msgid "Could not set security context %s for %s"
 msgstr "Non posso impostare il contesto di sicurezza %s per %s"
 
+#, c-format
 msgid "Could not get security context %s for %s. Removing it!"
 msgstr "Non posso ottenere il contesto di sicurezza %s per %s. Lo rimuovo!"
 
@@ -2408,6 +2504,10 @@ msgstr ""
 msgid "XSMP lost ICE connection"
 msgstr "XSMP ha perso la connessione ICE"
 
+msgid "Could not load gpm library: %s"
+msgstr "Non riesco a caricare la libreria gpm: %s"
+
+#, c-format
 msgid "dlerror = \"%s\""
 msgstr "dlerror = \"%s\""
 
@@ -2423,12 +2523,14 @@ msgstr "XSMP apertura connessione"
 msgid "XSMP ICE connection watch failed"
 msgstr "XSMP osservazione connessione ICE fallita"
 
+#, c-format
 msgid "XSMP SmcOpenConnection failed: %s"
 msgstr "XSMP SmcOpenConnection fallita: %s"
 
 msgid "At line"
 msgstr "Alla riga"
 
+#, c-format
 msgid "Vim: Caught %s event\n"
 msgstr "Vim: Intercettato evento %s\n"
 
@@ -2453,15 +2555,18 @@ msgstr ""
 msgid "Vim Warning"
 msgstr "Avviso da Vim"
 
+#, c-format
 msgid "shell returned %d"
 msgstr "shell terminata con codice di ritorno %d"
 
+#, c-format
 msgid "(%d of %d)%s%s: "
 msgstr "(%d di %d)%s%s: "
 
 msgid " (line deleted)"
 msgstr " (riga cancellata)"
 
+#, c-format
 msgid "%serror list %d of %d; %d errors "
 msgstr "%slista errori %d di %d; %d errori"
 
@@ -2471,6 +2576,7 @@ msgstr "Nessun elemento"
 msgid "Error file"
 msgstr "File errori"
 
+#, c-format
 msgid "Cannot open file \"%s\""
 msgstr "Non riesco ad aprire il file \"%s\""
 
@@ -2487,14 +2593,17 @@ msgid "Could not open temporary log file
 msgstr ""
 "Non posso aprire il file temporaneo di log in scrittura, mostro su stderr... "
 
+#, c-format
 msgid " into \"%c"
 msgstr " in \"%c"
 
+#, c-format
 msgid "block of %ld line yanked%s"
 msgid_plural "block of %ld lines yanked%s"
 msgstr[0] "blocco di %ld riga messo in registro%s"
 msgstr[1] "blocco di %ld righe messo in registro%s"
 
+#, c-format
 msgid "%ld line yanked%s"
 msgid_plural "%ld lines yanked%s"
 msgstr[0] "%ld riga messa in registro%s"
@@ -2558,36 +2667,46 @@ msgstr " SELEZIONA BLOCCO"
 msgid "recording"
 msgstr "registrazione"
 
+#, c-format
 msgid "Searching for \"%s\" in \"%s\""
 msgstr "Cerco \"%s\" in \"%s\""
 
+#, c-format
 msgid "Searching for \"%s\""
 msgstr "Cerco \"%s\""
 
+#, c-format
 msgid "not found in '%s': \"%s\""
 msgstr "non trovato in '%s': \"%s\""
 
 msgid "Source Vim script"
 msgstr "Esegui script Vim"
 
+#, c-format
 msgid "Cannot source a directory: \"%s\""
 msgstr "Non riesco ad eseguire una directory: \"%s\""
 
+#, c-format
 msgid "could not source \"%s\""
 msgstr "non riesco ad eseguire \"%s\""
 
+#, c-format
 msgid "line %ld: could not source \"%s\""
 msgstr "riga %ld: non riesco ad eseguire \"%s\""
 
+#, c-format
 msgid "sourcing \"%s\""
 msgstr "eseguo \"%s\""
 
+#, c-format
 msgid "line %ld: sourcing \"%s\""
 msgstr "riga %ld: eseguo \"%s\""
 
+#, c-format
 msgid "finished sourcing %s"
 msgstr "esecuzione di %s terminata"
 
+#, c-format
 msgid "continuing in %s"
 msgstr "continuo in %s"
 
@@ -2630,9 +2749,11 @@ msgstr "  (Già elencati)"
 msgid "  NOT FOUND"
 msgstr "  NON TROVATO"
 
+#, c-format
 msgid "Scanning included file: %s"
 msgstr "Scandisco file incluso: %s"
 
+#, c-format
 msgid "Searching included file %s"
 msgstr "Cerco nel file incluso: %s"
 
@@ -2661,12 +2782,15 @@ msgstr ""
 "\n"
 "--- Segni ---"
 
+#, c-format
 msgid "Signs for %s:"
 msgstr "Segni per %s:"
 
+#, c-format
 msgid "  group=%s"
 msgstr "  gruppo=%s"
 
+#, c-format
 msgid "    line=%ld  id=%d%s  name=%s  priority=%d"
 msgstr "    riga=%ld  id=%d%s, nome=%s  priorità=%d"
 
@@ -2676,42 +2800,54 @@ msgstr " (NON TROVATO)"
 msgid " (not supported)"
 msgstr " (non supportata)"
 
+#, 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 "Warning: region %s not supported"
 msgstr "Avviso: regione %s non supportata"
 
+#, c-format
 msgid "Trailing text in %s line %d: %s"
 msgstr "Testo in eccesso in %s riga %d: %s"
 
+#, c-format
 msgid "Affix name too long in %s line %d: %s"
 msgstr "Nome affisso troppo lungo in %s riga %d: %s"
 
 msgid "Compressing word tree..."
 msgstr "Comprimo albero di parole..."
 
+#, c-format
 msgid "Reading spell file \"%s\""
 msgstr "Lettura file ortografico \"%s\""
 
+#, c-format
 msgid "Reading affix file %s..."
 msgstr "Lettura file affissi %s..."
 
+#, c-format
 msgid "Conversion failure for word in %s line %d: %s"
 msgstr "Conversione fallita per una parola in %s riga %d: %s"
 
+#, c-format
 msgid "Conversion in %s not supported: from %s to %s"
 msgstr "Conversione in %s non supportata: da %s a %s"
 
+#, c-format
 msgid "Invalid value for FLAG in %s line %d: %s"
 msgstr "Valore di FLAG non valido in %s riga %d: %s"
 
+#, c-format
 msgid "FLAG after using flags in %s line %d: %s"
 msgstr "FLAG dopo l'uso di flag in %s riga %d: %s"
 
+#, c-format
 msgid ""
 "Defining COMPOUNDFORBIDFLAG after PFX item may give wrong results in %s line "
 "%d"
@@ -2719,6 +2855,7 @@ msgstr ""
 "Definire COMPOUNDFORBIDFLAG dopo l'elemento PFX potrebbe dare risultati "
 "errati in %s riga %d"
 
+#, c-format
 msgid ""
 "Defining COMPOUNDPERMITFLAG after PFX item may give wrong results in %s line "
 "%d"
@@ -2726,27 +2863,35 @@ msgstr ""
 "Definire COMPOUNDPERMITFLAG dopo l'elemento PFX potrebbe dare risultati "
 "errati in %s riga %d"
 
+#, c-format
 msgid "Wrong COMPOUNDRULES value in %s line %d: %s"
 msgstr "Valore errato per COMPOUNDRULES in %s riga %d: %s"
 
+#, c-format
 msgid "Wrong COMPOUNDWORDMAX value in %s line %d: %s"
 msgstr "Valore errato per COMPOUNDWORDMAX in %s riga %d: %s"
 
+#, c-format
 msgid "Wrong COMPOUNDMIN value in %s line %d: %s"
 msgstr "Valore errato per COMPOUNDMIN in %s riga %d: %s"
 
+#, c-format
 msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s"
 msgstr "Valore errato per COMPOUNDSYLMAX in %s riga %d: %s"
 
+#, c-format
 msgid "Wrong CHECKCOMPOUNDPATTERN value in %s line %d: %s"
 msgstr "Valore errato per CHECKCOMPOUNDPATTERN in %s riga %d: %s"
 
+#, c-format
 msgid "Different combining flag in continued affix block in %s line %d: %s"
 msgstr "Flag combinazione diverso in blocco affissi continuo in %s riga %d: %s"
 
+#, c-format
 msgid "Duplicate affix in %s line %d: %s"
 msgstr "Affisso duplicato in %s riga %d: %s"
 
+#, c-format
 msgid ""
 "Affix also used for BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST in %s "
 "line %d: %s"
@@ -2754,24 +2899,31 @@ msgstr ""
 "Affisso usato anche per BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST "
 "in %s riga %d: %s"
 
+#, c-format
 msgid "Expected Y or N in %s line %d: %s"
 msgstr "Y o N dev'essere presente in %s riga %d: %s"
 
+#, c-format
 msgid "Broken condition in %s line %d: %s"
 msgstr "Condizione non rispettata in %s riga %d: %s"
 
+#, c-format
 msgid "Expected REP(SAL) count in %s line %d"
 msgstr "Contatore REP(SAL) necessario in %s riga %d"
 
+#, c-format
 msgid "Expected MAP count in %s line %d"
 msgstr "Contatore MAP necessario in %s riga %d"
 
+#, c-format
 msgid "Duplicate character in MAP in %s line %d"
 msgstr "Carattere duplicato in MAP in %s riga %d"
 
+#, c-format
 msgid "Unrecognized or duplicate item in %s line %d: %s"
 msgstr "Elemento non riconosciuto o duplicato in %s riga %d: %s"
 
+#, c-format
 msgid "Missing FOL/LOW/UPP line in %s"
 msgstr "Riga FOL/LOW/UPP mancante in %s"
 
@@ -2787,69 +2939,91 @@ msgstr "Troppi flag composti"
 msgid "Too many postponed prefixes and/or compound flags"
 msgstr "Troppi suffissi e/o flag composti"
 
+#, c-format
 msgid "Missing SOFO%s line in %s"
 msgstr "Riga SOFO%s mancante in %s"
 
+#, c-format
 msgid "Both SAL and SOFO lines in %s"
 msgstr "Righe sia SAL che SOFO in %s"
 
+#, c-format
 msgid "Flag is not a number in %s line %d: %s"
 msgstr "Il flag non è un numero in %s riga %d: %s"
 
+#, c-format
 msgid "Illegal flag in %s line %d: %s"
 msgstr "Flag non consentita in %s riga %d: %s"
 
+#, c-format
 msgid "%s value differs from what is used in another .aff file"
 msgstr "Il valore di %s è diverso da quello usato in un altro file .aff"
 
+#, c-format
 msgid "Reading dictionary file %s..."
 msgstr "Lettura file Dizionario %s..."
 
+#, c-format
 msgid "line %6d, word %6ld - %s"
 msgstr "riga %6d, parola %6ld - %s"
 
+#, c-format
 msgid "Duplicate word in %s line %d: %s"
 msgstr "Parola duplicata in %s riga %d: %s"
 
+#, c-format
 msgid "First duplicate word in %s line %d: %s"
 msgstr "Prima parola duplicata in %s riga %d: %s"
 
+#, c-format
 msgid "%d duplicate word(s) in %s"
 msgstr "%d parole duplicate in %s"
 
+#, c-format
 msgid "Ignored %d word(s) with non-ASCII characters in %s"
 msgstr "%d parole con caratteri non-ASCII ignorate in %s"
 
+#, c-format
 msgid "Reading word file %s..."
 msgstr "Lettura file parole %s..."
 
+#, c-format
 msgid "Conversion failure for word in %s line %ld: %s"
 msgstr "Conversione fallita per una parola in %s riga %ld: %s"
 
+#, c-format
 msgid "Duplicate /encoding= line ignored in %s line %ld: %s"
 msgstr "Riga /encoding= duplicata ignorata in %s riga %ld: %s"
 
+#, c-format
 msgid "/encoding= line after word ignored in %s line %ld: %s"
 msgstr "Riga /encoding= dopo parola ignorata in %s riga %ld: %s"
 
+#, c-format
 msgid "Duplicate /regions= line ignored in %s line %ld: %s"
 msgstr "Riga /regions= duplicata ignorata in %s riga %ld: %s"
 
+#, c-format
 msgid "Too many regions in %s line %ld: %s"
 msgstr "Troppe regioni in %s riga %ld: %s"
 
+#, c-format
 msgid "/ line ignored in %s line %ld: %s"
 msgstr "Riga / ignorata in %s riga %ld: %s"
 
+#, c-format
 msgid "Invalid region nr in %s line %ld: %s"
 msgstr "N. regione non valido in %s riga %ld: %s"
 
+#, c-format
 msgid "Unrecognized flags in %s line %ld: %s"
 msgstr "Flag non riconosciuti in %s riga %ld: %s"
 
+#, c-format
 msgid "Ignored %d words with non-ASCII characters"
 msgstr "%d parole con caratteri non-ASCII ignorate"
 
+#, c-format
 msgid "Compressed %s: %ld of %ld nodes; %ld (%ld%%) remaining"
 msgstr "Compressi %s: %ld di %ld nodi; ne restano %ld (%ld%%)"
 
@@ -2859,45 +3033,55 @@ msgstr "Rilettura file ortografico..."
 msgid "Performing soundfolding..."
 msgstr "Eseguo soundfolding..."
 
+#, c-format
 msgid "Number of words after soundfolding: %ld"
 msgstr "Numero di parole dopo soundfolding: %ld"
 
+#, c-format
 msgid "Total number of words: %d"
 msgstr "Conteggio totale delle parole: %d"
 
+#, c-format
 msgid "Writing suggestion file %s..."
 msgstr "Scrivo file di suggerimenti %s..."
 
+#, c-format
 msgid "Estimated runtime memory use: %d bytes"
 msgstr "Uso stimato di memoria durante esecuzione: %d byte"
 
 msgid "Warning: both compounding and NOBREAK specified"
 msgstr "Avviso: specificati sia composizione sia NOBREAK"
 
+#, c-format
 msgid "Writing spell file %s..."
 msgstr "Scrivo file ortografico %s..."
 
 msgid "Done!"
 msgstr "Fatto!"
 
+#, c-format
 msgid "Word '%.*s' removed from %s"
 msgstr "Parola '%.*s' rimossa da %s"
 
 msgid "Seek error in spellfile"
 msgstr "Errore di posizionamento nel file di spell"
 
+#, c-format
 msgid "Word '%.*s' added to %s"
 msgstr "Parola '%.*s' aggiunta a %s"
 
 msgid "Sorry, no suggestions"
 msgstr "Spiacente, nessun suggerimento"
 
+#, c-format
 msgid "Sorry, only %ld suggestions"
 msgstr "Spiacente, solo %ld suggerimenti"
 
+#, c-format
 msgid "Change \"%.*s\" to:"
 msgstr "Cambiare \"%.*s\" in:"
 
+#, c-format
 msgid " < \"%.*s\""
 msgstr " < \"%.*s\""
 
@@ -2907,36 +3091,6 @@ msgstr "Nessun elemento sintattico defin
 msgid "'redrawtime' exceeded, syntax highlighting disabled"
 msgstr "'redrawtime' superato, evidenziazione sintattica disabilitata"
 
-msgid "syntax conceal on"
-msgstr "syntax conceal attivo"
-
-msgid "syntax conceal off"
-msgstr "syntax conceal inattivo"
-
-msgid "syntax case ignore"
-msgstr "syntax, ignorare maiuscolo/minuscolo"
-
-msgid "syntax case match"
-msgstr "syntax, considerare maiuscolo/minuscolo"
-
-msgid "syntax foldlevel start"
-msgstr "syntax, inizio di livello di piegatura"
-
-msgid "syntax foldlevel minimum"
-msgstr "syntax, livello di piegatura minimo"
-
-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 "
-
 msgid "syntax iskeyword not set"
 msgstr "syntax iskeyword non impostato"
 
@@ -2996,9 +3150,11 @@ msgid ""
 msgstr ""
 "  TOTALE     CONT.  CORRIS. PIÙ LENTO   MEDIA     NOME               MODELLO"
 
+#, c-format
 msgid "File \"%s\" does not exist"
 msgstr "Il file \"%s\" non esiste"
 
+#, c-format
 msgid "tag %d of %d%s"
 msgstr "tag %d di %d%s"
 
@@ -3021,15 +3177,18 @@ msgstr ""
 "\n"
 "  # A_ tag         DA__ riga  in file/testo"
 
-msgid "Searching tags file %s"
-msgstr "Ricerca nel tag file %s"
-
+msgid "Ignoring long line in tags file"
+msgstr "Riga lunga ignorata nel tag file"
+
+#, c-format
 msgid "Before byte %ld"
 msgstr "Prima del byte %ld"
 
-msgid "Ignoring long line in tags file"
-msgstr "Riga lunga ignorata nel tag file"
-
+#, c-format
+msgid "Searching tags file %s"
+msgstr "Ricerca nel tag file %s"
+
+#, c-format
 msgid "Duplicate field name: %s"
 msgstr "Nome di campo duplicato: %s"
 
@@ -3046,6 +3205,7 @@ msgstr ""
 "\n"
 "--- Tasti Terminale ---"
 
+#, c-format
 msgid "Kill job in \"%s\"?"
 msgstr "Cancello lavoro \"%s\"?"
 
@@ -3071,6 +3231,7 @@ msgstr "(Non valido)"
 msgid "%a %b %d %H:%M:%S %Y"
 msgstr "%a %b %d %H:%M:%S %Y"
 
+#, c-format
 msgid "%ld second ago"
 msgid_plural "%ld seconds ago"
 msgstr[0] "%ld secondo fa"
@@ -3088,27 +3249,33 @@ msgstr "'undo' non più possibile; continuo comunque"
 msgid "Cannot write undo file in any directory in 'undodir'"
 msgstr "Non posso scrivere un file Undo in alcuna directory di 'undodir'"
 
+#, c-format
 msgid "Will not overwrite with undo file, cannot read: %s"
 msgstr "File Undo non sovrascritto, non riesco a leggere: %s"
 
+#, c-format
 msgid "Will not overwrite, this is not an undo file: %s"
 msgstr "Non sovrascritto, non è un file Undo: %s"
 
 msgid "Skipping undo file write, nothing to undo"
 msgstr "Ometto scrittura del file Undo, non ci sono modifiche"
 
+#, c-format
 msgid "Writing undo file: %s"
 msgstr "Scrivo file Undo: %s"
 
+#, c-format
 msgid "Not reading undo file, owner differs: %s"
 msgstr "Non leggo file Undo, appartiene a un altro utente: %s"
 
+#, c-format
 msgid "Reading undo file: %s"
 msgstr "Lettura file Undo: %s"
 
 msgid "File contents changed, cannot use undo info"
 msgstr "File ulteriormente modificato, non posso usare informazioni di Undo"
 
+#, c-format
 msgid "Finished reading undo file %s"
 msgstr "Lettura del file Undo %s effettuata"
 
@@ -3136,6 +3303,7 @@ msgstr "modifica"
 msgid "changes"
 msgstr "modifiche"
 
+#, c-format
 msgid "%ld %s; %s #%ld  %s"
 msgstr "%ld %s; %s #%ld  %s"
 
@@ -3161,21 +3329,27 @@ msgstr ""
 msgid "No user-defined commands found"
 msgstr "Non trovo comandi definiti dall'utente"
 
+#, c-format
 msgid "W22: Text found after :endfunction: %s"
 msgstr "W22: Trovato testo dopo :endfunction: %s"
 
+#, 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 "%s (%s, compiled %s)"
 msgstr "%s (%s, compilato %s)"
 
@@ -3322,12 +3496,6 @@ msgstr "con GUI GTK2."
 msgid "with X11-Motif GUI."
 msgstr "con GUI X11-Motif."
 
-msgid "with X11-neXtaw GUI."
-msgstr "con GUI X11-neXtaw."
-
-msgid "with X11-Athena GUI."
-msgstr "con GUI X11-Athena."
-
 msgid "with Haiku GUI."
 msgstr "con GUI Haiku."
 
@@ -3485,6 +3653,7 @@ msgstr ""
 "\n"
 "# Lista Buffer:\n"
 
+#, c-format
 msgid ""
 "\n"
 "# %s History (newest to oldest):\n"
@@ -3514,6 +3683,7 @@ msgstr ""
 "\n"
 "# Righe che iniziano con '|', semplicemente copiate:\n"
 
+#, c-format
 msgid "%sviminfo: %s in line: "
 msgstr "%sviminfo: %s nella riga: "
 
@@ -3533,6 +3703,7 @@ msgstr ""
 "# Ultima Stringa Sostituzione:\n"
 "$"
 
+#, c-format
 msgid ""
 "\n"
 "# Last %sSearch Pattern:\n"
@@ -3574,6 +3745,7 @@ msgstr ""
 "\n"
 "# Jumplist (dai più recenti):\n"
 
+#, c-format
 msgid "# This viminfo file was generated by Vim %s.\n"
 msgstr "# Questo file viminfo è stato generato da Vim %s.\n"
 
@@ -3587,6 +3759,7 @@ msgstr ""
 msgid "# Value of 'encoding' when this file was written\n"
 msgstr "# Valore di 'encoding' al momento della scrittura di questo file\n"
 
+#, c-format
 msgid "Reading viminfo file \"%s\"%s%s%s%s"
 msgstr "Lettura file viminfo \"%s\"%s%s%s%s"
 
@@ -3602,12 +3775,14 @@ msgstr " file elaborati in precedenza"
 msgid " FAILED"
 msgstr " FALLITO"
 
+#, c-format
 msgid "Writing viminfo file \"%s\""
 msgstr "Scrivo file viminfo \"%s\""
 
 msgid "Already only one window"
 msgstr "C'è già una finestra sola"
 
+#, c-format
 msgid "E370: Could not load library %s"
 msgstr "E370: Non riesco a caricare la libreria %s"
 
@@ -3662,12 +3837,14 @@ msgstr ""
 msgid "E13: File exists (add ! to override)"
 msgstr "E13: File esistente (aggiungi ! per riscriverlo)"
 
+#, c-format
 msgid "E15: Invalid expression: \"%s\""
 msgstr "E15: Espressione non valida: \"%s\""
 
 msgid "E16: Invalid range"
 msgstr "E16: Intervallo non valido"
 
+#, c-format
 msgid "E17: \"%s\" is a directory"
 msgstr "E17: \"%s\" è una directory"
 
@@ -3704,6 +3881,7 @@ msgstr "E26: Ebraico non utilizzabile: N
 msgid "E27: Farsi support has been removed\n"
 msgstr "E27: Il supporto per la lingua farsi non è più disponibile\n"
 
+#, c-format
 msgid "E28: No such highlight group name: %s"
 msgstr "E28: Nome di gruppo evidenziazione inesistente: %s"
 
@@ -3743,6 +3921,7 @@ msgstr "E38: Argomento nullo"
 msgid "E39: Number expected"
 msgstr "E39: Atteso un numero"
 
+#, c-format
 msgid "E40: Can't open errorfile %s"
 msgstr "E40: Non riesco ad aprire il file errori %s"
 
@@ -3764,6 +3943,7 @@ msgstr "E45: file in sola-lettura (aggiu
 msgid "E46: Cannot change read-only variable"
 msgstr "E46: Non posso cambiare variabile read-only"
 
+#, c-format
 msgid "E46: Cannot change read-only variable \"%s\""
 msgstr "E46: Non posso cambiare variabile read-only \"%s\""
 
@@ -3779,36 +3959,45 @@ msgstr "E49: Quantità di scorrimento non valida"
 msgid "E50: Too many \\z("
 msgstr "E50: Troppe \\z("
 
+#, c-format
 msgid "E51: Too many %s("
 msgstr "E51: Troppe %s("
 
 msgid "E52: Unmatched \\z("
 msgstr "E52: Senza riscontro: \\z("
 
+#, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: Senza riscontro: %s%%("
 
+#, c-format
 msgid "E54: Unmatched %s("
 msgstr "E54: Senza riscontro: %s("
 
+#, c-format
 msgid "E55: Unmatched %s)"
 msgstr "E55: Senza riscontro: %s)"
 
+#, c-format
 msgid "E59: invalid character after %s@"
 msgstr "E59: Carattere non valido dopo %s@"
 
+#, c-format
 msgid "E60: Too many complex %s{...}s"
 msgstr "E60: Troppi %s{...}s complessi"
 
+#, c-format
 msgid "E61: Nested %s*"
 msgstr "E61: %s* nidificato"
 
+#, c-format
 msgid "E62: Nested %s%c"
 msgstr "E62: %s%c nidificato"
 
 msgid "E63: invalid use of \\_"
 msgstr "E63: uso non valido di \\_"
 
+#, c-format
 msgid "E64: %s%c follows nothing"
 msgstr "E64: %s%c senza nulla prima"
 
@@ -3824,12 +4013,15 @@ msgstr "E67: \\z1 - \\z9 non consentiti 
 msgid "E68: Invalid character after \\z"
 msgstr "E68: Carattere non valido dopo \\z"
 
+#, c-format
 msgid "E69: Missing ] after %s%%["
 msgstr "E69: Manca ] dopo %s%%["
 
+#, c-format
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] vuoto"
 
+#, c-format
 msgid "E71: Invalid character after %s%%"
 msgstr "E71: Carattere non valido dopo %s%%"
 
@@ -3875,6 +4067,7 @@ msgstr "E84: Nessun buffer risulta modif
 msgid "E85: There is no listed buffer"
 msgstr "E85: Non c'è alcun buffer elencato"
 
+#, c-format
 msgid "E86: Buffer %ld does not exist"
 msgstr "E86: Non esiste il buffer %ld"
 
@@ -3884,6 +4077,7 @@ msgstr "E87: Non posso oltrepassare l'ul
 msgid "E88: Cannot go before first buffer"
 msgstr "E88: Non posso andare prima del primo buffer"
 
+#, c-format
 msgid "E89: No write since last change for buffer %d (add ! to override)"
 msgstr ""
 "E89: Buffer %d non salvato dopo modifica (aggiungi ! per eseguire comunque)"
@@ -3894,18 +4088,22 @@ msgstr "E90: Non riesco a scaricare l'ul
 msgid "E91: 'shell' option is empty"
 msgstr "E91: opzione 'shell' non impostata"
 
+#, c-format
 msgid "E92: Buffer %d not found"
 msgstr "E92: Buffer %d non trovato"
 
+#, c-format
 msgid "E93: More than one match for %s"
 msgstr "E93: Più di una corrispondenza per %s"
 
+#, c-format
 msgid "E94: No matching buffer for %s"
 msgstr "E94: Nessun buffer corrispondente a %s"
 
 msgid "E95: Buffer with this name already exists"
 msgstr "E95: C'è già un buffer con questo nome"
 
+#, c-format
 msgid "E96: Cannot diff more than %d buffers"
 msgstr "E96: Non supporto differenze fra più di %d buffer"
 
@@ -3924,9 +4122,11 @@ msgstr "E100: Non c'è nessun altro buffer in modalità 'diff'"
 msgid "E101: More than two buffers in diff mode, don't know which one to use"
 msgstr "E101: Più di due buffer in modalità 'diff', non so quale usare"
 
+#, c-format
 msgid "E102: Can't find buffer \"%s\""
 msgstr "E102: Non riesco a trovare il buffer: \"%s\""
 
+#, c-format
 msgid "E103: Buffer \"%s\" is not in diff mode"
 msgstr "E103: Il buffer \"%s\" non è in modalità 'diff'"
 
@@ -3936,9 +4136,11 @@ msgstr "E104: Escape non consentito nei 
 msgid "E105: Using :loadkeymap not in a sourced file"
 msgstr "E105: Uso di :loadkeymap fuori da un file di comandi"
 
+#, 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\""
 
@@ -3951,63 +4153,81 @@ msgstr "E110: Manca ')'"
 msgid "E111: Missing ']'"
 msgstr "E111: Manca ']'"
 
+#, c-format
 msgid "E112: Option name missing: %s"
 msgstr "E112: Nome Opzione mancante: %s"
 
+#, c-format
 msgid "E113: Unknown option: %s"
 msgstr "E113: Opzione sconosciuta: %s"
 
+#, c-format
 msgid "E114: Missing double quote: %s"
 msgstr "E114: Mancano doppi apici: %s"
 
+#, c-format
 msgid "E115: Missing single quote: %s"
 msgstr "E115: Manca apice semplice: %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 "E118: Too many arguments for function: %s"
 msgstr "E118: Troppi argomenti per la funzione: %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 "E121: Undefined variable: %s"
 msgstr "E121: Variabile non definita: %s"
 
+#, c-format
 msgid "E121: Undefined variable: %c:%s"
 msgstr "E121: Variabile non definita: %c:%s"
 
+#, c-format
 msgid "E122: Function %s already exists, add ! to replace it"
 msgstr "E122: La funzione %s esiste già, aggiungi ! per sostituirla"
 
+#, c-format
 msgid "E123: Undefined function: %s"
 msgstr "E123: Funzione non definita: %s"
 
+#, c-format
 msgid "E124: Missing '(': %s"
 msgstr "E124: Manca '(': %s"
 
+#, c-format
 msgid "E125: Illegal argument: %s"
 msgstr "E125: Argomento non consentito: %s"
 
 msgid "E126: Missing :endfunction"
 msgstr "E126: Manca :endfunction"
 
+#, 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 "E128: Function name must start with a capital or \"s:\": %s"
 msgstr "E128: Il nome funzione deve iniziare con maiuscola o \"s:\": %s"
 
 msgid "E129: Function name required"
 msgstr "E129: Nome funzione necessario"
 
+#, c-format
 msgid "E131: Cannot delete function %s: It is in use"
 msgstr "E131: Non posso eliminare la funzione %s: È in uso"
 
@@ -4027,9 +4247,11 @@ msgstr "E135: *Filter* Gli autocomandi n
 msgid "E136: viminfo: Too many errors, skipping rest of file"
 msgstr "E136: viminfo: Troppi errori, ignoro il resto del file"
 
+#, c-format
 msgid "E137: Viminfo file is not writable: %s"
 msgstr "E137: File viminfo \"%s\" inaccessibile in scrittura"
 
+#, c-format
 msgid "E138: Can't write viminfo file %s!"
 msgstr "E138: Non riesco a scrivere il file viminfo %s!"
 
@@ -4039,12 +4261,14 @@ msgstr "E139: File già caricato in un altro buffer"
 msgid "E140: Use ! to write partial buffer"
 msgstr "E140: Usa ! per scrivere il buffer incompleto"
 
+#, c-format
 msgid "E141: No file name for buffer %ld"
 msgstr "E141: Manca nome file per il buffer %ld"
 
 msgid "E142: File not written: Writing is disabled by 'write' option"
 msgstr "E142: File non scritto: Scrittura inibita da opzione 'write'"
 
+#, c-format
 msgid "E143: Autocommands unexpectedly deleted new buffer %s"
 msgstr ""
 "E143: Gli autocomandi hanno inaspettatamente cancellato il nuovo buffer %s"
@@ -4064,45 +4288,57 @@ msgstr "E147: :global non può essere usato ricorsivamente con un intervallo"
 msgid "E148: Regular expression missing from :global"
 msgstr "E148: Manca espressione regolare nel comando :global"
 
+#, c-format
 msgid "E149: Sorry, no help for %s"
 msgstr "E149: Spiacente, nessun aiuto per %s"
 
+#, c-format
 msgid "E150: Not a directory: %s"
 msgstr "E150: %s non è una directory"
 
+#, c-format
 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"
 
+#, c-format
 msgid "E153: Unable to open %s for reading"
 msgstr "E153: Non riesco ad aprire %s in lettura"
 
+#, c-format
 msgid "E154: Duplicate tag \"%s\" in file %s/%s"
 msgstr "E154: Tag duplicato \"%s\" nel file %s/%s"
 
+#, c-format
 msgid "E155: Unknown sign: %s"
 msgstr "E155: 'sign' sconosciuto: %s"
 
 msgid "E156: Missing sign name"
 msgstr "E156: Manca nome 'sign'"
 
+#, c-format
 msgid "E157: Invalid sign ID: %d"
 msgstr "E157: ID 'sign' non valido: %d"
 
+#, c-format
 msgid "E158: Invalid buffer name: %s"
 msgstr "E158: Nome buffer non valido: %s"
 
 msgid "E159: Missing sign number"
 msgstr "E159: Manca numero 'sign'"
 
+#, c-format
 msgid "E160: Unknown sign command: %s"
 msgstr "E160: Comando 'sign' sconosciuto: %s"
 
+#, c-format
 msgid "E161: Breakpoint not found: %s"
 msgstr "E161: Breakpoint %s non trovato"
 
+#, c-format
 msgid "E162: No write since last change for buffer \"%s\""
 msgstr "E162: Buffer \"%s\" non salvato dopo modifica"
 
@@ -4139,12 +4375,15 @@ msgstr "E171: Manca :endif"
 msgid "E172: Missing marker"
 msgstr "E172: Manca un marcatore"
 
+#, c-format
 msgid "E173: %d more file to edit"
 msgstr "E173: %d ulteriore file da elaborare"
 
+#, c-format
 msgid "E173: %d more files to edit"
 msgstr "E173: %d ulteriori file da elaborare"
 
+#, c-format
 msgid "E174: Command already exists: add ! to replace it: %s"
 msgstr "E174: Il comando esiste già: aggiungi ! per sostituirlo: %s"
 
@@ -4160,15 +4399,19 @@ msgstr "E177: Non si può specificare due volte il contatore"
 msgid "E178: Invalid default value for count"
 msgstr "E178: Valore predefinito del contatore non valido"
 
+#, c-format
 msgid "E179: argument required for %s"
 msgstr "E179: argomento necessario per %s"
 
+#, c-format
 msgid "E180: Invalid complete value: %s"
 msgstr "E180: Valore %s non valido per 'complete'"
 
+#, c-format
 msgid "E180: Invalid address type value: %s"
 msgstr "E180: Tipo di indirizzo non valido: %s"
 
+#, c-format
 msgid "E181: Invalid attribute: %s"
 msgstr "E181: Attributo non valido: %s"
 
@@ -4179,9 +4422,11 @@ msgid "E183: User defined commands must 
 msgstr ""
 "E183: I comandi definiti dall'utente devono iniziare con lettera maiuscola"
 
+#, c-format
 msgid "E184: No such user-defined command: %s"
 msgstr "E184: Comando definito dall'utente %s inesistente"
 
+#, c-format
 msgid "E185: Cannot find color scheme '%s'"
 msgstr "E185: Non riesco a trovare schema colore '%s'"
 
@@ -4195,9 +4440,11 @@ msgid "E188: Obtaining window position n
 msgstr ""
 "E188: Informazioni posizione finestra non disponibili su questa piattaforma"
 
+#, c-format
 msgid "E189: \"%s\" exists (add ! to override)"
 msgstr "E189: \"%s\" esiste (aggiungi ! per eseguire comunque)"
 
+#, c-format
 msgid "E190: Cannot open \"%s\" for writing"
 msgstr "E190: Non riesco ad aprire \"%s\" in scrittura"
 
@@ -4208,6 +4455,7 @@ msgstr ""
 msgid "E192: Recursive use of :normal too deep"
 msgstr "E192: Uso ricorsivo di :normal troppo esteso"
 
+#, c-format
 msgid "E193: %s not inside a function"
 msgstr "E193: %s non all'interno di una funzione"
 
@@ -4220,6 +4468,7 @@ msgstr "E195: Non posso aprire il file v
 msgid "E196: No digraphs in this version"
 msgstr "E196: Digrammi non supportati in questa versione"
 
+#, c-format
 msgid "E197: Cannot set language to \"%s\""
 msgstr "E197: Non posso impostare lingua a \"%s\""
 
@@ -4250,15 +4499,19 @@ msgstr "E206: Patchmode: non posso alter
 msgid "E207: Can't delete backup file"
 msgstr "E207: Non riesco a cancellare il file di backup"
 
+#, c-format
 msgid "E208: Error writing to \"%s\""
 msgstr "E208: Errore in scrittura di \"%s\""
 
+#, c-format
 msgid "E209: Error closing \"%s\""
 msgstr "E209: Errore in chiusura di \"%s\""
 
+#, c-format
 msgid "E210: Error reading \"%s\""
 msgstr "E210: Errore in lettura di \"%s\""
 
+#, c-format
 msgid "E211: File \"%s\" no longer available"
 msgstr "E211: Il file \"%s\" non esiste più"
 
@@ -4272,12 +4525,15 @@ msgstr ""
 msgid "E214: Can't find temp file for writing"
 msgstr "E214: Non riesco a trovare un file 'temp' su cui scrivere"
 
+#, c-format
 msgid "E215: Illegal character after *: %s"
 msgstr "E215: Carattere non ammesso dopo *: %s"
 
+#, c-format
 msgid "E216: No such event: %s"
 msgstr "E216: Evento inesistente: %s"
 
+#, c-format
 msgid "E216: No such group or event: %s"
 msgstr "E216: Evento o gruppo inesistente: %s"
 
@@ -4302,15 +4558,19 @@ msgstr "E222: Aggiunta a buffer interno da cui si era già letto"
 msgid "E223: recursive mapping"
 msgstr "E223: mappatura ricorsiva"
 
+#, c-format
 msgid "E224: global abbreviation already exists for %s"
 msgstr "E224: una abbreviazione globale già esiste per %s"
 
+#, c-format
 msgid "E225: global mapping already exists for %s"
 msgstr "E225: una mappatura globale già esiste per %s"
 
+#, c-format
 msgid "E226: abbreviation already exists for %s"
 msgstr "E226: un'abbreviazione già esiste per %s"
 
+#, c-format
 msgid "E227: mapping already exists for %s"
 msgstr "E227: una mappatura già esiste per %s"
 
@@ -4320,6 +4580,7 @@ msgstr "E228: makemap: modo non consenti
 msgid "E229: Cannot start the GUI"
 msgstr "E229: Non posso inizializzare la GUI"
 
+#, c-format
 msgid "E230: Cannot read from \"%s\""
 msgstr "E230: Non posso leggere da \"%s\""
 
@@ -4332,45 +4593,55 @@ msgstr "E232: Non riesco a creare 'Ballo
 msgid "E233: cannot open display"
 msgstr "E233: non riesco ad aprire lo schermo"
 
+#, c-format
 msgid "E234: Unknown fontset: %s"
 msgstr "E234: Fontset sconosciuto: %s"
 
+#, c-format
 msgid "E235: Unknown font: %s"
 msgstr "E235: Font sconosciuto: %s"
 
+#, c-format
 msgid "E236: Font \"%s\" is not fixed-width"
 msgstr "E236: Carattere \"%s\" non di larghezza fissa"
 
 msgid "E237: Printer selection failed"
 msgstr "E237: Scelta stampante non riuscita"
 
+#, c-format
 msgid "E238: Print error: %s"
 msgstr "E238: Errore durante stampa: %s"
 
+#, c-format
 msgid "E239: Invalid sign text: %s"
 msgstr "E239: Testo 'sign' non valido: %s"
 
 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 "E242: Can't split a window while closing another"
 msgstr "E242: Non posso dividere una finestra mentre ne sto chiudendo un'altra"
 
+#, c-format
 msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
 msgstr "E243: Argomento non supportato: \"-%s\"; Usa la versione OLE."
 
+#, c-format
 msgid "E244: Illegal %s name \"%s\" in font name \"%s\""
 msgstr "E244: Nome %s non consentito \"%s\" nel nome di carattere \"%s\""
 
+#, c-format
 msgid "E245: Illegal char '%c' in font name \"%s\""
 msgstr "E245: Carattere non consentito '%c' nel nome di carattere \"%s\""
 
 msgid "E246: FileChangedShell autocommand deleted buffer"
 msgstr "E246: L'autocomando 'FileChangedShell' ha cancellato il buffer"
 
+#, c-format
 msgid "E247: no registered server named \"%s\""
 msgstr "E247: non esiste server registrato con nome \"%s\""
 
@@ -4380,18 +4651,22 @@ msgstr "E248: Fallito invio comando a pr
 msgid "E249: window layout changed unexpectedly"
 msgstr "E249: la struttura della finestra è inaspettatamente cambiata"
 
+#, c-format
 msgid "E250: Fonts for the following charsets are missing in fontset %s:"
 msgstr "E250: Mancano descrizioni per i seguenti caratteri nel font: %s"
 
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251: Proprietà registry relative a VIM non adeguate.  Cancellate!"
 
+#, c-format
 msgid "E252: Fontset name: %s - Font '%s' is not fixed-width"
 msgstr "E252: Nome fontset: %s - Carattere '%s' non di larghezza fissa"
 
+#, c-format
 msgid "E253: Fontset name: %s"
 msgstr "E253: Nome fontset: %s"
 
+#, c-format
 msgid "E254: Cannot allocate color %s"
 msgstr "E254: Non riesco ad allocare il colore %s"
 
@@ -4404,15 +4679,18 @@ msgstr "E257: cstag: tag non trovato"
 msgid "E258: Unable to send to client"
 msgstr "E258: Impossibile inviare al client"
 
+#, c-format
 msgid "E259: no matches found for cscope query %s of %s"
 msgstr "E259: nessuna corrispondenza trovata per la richiesta cscope %s di %s"
 
 msgid "E260: Missing name after ->"
 msgstr "E260: Manca nome dopo ->"
 
+#, c-format
 msgid "E261: cscope connection %s not found"
 msgstr "E261: connessione cscope %s non trovata"
 
+#, c-format
 msgid "E262: error reading cscope connection %d"
 msgstr "E262: errore leggendo connessione cscope %d"
 
@@ -4453,6 +4731,7 @@ msgstr "E271: retry fuori da clausola re
 msgid "E272: unhandled exception"
 msgstr "E272: eccezione non gestita"
 
+#, c-format
 msgid "E273: unknown longjmp status %d"
 msgstr "E273: tipo sconosciuto di salto nel programma %d"
 
@@ -4462,6 +4741,7 @@ msgstr "E274: Nessuno spazio bianco cons
 msgid "E275: Cannot add text property to unloaded buffer"
 msgstr "E275: Non posso aggiungere proprietà di testo a un buffer scaricato"
 
+#, c-format
 msgid "E276: Cannot use function as a method: %s"
 msgstr "E276: Non posso usare la funzione come un metodo: %s"
 
@@ -4478,9 +4758,11 @@ msgstr ""
 "E280: ERRORE FATALE TCL: reflist corrotta!? Si prega notificare a vim-"
 "dev@vim.org"
 
+#, c-format
 msgid "E282: Cannot read from \"%s\""
 msgstr "E282: Non posso leggere da \"%s\""
 
+#, c-format
 msgid "E283: No marks matching \"%s\""
 msgstr "E283: Nessuna marcatura corrispondente a \"%s\""
 
@@ -4505,6 +4787,7 @@ msgstr "E289: Metodo di Input non suppor
 msgid "E290: List or number required"
 msgstr "E290: È necessaria una Lista o un Numero"
 
+#, c-format
 msgid "E292: Invalid count for del_bytes(): %ld"
 msgstr "E292: Contatore non valido per del_bytes(): %ld"
 
@@ -4546,6 +4829,7 @@ msgstr "E301: Ahimè, lo swap file è perduto!!!"
 msgid "E302: Could not rename swap file"
 msgstr "E302: Non riesco a rinominare lo swap file"
 
+#, c-format
 msgid "E303: Unable to open swap file for \"%s\", recovery impossible"
 msgstr ""
 "E303: Non riesco ad aprire lo swap file per \"%s\", recupero impossibile"
@@ -4553,12 +4837,15 @@ msgstr ""
 msgid "E304: ml_upd_block0(): Didn't get block 0??"
 msgstr "E304: ml_upd_block0(): Non riesco a leggere blocco 0??"
 
+#, c-format
 msgid "E305: No swap file found for %s"
 msgstr "E305: Nessun swap file trovato per %s"
 
+#, c-format
 msgid "E306: Cannot open %s"
 msgstr "E306: Non riesco ad aprire %s"
 
+#, c-format
 msgid "E307: %s does not look like a Vim swap file"
 msgstr "E307: %s non sembra uno swap file Vim"
 
@@ -4566,9 +4853,11 @@ msgid "E308: Warning: Original file may 
 msgstr ""
 "E308: Avviso: il file originale può essere stato modificato nel frattempo"
 
+#, c-format
 msgid "E309: Unable to read block 1 from %s"
 msgstr "E309: Impossibile leggere blocco 1 da %s"
 
+#, c-format
 msgid "E310: Block 1 ID wrong (%s not a .swp file?)"
 msgstr "E310: ID del Blocco 1 errato (che %s non sia un .swp file?)"
 
@@ -4586,9 +4875,11 @@ msgstr "E313: Non posso preservare, manc
 msgid "E314: Preserve failed"
 msgstr "E314: Preservazione fallita"
 
+#, c-format
 msgid "E315: ml_get: invalid lnum: %ld"
 msgstr "E315: ml_get: numero di riga non valido: %ld"
 
+#, c-format
 msgid "E316: ml_get: cannot find line %ld in buffer %d %s"
 msgstr "E316: ml_get: non riesco a trovare la riga %ld nel buffer %d %s"
 
@@ -4610,15 +4901,19 @@ msgstr "E318: Aggiornati troppi blocchi?
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: Spiacente, comando non disponibile in questa versione"
 
+#, c-format
 msgid "E320: Cannot find line %ld"
 msgstr "E320: Non riesco a trovare la riga %ld"
 
+#, c-format
 msgid "E321: Could not reload \"%s\""
 msgstr "E321: Non riesco a ricaricare \"%s\""
 
+#, c-format
 msgid "E322: line number out of range: %ld past the end"
 msgstr "E322: numero di riga non ammissibile: %ld dopo la fine"
 
+#, c-format
 msgid "E323: line count wrong in block %ld"
 msgstr "E323: contatore righe errato nel blocco %ld"
 
@@ -4638,6 +4933,7 @@ msgstr ""
 msgid "E328: Menu only exists in another mode"
 msgstr "E328: I Menù esistono solo in un'altra modalità"
 
+#, c-format
 msgid "E329: No menu \"%s\""
 msgstr "E329: Nessun Menù \"%s\""
 
@@ -4654,9 +4950,11 @@ msgstr "E332: Il separatore non può far parte di un percorso di Menù"
 msgid "E333: Menu path must lead to a menu item"
 msgstr "E333: Il percorso Menù deve condurre ad un elemento Menù"
 
+#, c-format
 msgid "E334: Menu not found: %s"
 msgstr "E334: Menù non trovato: %s"
 
+#, c-format
 msgid "E335: Menu not defined for %s mode"
 msgstr "E335: Menù non definito per la modalità %s"
 
@@ -4675,9 +4973,11 @@ msgstr "E339: Espressione troppo lunga"
 msgid "E341: Internal error: lalloc(0, )"
 msgstr "E341: Errore interno: lalloc(0, )"
 
+#, c-format
 msgid "E342: Out of memory!  (allocating %lu bytes)"
 msgstr "E342: Non c'è più memoria! (stavo allocando %lu byte)"
 
+#, c-format
 msgid ""
 "E343: Invalid path: '**[number]' must be at the end of the path or be "
 "followed by '%s'."
@@ -4685,15 +4985,19 @@ msgstr ""
 "E343: Percorso non valido: '**[numero]' dev'essere a fine percorso o essere "
 "seguito da '%s'."
 
+#, c-format
 msgid "E344: Can't find directory \"%s\" in cdpath"
 msgstr "E344: Non riesco a trovare la directory \"%s\" nel 'cdpath'"
 
+#, c-format
 msgid "E345: Can't find file \"%s\" in path"
 msgstr "E345: Non riesco a trovare il file \"%s\" nel percorso"
 
+#, c-format
 msgid "E346: No more directory \"%s\" found in cdpath"
 msgstr "E346: Nessun altra directory \"%s\" trovata nel 'cdpath'"
 
+#, c-format
 msgid "E347: No more file \"%s\" found in path"
 msgstr "E347: Nessun altro file \"%s\" trovato nel percorso"
 
@@ -4712,21 +5016,26 @@ msgstr "E351: Non posso cancellare piega
 msgid "E352: Cannot erase folds with current 'foldmethod'"
 msgstr "E352: Non posso togliere piegature con il 'foldmethod' in uso"
 
+#, c-format
 msgid "E353: Nothing in register %s"
 msgstr "E353: Niente nel registro %s"
 
+#, c-format
 msgid "E354: Invalid register name: '%s'"
 msgstr "E354: Nome registro non valido: '%s'"
 
+#, c-format
 msgid "E355: Unknown option: %s"
 msgstr "E355: Opzione sconosciuta: %s"
 
 msgid "E356: get_varp ERROR"
 msgstr "E356: ERRORE get_varp"
 
+#, c-format
 msgid "E357: 'langmap': Matching character missing for %s"
 msgstr "E357: 'langmap': Manca carattere corrispondente per %s"
 
+#, c-format
 msgid "E358: 'langmap': Extra characters after semicolon: %s"
 msgstr "E358: 'langmap': Caratteri in più dopo il ';': %s"
 
@@ -4742,6 +5051,7 @@ msgstr "E362: Uso di un valore Booleano 
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: l'espressione usa troppa memoria rispetto a 'maxmempattern'"
 
+#, c-format
 msgid "E364: Library call failed for \"%s()\""
 msgstr "E364: Chiamata a libreria fallita per \"%s()\""
 
@@ -4751,36 +5061,45 @@ msgstr "E365: Non riesco ad aprire file 
 msgid "E366: Not allowed to enter a popup window"
 msgstr "E366: Non si può inserire testo in una finestra dinamica"
 
+#, c-format
 msgid "E367: No such group: \"%s\""
 msgstr "E367: Gruppo inesistente: \"%s\""
 
+#, c-format
 msgid "E368: got SIG%s in libcall()"
 msgstr "E368: ottenuto SIG%s in libcall()"
 
+#, c-format
 msgid "E369: invalid item in %s%%[]"
 msgstr "E369: elemento non valido in %s%%[]"
 
+#, c-format
 msgid "E370: Could not load library %s: %s"
 msgstr "E370: Non riesco a caricare la libreria %s: %s"
 
 msgid "E371: Command not found"
 msgstr "E371: Comando non trovato"
 
+#, c-format
 msgid "E372: Too many %%%c in format string"
 msgstr "E372: Troppi %%%c nella stringa di 'format'"
 
+#, c-format
 msgid "E373: Unexpected %%%c in format string"
 msgstr "E373: %%%c imprevisto nella stringa di 'format'"
 
 msgid "E374: Missing ] in format string"
 msgstr "E374: Manca ] nella stringa di 'format'"
 
+#, c-format
 msgid "E375: Unsupported %%%c in format string"
 msgstr "E375: %%%c non supportato nella stringa di 'format'"
 
+#, c-format
 msgid "E376: Invalid %%%c in format string prefix"
 msgstr "E376: %%%c non valido nel prefisso della stringa di 'format'"
 
+#, c-format
 msgid "E377: Invalid %%%c in format string"
 msgstr "E377: %%%c non valido nella stringa di 'format'"
 
@@ -4799,12 +5118,15 @@ msgstr "E381: In cima allo stack di quic
 msgid "E382: Cannot write, 'buftype' option is set"
 msgstr "E382: Non posso scrivere, l'opzione 'buftype' è impostata"
 
+#, c-format
 msgid "E383: Invalid search string: %s"
 msgstr "E383: Stringa di ricerca non valida: %s"
 
+#, c-format
 msgid "E384: search hit TOP without match for: %s"
 msgstr "E384: la ricerca ha raggiunto la CIMA senza successo per: %s"
 
+#, c-format
 msgid "E385: search hit BOTTOM without match for: %s"
 msgstr "E385: la ricerca ha raggiunto il FONDO senza successo per: %s"
 
@@ -4820,18 +5142,22 @@ msgstr "E388: Non sono riuscito a trovar
 msgid "E389: Couldn't find pattern"
 msgstr "E389: Non sono riuscito a trovare il modello"
 
+#, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Argomento non consentito: %s"
 
+#, c-format
 msgid "E391: No such syntax cluster: %s"
 msgstr "E391: 'cluster' sintattico inesistente: %s"
 
+#, c-format
 msgid "E392: No such syntax cluster: %s"
 msgstr "E392: 'cluster' sintattico inesistente: %s"
 
 msgid "E393: group[t]here not accepted here"
 msgstr "E393: group[t]here non consentito qui"
 
+#, c-format
 msgid "E394: Didn't find region item for %s"
 msgstr "E394: Elemento di 'region' non trovato per %s"
 
@@ -4841,18 +5167,22 @@ msgstr "E395: contiene argomenti non acc
 msgid "E397: Filename required"
 msgstr "E397: Nome file necessario"
 
+#, c-format
 msgid "E398: Missing '=': %s"
 msgstr "E398: Manca '=': %s"
 
+#, c-format
 msgid "E399: Not enough arguments: syntax region %s"
 msgstr "E399: Argomenti non sufficienti per: 'syntax region' %s"
 
 msgid "E400: No cluster specified"
 msgstr "E400: Nessun 'cluster' specificato"
 
+#, c-format
 msgid "E401: Pattern delimiter not found: %s"
 msgstr "E401: Delimitatore di espressione non trovato: %s"
 
+#, c-format
 msgid "E402: Garbage after pattern: %s"
 msgstr "E402: Spazzatura dopo espressione: %s"
 
@@ -4860,48 +5190,62 @@ msgid "E403: syntax sync: line continuat
 msgstr ""
 "E403: syntax sync: espressione di continuazione riga specificata due volte"
 
+#, c-format
 msgid "E404: Illegal arguments: %s"
 msgstr "E404: Argomenti non consentiti: %s"
 
+#, c-format
 msgid "E405: Missing equal sign: %s"
 msgstr "E405: Manca '=': %s"
 
+#, c-format
 msgid "E406: Empty argument: %s"
 msgstr "E406: Argomento nullo: %s"
 
+#, c-format
 msgid "E407: %s not allowed here"
 msgstr "E407: %s non consentito qui"
 
+#, c-format
 msgid "E408: %s must be first in contains list"
 msgstr "E408: %s deve venire per primo nella lista 'contains'"
 
+#, c-format
 msgid "E409: Unknown group name: %s"
 msgstr "E409: Nome gruppo sconosciuto: %s"
 
+#, c-format
 msgid "E410: Invalid :syntax subcommand: %s"
 msgstr "E410: Sotto-comando :syntax non valido: %s"
 
+#, c-format
 msgid "E411: highlight group not found: %s"
 msgstr "E411: gruppo evidenziazione non trovato: %s"
 
+#, c-format
 msgid "E412: Not enough arguments: \":highlight link %s\""
 msgstr "E412: Argomenti non sufficienti: \":highlight link %s\""
 
+#, c-format
 msgid "E413: Too many arguments: \":highlight link %s\""
 msgstr "E413: Troppi argomenti: \":highlight link %s\""
 
 msgid "E414: group has settings, highlight link ignored"
 msgstr "E414: 'group' ha impostazioni, 'highlight link' ignorato"
 
+#, c-format
 msgid "E415: unexpected equal sign: %s"
 msgstr "E415: segno '=' inatteso: %s"
 
+#, c-format
 msgid "E416: missing equal sign: %s"
 msgstr "E416: manca segno '=': %s"
 
+#, c-format
 msgid "E417: missing argument: %s"
 msgstr "E417: manca argomento: %s"
 
+#, c-format
 msgid "E418: Illegal value: %s"
 msgstr "E418: Valore non consentito: %s"
 
@@ -4911,12 +5255,15 @@ msgstr "E419: colore di testo sconosciut
 msgid "E420: BG color unknown"
 msgstr "E420: colore di sfondo sconosciuto"
 
+#, c-format
 msgid "E421: Color name or number not recognized: %s"
 msgstr "E421: Numero o nome di colore non riconosciuto: %s"
 
+#, c-format
 msgid "E422: terminal code too long: %s"
 msgstr "E422: codice terminale troppo lungo: %s"
 
+#, c-format
 msgid "E423: Illegal argument: %s"
 msgstr "E423: Argomento non consentito: %s"
 
@@ -4926,6 +5273,7 @@ msgstr "E424: Troppi gruppi evidenziazio
 msgid "E425: Cannot go before first matching tag"
 msgstr "E425: Non posso andare prima del primo tag corrispondente"
 
+#, c-format
 msgid "E426: tag not found: %s"
 msgstr "E426: tag non trovato: %s"
 
@@ -4935,15 +5283,19 @@ msgstr "E427: C'è solo un tag corrispondente"
 msgid "E428: Cannot go beyond last matching tag"
 msgstr "E428: Non posso andare oltre l'ultimo tag corrispondente"
 
+#, c-format
 msgid "E429: File \"%s\" does not exist"
 msgstr "E429: Il file \"%s\" non esiste"
 
+#, c-format
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: Percorso tag file troncato per %s\n"
 
+#, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: Errore di formato nel tag file \"%s\""
 
+#, c-format
 msgid "E432: Tags file not sorted: %s"
 msgstr "E432: Tag file non ordinato alfabeticamente: %s"
 
@@ -4956,6 +5308,7 @@ msgstr "E434: Non riesco a trovare model
 msgid "E435: Couldn't find tag, just guessing!"
 msgstr "E435: Non riesco a trovare tag, sto solo tirando a indovinare!"
 
+#, c-format
 msgid "E436: No \"%s\" entry in termcap"
 msgstr "E436: Nessuna descrizione per \"%s\" in 'termcap'"
 
@@ -4989,9 +5342,11 @@ msgstr "E445: Altre finestre contengono 
 msgid "E446: No file name under cursor"
 msgstr "E446: Nessun nome file sotto il cursore"
 
+#, c-format
 msgid "E447: Can't find file \"%s\" in path"
 msgstr "E447: Non riesco a trovare il file \"%s\" nel percorso"
 
+#, c-format
 msgid "E448: Could not load library function %s"
 msgstr "E448: Non posso caricare la funzione di libreria %s"
 
@@ -5001,6 +5356,7 @@ msgstr "E449: Ricevuta un'espressione no
 msgid "E450: buffer number, text or a list required"
 msgstr "E450: occorre un numero di buffer, del testo, o una Lista"
 
+#, c-format
 msgid "E451: Expected }: %s"
 msgstr "E451: Atteso }: %s"
 
@@ -5016,12 +5372,15 @@ msgstr "E454: la lista funzioni è stata cambiata"
 msgid "E455: Error writing to PostScript output file"
 msgstr "E455: Errore in scrittura su file PostScript di output"
 
+#, c-format
 msgid "E456: Can't open file \"%s\""
 msgstr "E456: Non riesco ad aprire il file \"%s\""
 
+#, c-format
 msgid "E456: Can't find PostScript resource file \"%s.ps\""
 msgstr "E456: Non trovo file risorse PostScript \"%s.ps\""
 
+#, c-format
 msgid "E457: Can't read PostScript resource file \"%s\""
 msgstr "E457: Non riesco a leggere file risorse PostScript \"%s\""
 
@@ -5036,9 +5395,11 @@ msgstr "E459: Non posso tornare alla dir
 msgid "E460: entries missing in mapset() dict argument"
 msgstr "E460: elemento non presente nell'argomento dict di mapset()"
 
+#, c-format
 msgid "E461: Illegal variable name: %s"
 msgstr "E461: Nome di variabile non consentito: %s"
 
+#, c-format
 msgid "E462: Could not prepare for reloading \"%s\""
 msgstr "E462: Non riesco a preparare per ricaricare \"%s\""
 
@@ -5048,6 +5409,7 @@ msgstr "E463: Regione protetta, impossib
 msgid "E464: Ambiguous use of user-defined command"
 msgstr "E464: Uso ambiguo di comando definito dall'utente"
 
+#, c-format
 msgid "E464: Ambiguous use of user-defined command: %s"
 msgstr "E464: Uso ambiguo di comando definito dall'utente: %s"
 
@@ -5066,6 +5428,7 @@ msgstr ""
 "E468: Argomento di completamento consentito solo per completamento "
 "personalizzato"
 
+#, c-format
 msgid "E469: invalid cscopequickfix flag %c for %c"
 msgstr "E469: flag cscopequickfix %c non valido per %c"
 
@@ -5084,18 +5447,22 @@ msgstr "E473: Errore interno espressione
 msgid "E474: Invalid argument"
 msgstr "E474: Argomento non valido"
 
+#, c-format
 msgid "E475: Invalid argument: %s"
 msgstr "E475: Argomento non valido: %s"
 
+#, c-format
 msgid "E475: Invalid value for argument %s"
 msgstr "E475: Valore non valido per l'argomento %s"
 
+#, c-format
 msgid "E475: Invalid value for argument %s: %s"
 msgstr "E475: Valore non valido per l'argomento %s: %s"
 
 msgid "E476: Invalid command"
 msgstr "E476: Comando non valido"
 
+#, c-format
 msgid "E476: Invalid command: %s"
 msgstr "E476: Comando non valido: %s"
 
@@ -5108,27 +5475,32 @@ msgstr "E478: Non lasciarti prendere dal
 msgid "E479: No match"
 msgstr "E479: Nessuna corrispondenza"
 
+#, c-format
 msgid "E480: No match: %s"
 msgstr "E480: Nessuna corrispondenza: %s"
 
 msgid "E481: No range allowed"
 msgstr "E481: Nessun intervallo consentito"
 
+#, c-format
 msgid "E482: Can't create file %s"
 msgstr "E482: Non riesco a creare il file %s"
 
 msgid "E483: Can't get temp file name"
 msgstr "E483: Non riesco ad ottenere nome file 'temp'"
 
+#, c-format
 msgid "E484: Can't open file %s"
 msgstr "E484: Non riesco ad aprire il file %s"
 
+#, c-format
 msgid "E485: Can't read file %s"
 msgstr "E485: Non riesco a leggere il file %s"
 
 msgid "E486: Pattern not found"
 msgstr "E486: Espressione non trovata"
 
+#, c-format
 msgid "E486: Pattern not found: %s"
 msgstr "E486: Espressione non trovata: %s"
 
@@ -5138,6 +5510,7 @@ msgstr "E487: L'argomento dev'essere pos
 msgid "E488: Trailing characters"
 msgstr "E488: Caratteri in più alla fine"
 
+#, c-format
 msgid "E488: Trailing characters: %s"
 msgstr "E488: Caratteri in più alla fine: %s"
 
@@ -5147,6 +5520,7 @@ msgstr "E489: nessuna stack di chiamata 
 msgid "E490: No fold found"
 msgstr "E490: Non trovo alcuna piegatura"
 
+#, c-format
 msgid "E491: json decode error at '%s'"
 msgstr "E491: errore di decodifica json a '%s'"
 
@@ -5187,6 +5561,7 @@ msgstr "E501: Alla fine-file"
 msgid "is not a file or writable device"
 msgstr "non è un file o un dispositivo su cui si possa scrivere"
 
+#, c-format
 msgid "E503: \"%s\" is not a file or writable device"
 msgstr "E503: \"%s\" non è un file o un dispositivo scrivibile"
 
@@ -5196,6 +5571,7 @@ msgstr "è in sola lettura (non posso annullare: \"W\" in 'cpoptions')"
 msgid "is read-only (add ! to override)"
 msgstr "è in sola-lettura (aggiungi ! per eseguire comunque)"
 
+#, c-format
 msgid "E505: \"%s\" is read-only (add ! to override)"
 msgstr "E505: \"%s\" è in sola-lettura (aggiungi ! per eseguire comunque)"
 
@@ -5233,6 +5609,7 @@ msgstr ""
 "E513: errore in scrittura, conversione fallita (rendere 'fenc' nullo per "
 "eseguire comunque)"
 
+#, c-format
 msgid ""
 "E513: write error, conversion failed in line %ld (make 'fenc' empty to "
 "override)"
@@ -5264,6 +5641,7 @@ msgstr "E520: Non consentito in una 'mod
 msgid "E521: Number required after ="
 msgstr "E521: Richiesto un numero dopo ="
 
+#, c-format
 msgid "E521: Number required: &%s = '%s'"
 msgstr "E521: Richiesto un numero: &%s = '%s'"
 
@@ -5279,6 +5657,7 @@ msgstr "E524: Manca ':'"
 msgid "E525: Zero length string"
 msgstr "E525: Stringa nulla"
 
+#, c-format
 msgid "E526: Missing number after <%s>"
 msgstr "E526: Manca numero dopo <%s>"
 
@@ -5306,15 +5685,21 @@ msgstr "E533: non posso selezionare 'wid
 msgid "E534: Invalid wide font"
 msgstr "E534: 'Wide font' non valido"
 
+#, c-format
 msgid "E535: Illegal character after <%c>"
 msgstr "E535: Carattere non consentito dopo <%c>"
 
 msgid "E536: comma required"
 msgstr "E536: virgola mancante"
 
+#, c-format
 msgid "E537: 'commentstring' must be empty or contain %s"
 msgstr "E537: 'commentstring' dev'essere nulla o contenere %s"
 
+msgid "E538: Pattern found in every line: %s"
+msgstr "E538: Espressione trovata su ogni riga: %s"
+
+#, c-format
 msgid "E539: Illegal character <%s>"
 msgstr "E539: Carattere non consentito <%s>"
 
@@ -5357,6 +5742,7 @@ msgstr "E552: Atteso un numero"
 msgid "E553: No more items"
 msgstr "E553: Non ci sono più elementi"
 
+#, c-format
 msgid "E554: Syntax error in %s{...}"
 msgstr "E554: Errore sintattico in %s{...}"
 
@@ -5375,6 +5761,7 @@ msgstr "E558: Descrizione terminale non 
 msgid "E559: Terminal entry not found in termcap"
 msgstr "E559: Descrizione terminale non trovata in 'termcap'"
 
+#, c-format
 msgid "E560: Usage: cs[cope] %s"
 msgstr "E560: Uso: cs[cope] %s"
 
@@ -5384,9 +5771,11 @@ msgstr "E561: tipo di ricerca cscope sco
 msgid "E562: Usage: cstag <ident>"
 msgstr "E562: Uso: cstag <ident>"
 
+#, c-format
 msgid "E563: stat(%s) error: %d"
 msgstr "E563: errore stat(%s): %d"
 
+#, c-format
 msgid "E564: %s is not a directory or a valid cscope database"
 msgstr "E564: %s non è una directory o un database cscope valido"
 
@@ -5411,12 +5800,15 @@ msgstr ""
 "E571: Spiacente, comando non disponibile, non riesco a caricare libreria "
 "programmi Tcl."
 
+#, c-format
 msgid "E572: exit code %d"
 msgstr "E572: codice di uscita %d"
 
+#, c-format
 msgid "E573: Invalid server id used: %s"
 msgstr "E573: Identificativo di server non valido: %s"
 
+#, c-format
 msgid "E574: Unknown register type %d"
 msgstr "E574: Tipo di registro sconosciuto: %d"
 
@@ -5480,9 +5872,11 @@ msgstr "E591: 'winheight' non può essere inferiore a 'winminheight'"
 msgid "E592: 'winwidth' cannot be smaller than 'winminwidth'"
 msgstr "E592: 'winwidth' non può essere inferiore a 'winminwidth'"
 
+#, c-format
 msgid "E593: Need at least %d lines"
 msgstr "E593: Servono almeno %d righe"
 
+#, c-format
 msgid "E594: Need at least %d columns"
 msgstr "E594: Servono almeno %d colonne"
 
@@ -5516,6 +5910,7 @@ msgstr "E603: :catch senza :try"
 msgid "E604: :catch after :finally"
 msgstr "E604: :catch dopo :finally"
 
+#, c-format
 msgid "E605: Exception not caught: %s"
 msgstr "E605: Eccezione non intercettata: %s"
 
@@ -5528,6 +5923,7 @@ msgstr "E607: :finally multipli"
 msgid "E608: Cannot :throw exceptions with 'Vim' prefix"
 msgstr "E608: Impossibile lanciare eccezioni con prefisso 'Vim'"
 
+#, c-format
 msgid "E609: Cscope error: %s"
 msgstr "E609: Errore cscope: %s"
 
@@ -5540,6 +5936,7 @@ msgstr "E611: Uso di uno Special come un
 msgid "E612: Too many signs defined"
 msgstr "E612: Troppi 'sign' definiti"
 
+#, c-format
 msgid "E613: Unknown printer font: %s"
 msgstr "E613: Carattere di stampa sconosciuto: %s"
 
@@ -5549,21 +5946,26 @@ msgstr "E614: vim_SelFile: non posso tor
 msgid "E615: vim_SelFile: can't get current directory"
 msgstr "E615: vim_SelFile: non riesco ad ottenere la directory in uso"
 
+#, c-format
 msgid "E616: vim_SelFile: can't get font %s"
 msgstr "E616: vim_SelFile: non riesco a trovare il carattere %s"
 
 msgid "E617: Cannot be changed in the GTK GUI"
 msgstr "E617: Non può essere cambiato nella GUI GTK"
 
+#, c-format
 msgid "E618: file \"%s\" is not a PostScript resource file"
 msgstr "E618: file \"%s\" non è un file di risorse PostScript"
 
+#, c-format
 msgid "E619: file \"%s\" is not a supported PostScript resource file"
 msgstr "E619: file \"%s\" non è un file di risorse PostScript supportato"
 
+#, c-format
 msgid "E620: Unable to convert to print encoding \"%s\""
 msgstr "E620: Impossibile convertire a codifica di stampa \"%s\""
 
+#, c-format
 msgid "E621: \"%s\" resource file has wrong version"
 msgstr "E621: il file di risorse \"%s\" ha una versione sbagliata"
 
@@ -5573,21 +5975,26 @@ msgstr "E622: Non riesco a fare fork per
 msgid "E623: Could not spawn cscope process"
 msgstr "E623: Non riesco a generare processo cscope"
 
+#, c-format
 msgid "E624: Can't open file \"%s\""
 msgstr "E624: Non riesco ad aprire il file \"%s\""
 
+#, c-format
 msgid "E625: cannot open cscope database: %s"
 msgstr "E625: impossibile aprire database cscope: %s"
 
 msgid "E626: cannot get cscope database information"
 msgstr "E626: impossibile leggere informazioni sul database cscope"
 
+#, c-format
 msgid "E630: %s(): write while not connected"
 msgstr "E630: %s(): scrittura in mancanza di connessione"
 
+#, c-format
 msgid "E631: %s(): write failed"
 msgstr "E631: %s(): scrittura non riuscita"
 
+#, c-format
 msgid "E654: missing delimiter after search pattern: %s"
 msgstr "E654: manca un delimitatore dopo l'espressione di ricerca: %s"
 
@@ -5600,12 +6007,14 @@ msgstr "NetBeans non permette la scrittu
 msgid "Partial writes disallowed for NetBeans buffers"
 msgstr "Scrittura parziale disabilitata per i buffer di NetBeans"
 
+#, c-format
 msgid "E658: NetBeans connection lost for buffer %d"
 msgstr "E658: Connessione NetBeans persa per il buffer %d"
 
 msgid "E659: Cannot invoke Python recursively"
 msgstr "E659: Python non può essere chiamato ricorsivamente"
 
+#, c-format
 msgid "E661: Sorry, no '%s' help for %s"
 msgstr "E661: Spiacente, nessun aiuto '%s' per %s"
 
@@ -5621,12 +6030,14 @@ msgstr "E664: lista modifiche assente"
 msgid "E665: Cannot start GUI, no valid font found"
 msgstr "E665: Non posso inizializzare la GUI, nessun carattere valido trovato"
 
+#, c-format
 msgid "E666: compiler not supported: %s"
 msgstr "E666: compilatore non supportato: %s"
 
 msgid "E667: Fsync failed"
 msgstr "E667: Fsync fallito"
 
+#, c-format
 msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
 msgstr ""
 "E668: Modalità errata di accesso a file info connessione NetBeans: \"%s\""
@@ -5634,9 +6045,11 @@ msgstr ""
 msgid "E669: Unprintable character in group name"
 msgstr "E669: Carattere non stampabile in un nome di gruppo"
 
+#, c-format
 msgid "E670: Mix of help file encodings within a language: %s"
 msgstr "E670: Codifiche diverse fra file di aiuto nella stessa lingua: %s"
 
+#, c-format
 msgid "E671: Cannot find window title \"%s\""
 msgstr "E671: Non trovo il titolo della finestra \"%s\""
 
@@ -5658,12 +6071,14 @@ msgstr "E676: Nessun autocomando corrisp
 msgid "E677: Error writing temp file"
 msgstr "E677: Errore in scrittura su file temporaneo"
 
+#, c-format
 msgid "E678: Invalid character after %s%%[dxouU]"
 msgstr "E678: Carattere non valido dopo %s%%[dxouU]"
 
 msgid "E679: recursive loop loading syncolor.vim"
 msgstr "E679: ciclo ricorsivo nel caricamento di syncolor.vim"
 
+#, c-format
 msgid "E680: <buffer=%d>: invalid buffer number"
 msgstr "E680: <buffer=%d>: numero buffer non valido"
 
@@ -5676,12 +6091,15 @@ msgstr "E682: Espressione o delimitatore
 msgid "E683: File name missing or invalid pattern"
 msgstr "E683: Nome file mancante o espressione non valida"
 
+#, c-format
 msgid "E684: list index out of range: %ld"
 msgstr "E684: Indice di Lista fuori intervallo: %ld"
 
+#, c-format
 msgid "E685: Internal error: %s"
 msgstr "E685: Errore interno: %s"
 
+#, c-format
 msgid "E686: Argument of %s must be a List"
 msgstr "E686: L'argomento di %s dev'essere una Lista"
 
@@ -5709,9 +6127,11 @@ msgstr "E694: Operazione non valida per 
 msgid "E695: Cannot index a Funcref"
 msgstr "E695: Non posso indicizzare un Funcref"
 
+#, 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"
 
@@ -5721,6 +6141,7 @@ msgstr "E698: Variabile troppo nidificat
 msgid "E699: Too many arguments"
 msgstr "E699: Troppi argomenti"
 
+#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: Funzione sconosciuta: %s"
 
@@ -5733,13 +6154,16 @@ msgstr "E702: Funzione confronto in sort
 msgid "E703: Using a Funcref as a Number"
 msgstr "E703: Uso di una Funcref come un Numero"
 
+#, c-format
 msgid "E704: Funcref variable name must start with a capital: %s"
 msgstr ""
 "E704: Il nome della variabile Funcref deve iniziare con una maiuscola: %s"
 
+#, c-format
 msgid "E705: Variable name conflicts with existing function: %s"
 msgstr "E705: Nome di variabile in conflitto con una funzione esistente: %s"
 
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: Nome funzione in conflitto con la variabile: %s"
 
@@ -5755,6 +6179,7 @@ msgstr "E710: Il valore della Lista ha più elementi che destinazioni"
 msgid "E711: List value does not have enough items"
 msgstr "E711: Il valore della Lista non ha elementi sufficienti"
 
+#, c-format
 msgid "E712: Argument of %s must be a List or Dictionary"
 msgstr "E712: L'argomento di %s dev'essere una Lista o un Dizionario"
 
@@ -5767,6 +6192,7 @@ msgstr "E714: È necessaria una Lista"
 msgid "E715: Dictionary required"
 msgstr "E715: È necessario un Dizionario"
 
+#, c-format
 msgid "E716: Key not present in Dictionary: \"%s\""
 msgstr "E716: Chiave assente dal Dizionario: \"%s\""
 
@@ -5779,21 +6205,26 @@ msgstr "E718: Funcref necessario"
 msgid "E719: Cannot slice a Dictionary"
 msgstr "E719: Non posso suddividere un Dizionario"
 
+#, 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"
 
 msgid "E724: variable nested too deep for displaying"
 msgstr "E724: variabile troppo nidificata per la visualizzazione"
 
+#, c-format
 msgid "E725: Calling dict function without Dictionary: %s"
 msgstr "E725: Chiamata di funzione dict in assenza di Dizionario: %s"
 
@@ -5821,6 +6252,7 @@ msgstr "E732: Uso di :endfor con :while"
 msgid "E733: Using :endwhile with :for"
 msgstr "E733: Uso di :endwhile con :for"
 
+#, c-format
 msgid "E734: Wrong variable type for %s="
 msgstr "E734: Tipo di variabile errato per %s="
 
@@ -5830,27 +6262,33 @@ msgstr "E735: Posso confrontare un Dizio
 msgid "E736: Invalid operation for Dictionary"
 msgstr "E736: Operazione non valida per Dizionari"
 
+#, c-format
 msgid "E737: Key already exists: %s"
 msgstr "E737: Chiave già esistente: %s"
 
+#, c-format
 msgid "E738: Can't list variables for %s"
 msgstr "E738: Non riesco a elencare le variabili per %s"
 
+#, c-format
 msgid "E739: Cannot create directory: %s"
 msgstr "E739: Non posso creare la directory: %s"
 
+#, c-format
 msgid "E740: Too many arguments for function %s"
 msgstr "E740: Troppi argomenti per la funzione: %s"
 
 msgid "E741: Value is locked"
 msgstr "E741: Valore non modificabile"
 
+#, c-format
 msgid "E741: Value is locked: %s"
 msgstr "E741: Valore di %s non modificabile"
 
 msgid "E742: Cannot change value"
 msgstr "E742: Non riesco a cambiare il valore"
 
+#, c-format
 msgid "E742: Cannot change value of %s"
 msgstr "E742: Non riesco a cambiare il valore di %s"
 
@@ -5863,6 +6301,7 @@ msgstr "E744: NetBeans non permette modi
 msgid "E745: Using a List as a Number"
 msgstr "E745: Uso di una Lista come un Numero"
 
+#, 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"
 
@@ -5886,12 +6325,15 @@ msgstr "E751: Il nome del file di output
 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 "E754: Only up to %d regions supported"
 msgstr "E754: Sono supportate al massimo %d regioni"
 
+#, c-format
 msgid "E755: Invalid region in %s"
 msgstr "E755: Regione non valida in %s"
 
@@ -5907,6 +6349,7 @@ msgstr "E758: File ortografico troncato"
 msgid "E759: Format error in spell file"
 msgstr "E759: Errore di formato nel file di spell"
 
+#, c-format
 msgid "E760: No word count in %s"
 msgstr "E760: Nessun contatore parole in %s"
 
@@ -5919,9 +6362,11 @@ msgstr "E762: Carattere fuori intervallo
 msgid "E763: Word characters differ between spell files"
 msgstr "E763: Caratteri di parola differenti nei file ortografici"
 
+#, c-format
 msgid "E764: Option '%s' is not set"
 msgstr "E764: opzione '%s' non impostata"
 
+#, c-format
 msgid "E765: 'spellfile' does not have %d entries"
 msgstr "E765: 'spellfile' non ha %d elementi"
 
@@ -5931,9 +6376,11 @@ msgstr "E766: Argomenti non sufficienti 
 msgid "E767: Too many arguments for printf()"
 msgstr "E767: Troppi argomenti per printf()"
 
+#, c-format
 msgid "E768: Swap file exists: %s (:silent! overrides)"
 msgstr "E768: File swap esistente: %s (:silent! per sovrascriverlo)"
 
+#, c-format
 msgid "E769: Missing ] after %s["
 msgstr "E769: Manca ] dopo %s["
 
@@ -5946,6 +6393,7 @@ msgstr "E771: File ortografico obsoleto, è necessario aggiornarlo"
 msgid "E772: Spell file is for newer version of Vim"
 msgstr "E772: Il file ortografico è per versioni di Vim più recenti"
 
+#, c-format
 msgid "E773: Symlink loop for \"%s\""
 msgstr "E773: Collegamento simbolico ricorsivo per \"%s\""
 
@@ -5961,18 +6409,23 @@ msgstr "E776: Nessuna lista locazioni"
 msgid "E777: String or List expected"
 msgstr "E777: attesa Stringa o Lista"
 
+#, 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"
 
@@ -5994,6 +6447,7 @@ msgstr "E787: Il buffer è variato inaspettatamente"
 msgid "E788: Not allowed to edit another buffer now"
 msgstr "E788: Non consentito aprire ora un altro buffer"
 
+#, c-format
 msgid "E789: Missing ']': %s"
 msgstr "E789: Manca ']': %s"
 
@@ -6012,6 +6466,7 @@ msgstr "E793: Nessun altro buffer è modificabile in modalità 'diff'"
 msgid "E794: Cannot set variable in the sandbox"
 msgstr "E794: Non posso impostare la variabile in ambiente protetto"
 
+#, c-format
 msgid "E794: Cannot set variable in the sandbox: \"%s\""
 msgstr ""
 "E794: Non posso impostare la variabile read-only in ambiente protetto: \"%s\""
@@ -6019,6 +6474,7 @@ msgstr ""
 msgid "E795: Cannot delete variable"
 msgstr "E795: Non posso cancellare la variabile"
 
+#, c-format
 msgid "E795: Cannot delete variable %s"
 msgstr "E795: Non posso cancellare la variabile %s"
 
@@ -6028,21 +6484,26 @@ msgstr "scrittura su periferica disabili
 msgid "E797: SpellFileMissing autocommand deleted buffer"
 msgstr "E797: L'autocomando 'SpellFileMissing' ha cancellato il buffer"
 
+#, c-format
 msgid "E798: ID is reserved for \":match\": %d"
 msgstr "E798: ID riservato per \":match\": %d"
 
+#, c-format
 msgid "E799: Invalid ID: %d (must be greater than or equal to 1)"
 msgstr "E799: ID non valido: %d (dev'essere maggiore o uguale a 1)"
 
 msgid "E800: Arabic cannot be used: Not enabled at compile time\n"
 msgstr "E800: Arabo non utilizzabile: Non abilitato in compilazione\n"
 
+#, c-format
 msgid "E801: ID already taken: %d"
 msgstr "E801: ID già utilizzato: %d"
 
+#, c-format
 msgid "E802: Invalid ID: %d (must be greater than or equal to 1)"
 msgstr "E802: ID non valido: %d (dev'essere maggiore o uguale a 1)"
 
+#, c-format
 msgid "E803: ID not found: %d"
 msgstr "E803: ID non trovato: %d"
 
@@ -6107,39 +6568,50 @@ msgstr "E820: sizeof(uint32_t) != 4"
 msgid "E821: File is encrypted with unknown method"
 msgstr "E821: File cifrato con metodo sconosciuto"
 
+#, c-format
 msgid "E822: Cannot open undo file for reading: %s"
 msgstr "E822: Non posso aprire il file Undo in lettura: %s"
 
+#, c-format
 msgid "E823: Not an undo file: %s"
 msgstr "E823: Non è un file Undo: %s"
 
+#, c-format
 msgid "E824: Incompatible undo file: %s"
 msgstr "E824: File Undo incompatibile: %s"
 
+#, c-format
 msgid "E825: Corrupted undo file (%s): %s"
 msgstr "E825: File Undo corrotto (%s): %s"
 
+#, c-format
 msgid "E826: Undo file decryption failed: %s"
 msgstr "E826: Decodifica fallita del file Undo: %s"
 
+#, c-format
 msgid "E827: Undo file is encrypted: %s"
 msgstr "E827: File Undo cifrato: %s"
 
+#, c-format
 msgid "E828: Cannot open undo file for writing: %s"
 msgstr "E828: Non posso aprire il file Undo in scrittura: %s"
 
+#, c-format
 msgid "E829: write error in undo file: %s"
 msgstr "E829: errore scrivendo nel file Undo: %s"
 
+#, c-format
 msgid "E830: Undo number %ld not found"
 msgstr "E830: Undo numero %ld non trovato"
 
 msgid "E831: bf_key_init() called with empty password"
 msgstr "E831: chiamata a bf_key_init() con password nulla"
 
+#, c-format
 msgid "E832: Non-encrypted file has encrypted undo file: %s"
 msgstr "E832: File non cifrato con file Undo cifrato: %s"
 
+#, c-format
 msgid ""
 "E833: %s is encrypted and this version of Vim does not support encryption"
 msgstr "E833: %s è cifrato e questa versione di Vim non supporta la cifratura"
@@ -6198,6 +6670,7 @@ msgstr "E851: Creazione di un nuovo proc
 msgid "E852: The child process failed to start the GUI"
 msgstr "E852: Il processo figlio non è riuscito a far partire la GUI"
 
+#, c-format
 msgid "E853: Duplicate argument name: %s"
 msgstr "E853: Nome argomento duplicato: %s"
 
@@ -6214,6 +6687,7 @@ msgstr ""
 "E856: Il secondo argomento di \"assert_fails()\" dev'essere una stringa o "
 "una Lista con una o due stringhe"
 
+#, c-format
 msgid "E857: Dictionary key \"%s\" required"
 msgstr "E857: Chiave di Dizionario \"%s\" richiesta"
 
@@ -6247,18 +6721,22 @@ msgstr ""
 msgid "E865: (NFA) Regexp end encountered prematurely"
 msgstr "E865: (NFA) Fine prematura dell'espressione regolare"
 
+#, c-format
 msgid "E866: (NFA regexp) Misplaced %c"
 msgstr "E866: (Espressione regolare NFA) %c fuori posto"
 
+#, c-format
 msgid "E867: (NFA regexp) Unknown operator '\\z%c'"
 msgstr "E867: (Espressione regolare NFA) Operatore sconosciuto '\\z%c'"
 
+#, c-format
 msgid "E867: (NFA regexp) Unknown operator '\\%%%c'"
 msgstr "E867: (Espressione regolare NFA) Operatore sconosciuto '\\%%%c'"
 
 msgid "E868: Error building NFA with equivalence class!"
 msgstr "E868: Errore costruendo NFA con classe di equivalenza!"
 
+#, c-format
 msgid "E869: (NFA regexp) Unknown operator '\\@%c'"
 msgstr "E869: (NFA) Operatore sconosciuto '\\@%c'"
 
@@ -6291,6 +6769,7 @@ msgstr ""
 "E876: (Espressione regolare NFA) Non c'è spazio sufficiente a immagazzinare "
 "l'intero NFA"
 
+#, c-format
 msgid "E877: (NFA regexp) Invalid character class: %d"
 msgstr "E877: (Espressione regolare NFA) Classe di caratteri non valida: %d"
 
@@ -6318,12 +6797,15 @@ msgstr ""
 "E883: espressione di ricerca e registro dell'espressione non possono "
 "contenere due o più righe"
 
+#, 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 "E885: Not possible to change sign %s"
 msgstr "E885: Impossibile cambiare segno %s"
 
+#, c-format
 msgid "E886: Can't rename viminfo file to %s!"
 msgstr "E886: Non riesco a rinominare il file viminfo a %s!"
 
@@ -6334,12 +6816,14 @@ msgstr ""
 "E887: Spiacente, comando non disponibile, non riesco a caricare il modulo "
 "Python locale."
 
+#, c-format
 msgid "E888: (NFA regexp) cannot repeat %s"
 msgstr "E888: (Espressione regolare NFA) non riesco a ripetere %s"
 
 msgid "E889: Number required"
 msgstr "E889: Numero richiesto"
 
+#, c-format
 msgid "E890: trailing char after ']': %s]%s"
 msgstr "E890: Caratteri in più dopo ']': %s]%s"
 
@@ -6362,6 +6846,7 @@ msgstr ""
 "E815: Spiacente, comando non disponibile, non riesco a caricare modulo "
 "racket/base di MzScheme."
 
+#, c-format
 msgid "E896: Argument of %s must be a List, Dictionary or Blob"
 msgstr "E896: L'argomento di %s dev'essere una Lista, un Dizionario o un Blob"
 
@@ -6371,12 +6856,14 @@ msgstr "E897: È necessaria una Lista o un Blob"
 msgid "E898: socket() in channel_connect()"
 msgstr "E898: socket() in channel_connect()"
 
+#, c-format
 msgid "E899: Argument of %s must be a List or Blob"
 msgstr "E899: L'argomento di %s dev'essere una Lista o un Blob"
 
 msgid "E900: maxdepth must be non-negative number"
 msgstr "E900: maxdepth dev'essere un numero non-negativo"
 
+#, c-format
 msgid "E901: getaddrinfo() in channel_open(): %s"
 msgstr "E901: getaddrinfo() in channel_open(): %s"
 
@@ -6395,6 +6882,7 @@ msgstr "E904: l'ultimo argomento per esp
 msgid "E904: third argument for call must be a list"
 msgstr "E904: il terzo argomento della chiamata dev'essere una Lista"
 
+#, c-format
 msgid "E905: received unknown command: %s"
 msgstr "E905: ricevuto comando sconosciuto: %s"
 
@@ -6404,6 +6892,7 @@ msgstr "E906: canale non aperto"
 msgid "E907: Using a special value as a Float"
 msgstr "E907: Uso di un valore speciale come un Numero-a-virgola-mobile"
 
+#, c-format
 msgid "E908: using an invalid value as a String: %s"
 msgstr "E908: Uso di un valore non valido come una Stringa: %s"
 
@@ -6431,12 +6920,15 @@ msgstr "E915: il buffer in_io necessita 
 msgid "E916: not a valid job"
 msgstr "E916: job non valido"
 
+#, c-format
 msgid "E917: Cannot use a callback with %s()"
 msgstr "E917: Non posso usare callback con %s()"
 
+#, c-format
 msgid "E918: buffer must be loaded: %s"
 msgstr "E918: il buffer dev'essere caricato: %s"
 
+#, c-format
 msgid "E919: Directory not found in '%s': \"%s\""
 msgstr "E919: Directory non trovata in '%s': \"%s\""
 
@@ -6462,12 +6954,14 @@ msgstr "E925: La Lista quickfix corrente è stata cambiata"
 msgid "E926: Current location list was changed"
 msgstr "E926: La lista delle locazioni corrente è stata cambiata"
 
+#, c-format
 msgid "E927: Invalid action: '%s'"
 msgstr "E927: Azione non valida: '%s'"
 
 msgid "E928: String required"
 msgstr "E928: Stringa necessaria"
 
+#, c-format
 msgid "E929: Too many viminfo temp files, like %s!"
 msgstr "E929: Troppi file temporanei viminfo, come %s!"
 
@@ -6477,31 +6971,37 @@ msgstr "E930: Non si può usare :redir all'interno di execute()"
 msgid "E931: Buffer cannot be registered"
 msgstr "E931: Non riesco a registrare il buffer"
 
+#, c-format
 msgid "E932: Closure function should not be at top level: %s"
 msgstr ""
-"E932: La funzione di chiusura non dovrebbe essere al livello più alto: %s"
-
+"E932: La funzione \"closure\" non dovrebbe essere al livello più alto: %s"
+
+#, c-format
 msgid "E933: Function was deleted: %s"
 msgstr "E933: Funzione eliminata: %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 "E935: invalid submatch number: %d"
 msgstr "E935: numero di sotto-corrispondenza non valido: %d"
 
 msgid "E936: Cannot delete the current group"
 msgstr "E936: Non posso cancellare il gruppo corrente"
 
+#, c-format
 msgid "E937: Attempt to delete a buffer that is in use: %s"
 msgstr "E937: Tentativo di eliminare un buffer ancora usato: %s"
 
+#, c-format
 msgid "E938: Duplicate key in JSON: \"%s\""
 msgstr "E938: Chiave duplicata in JSON: \"%s\""
 
 msgid "E939: Positive count required"
 msgstr "E939: Un contatore positivo è necessario"
 
+#, c-format
 msgid "E940: Cannot lock or unlock variable %s"
 msgstr "E940: Non riesco a bloccare o sbloccare la variabile %s"
 
@@ -6525,6 +7025,7 @@ msgstr ""
 "E946: Non posso aprire un terminale mentre ci sono lavori modificabili in "
 "esecuzione"
 
+#, c-format
 msgid "E947: Job still running in buffer \"%s\""
 msgstr "E947: Job ancora in esecuzione nel buffer \"%s\""
 
@@ -6537,6 +7038,7 @@ msgstr "E948: Job ancora in esecuzione (
 msgid "E949: File changed while writing"
 msgstr "E949: File modificato in fase di riscrittura"
 
+#, c-format
 msgid "E950: Cannot convert between %s and %s"
 msgstr "E950: Non si può convertire da %s a %s"
 
@@ -6547,6 +7049,7 @@ msgstr "E951: \\% valore troppo grande"
 msgid "E952: Autocommand caused recursive behavior"
 msgstr "E952: L'autocomando ha generato un comportamento ricorsivo"
 
+#, c-format
 msgid "E953: File exists: %s"
 msgstr "E953: File già esistente: %s"
 
@@ -6574,18 +7077,22 @@ msgstr "E960: Problemi nella preparazion
 msgid "E961: no line number to use for \"<sflnum>\""
 msgstr "E961: nessun numero di riga da usare per \"<sflnum>\""
 
+#, c-format
 msgid "E962: Invalid action: '%s'"
 msgstr "E962: Azione non valida: '%s'"
 
+#, c-format
 msgid "E963: setting %s to value with wrong type"
 msgstr "E963: impostazione di %s a un valore di tipo errato"
 
+#, c-format
 msgid "E964: Invalid column number: %ld"
 msgstr "E964: Numero di colonna non valido: %ld"
 
 msgid "E965: missing property type name"
 msgstr "E965: Nome del tipo di proprietà non disponibile"
 
+#, c-format
 msgid "E966: Invalid line number: %ld"
 msgstr "E966: Numero di riga non valido: %ld"
 
@@ -6595,12 +7102,15 @@ msgstr "E967: informazione sulle proprietà del testo corrotta"
 msgid "E968: Need at least one of 'id' or 'type'"
 msgstr "E968: Occorre conoscere almeno un 'id' o 'type'"
 
+#, c-format
 msgid "E969: Property type %s already defined"
 msgstr "E969: Tipo di proprietà %s già definito"
 
+#, c-format
 msgid "E970: Unknown highlight group name: '%s'"
 msgstr "E970: Nome gruppo evidenziazione sconosciuto: '%s'"
 
+#, c-format
 msgid "E971: Property type %s does not exist"
 msgstr "E971: Tipo di proprietà %s non esistente"
 
@@ -6626,6 +7136,7 @@ msgstr "E977: Posso confrontare un Blob 
 msgid "E978: Invalid operation for Blob"
 msgstr "E978: Operazione non valida per Blob"
 
+#, c-format
 msgid "E979: Blob index out of range: %ld"
 msgstr "E979: Indice di Blob fuori intervallo: %ld"
 
@@ -6638,6 +7149,7 @@ msgstr "E981: Comando non consentito in 
 msgid "E982: ConPTY is not available"
 msgstr "E982: ConPTY non disponibile"
 
+#, c-format
 msgid "E983: Duplicate argument: %s"
 msgstr "E983: Argomento duplicato: %s"
 
@@ -6659,6 +7171,7 @@ msgstr "E988: GUI non utilizzabile. Non 
 msgid "E989: Non-default argument follows default argument"
 msgstr "E989: Argomento non di default dopo argomento di default"
 
+#, c-format
 msgid "E990: Missing end marker '%s'"
 msgstr "E990: Manca marcatore di fine '%s'"
 
@@ -6668,6 +7181,7 @@ msgstr "E991: non posso usare =<< qui"
 msgid "E992: Not allowed in a modeline when 'modelineexpr' is off"
 msgstr "E992: Non consentito in una modeline quando a 'modelineexpr' vale off"
 
+#, c-format
 msgid "E993: window %d is not a popup window"
 msgstr "E993: la finestra %d non è una finestra dinamica"
 
@@ -6692,31 +7206,38 @@ msgstr "E996: Non posso bloccare una var
 msgid "E996: Cannot lock a register"
 msgstr "E996: Non posso bloccare un registro"
 
+#, c-format
 msgid "E997: Tabpage not found: %d"
 msgstr "E997: Pagina-di-linguette non trovata: %d"
 
+#, c-format
 msgid "E998: Reduce of an empty %s with no initial value"
 msgstr ""
 "E998: Reduce di un valore vuoto %s, e non è stato dato un valore iniziale"
 
+#, c-format
 msgid "E999: scriptversion not supported: %d"
 msgstr "E999: scriptversion non supportata: %d"
 
+#, c-format
 msgid "E1001: Variable not found: %s"
 msgstr "E1001: Variabile non trovata: %s"
 
+#, c-format
 msgid "E1002: Syntax error at %s"
 msgstr "E1002: Errore sintattico in %s"
 
 msgid "E1003: Missing return value"
 msgstr "E1003: Manca il valore restituito"
 
+#, c-format
 msgid "E1004: White space required before and after '%s' at \"%s\""
 msgstr "E1004: Spazio bianco necessario prima e dopo '%s' in \"%s\""
 
 msgid "E1005: Too many argument types"
 msgstr "E1005: Troppi tipi di argomento"
 
+#, c-format
 msgid "E1006: %s is used as an argument"
 msgstr "E1006: %s è usato come argomento"
 
@@ -6729,47 +7250,60 @@ msgstr "E1008: Manca <type>"
 msgid "E1009: Missing > after type"
 msgstr "E1009: Manca > dopo tipo"
 
+#, c-format
 msgid "E1010: Type not recognized: %s"
 msgstr "E1010: Tipo non riconosciuto: %s"
 
+#, c-format
 msgid "E1011: Name too long: %s"
 msgstr "E1011: Nome troppo lungo: %s"
 
+#, c-format
 msgid "E1012: Type mismatch; expected %s but got %s"
 msgstr "E1012: Tipo non corrispondente; atteso %s, ma ottenuto %s"
 
+#, c-format
 msgid "E1012: Type mismatch; expected %s but got %s in %s"
 msgstr "E1012: Tipo non corrispondente; atteso %s, ma ottenuto %s in %s"
 
+#, c-format
 msgid "E1013: Argument %d: type mismatch, expected %s but got %s"
 msgstr ""
 "E1013: Argomento %d: tipo non corrispondente, atteso %s, ma ottenuto %s"
 
+#, c-format
 msgid "E1013: Argument %d: type mismatch, expected %s but got %s in %s"
 msgstr ""
 "E1013: Argomento %d: tipo non corrispondente, atteso %s, ma ottenuto %s in %s"
 
+#, c-format
 msgid "E1014: Invalid key: %s"
 msgstr "E1014: Chiave non valida: %s"
 
+#, c-format
 msgid "E1015: Name expected: %s"
 msgstr "E1015: Atteso un nome: %s"
 
+#, c-format
 msgid "E1016: Cannot declare a %s variable: %s"
 msgstr "E1016: Non si può dichiarare una %s variabile: %s"
 
+#, c-format
 msgid "E1016: Cannot declare an environment variable: %s"
 msgstr "E1016: Non si può dichiarare una variabile d'ambiente: %s"
 
+#, c-format
 msgid "E1017: Variable already declared: %s"
 msgstr "E1017: Variabile già dichiarata: %s"
 
+#, c-format
 msgid "E1018: Cannot assign to a constant: %s"
 msgstr "E1018: Non posso assegnare a una costante: %s"
 
 msgid "E1019: Can only concatenate to string"
 msgstr "E1019: Posso solo concatenare a una stringa"
 
+#, c-format
 msgid "E1020: Cannot use an operator on a new variable: %s"
 msgstr "E1020: Non posso usare un operatore su una variabile nuova: %s"
 
@@ -6779,6 +7313,7 @@ msgstr "E1021: Const richiede un valore"
 msgid "E1022: Type or initialization required"
 msgstr "E1022: Tipo o inizializzazione richiesta"
 
+#, c-format
 msgid "E1023: Using a Number as a Bool: %lld"
 msgstr "E1023: Uso di un Numero come valore Booleano: %lld"
 
@@ -6797,9 +7332,11 @@ msgstr "E1027: Manca istruzione :return"
 msgid "E1028: Compiling :def function failed"
 msgstr "E1028: Compilazione di funzione :def fallita"
 
+#, c-format
 msgid "E1029: Expected %s but got %s"
 msgstr "E1029: Atteso %s ma ottenuto %s"
 
+#, c-format
 msgid "E1030: Using a String as a Number: \"%s\""
 msgstr "E1030: Uso di una Stringa come un Numero: \"%s\""
 
@@ -6812,6 +7349,7 @@ msgstr "E1032: Manca :catch o :finally"
 msgid "E1033: Catch unreachable after catch-all"
 msgstr "E1033: Catch non raggiungibile dopo aver richiesto catch-all"
 
+#, c-format
 msgid "E1034: Cannot use reserved name %s"
 msgstr "E1034: Non posso usare il nome riservato %s"
 
@@ -6819,10 +7357,12 @@ msgstr "E1034: Non posso usare il nome r
 msgid "E1035: % requires number arguments"
 msgstr "E1035: % richiede come argomenti dei numeri"
 
+#, c-format
 msgid "E1036: %c requires number or float arguments"
 msgstr ""
 "E1036: %c richiede come argomenti dei Numeri o dei Numeri-a-virgola-mobile"
 
+#, c-format
 msgid "E1037: Cannot use \"%s\" with %s"
 msgstr "E1037: Non posso usare \"%s\" con %s"
 
@@ -6835,8 +7375,8 @@ msgstr "E1039: \"vim9script\" dev'essere
 msgid "E1040: Cannot use :scriptversion after :vim9script"
 msgstr "E1040: Non si può usare :scriptversion dopo :vim9script"
 
-msgid "E1041: Redefining script item %s"
-msgstr "E1041: Ridefinisco elemento di script %s"
+msgid "E1041: Redefining script item: \"%s\""
+msgstr "E1041: Ridefinisco elemento di script \"%s\""
 
 msgid "E1042: Export can only be used in vim9script"
 msgstr "E1042: Export può essere usato solo in vim9script"
@@ -6847,33 +7387,41 @@ msgstr "E1043: Comando non valido dopo :
 msgid "E1044: Export with invalid argument"
 msgstr "E1044: Export con argomento non valido"
 
+#, c-format
 msgid "E1047: Syntax error in import: %s"
 msgstr "E1047: Errore di sintassi in import: %s"
 
+#, c-format
 msgid "E1048: Item not found in script: %s"
 msgstr "E1048: Elemento non trovato nello script: %s"
 
+#, c-format
 msgid "E1049: Item not exported in script: %s"
 msgstr "E1049: Elemento non esportato nello script: %s"
 
+#, c-format
 msgid "E1050: Colon required before a range: %s"
 msgstr "E1050: Un due punti necessario prima di un intervallo: %s"
 
 msgid "E1051: Wrong argument type for +"
 msgstr "E1051: Tipo di argomento errato per +"
 
+#, c-format
 msgid "E1052: Cannot declare an option: %s"
 msgstr "E1052: Non si può dichiarare un'opzione: %s"
 
+#, c-format
 msgid "E1053: Could not import \"%s\""
 msgstr "E1053: Non riesco a importare \"%s\""
 
+#, c-format
 msgid "E1054: Variable already declared in the script: %s"
 msgstr "E1054: Variabile già dichiarata nello script: %s"
 
 msgid "E1055: Missing name after ..."
 msgstr "E1055: Manca nome dopo ..."
 
+#, c-format
 msgid "E1056: Expected a type: %s"
 msgstr "E1056: Atteso un tipo: %s"
 
@@ -6883,12 +7431,15 @@ msgstr "E1057: Manca :enddef"
 msgid "E1058: Function nesting too deep"
 msgstr "E1058: Nidificazione della funzione troppo estesa"
 
+#, c-format
 msgid "E1059: No white space allowed before colon: %s"
 msgstr "E1059: Nessuno spazio bianco consentito prima dei due punti: %s"
 
+#, c-format
 msgid "E1060: Expected dot after name: %s"
 msgstr "E1060: Atteso un punto dopo il nome: %s"
 
+#, c-format
 msgid "E1061: Cannot find function %s"
 msgstr "E1061: Non riesco a trovare la funzione %s"
 
@@ -6901,30 +7452,41 @@ msgstr "E1063: Tipo non corrispondente p
 msgid "E1064: Yank register changed while using it"
 msgstr "E1064: Registro di yank modificato mentre lo si usava"
 
+msgid "E1065: Command cannot be shortened: %s"
+msgstr "E1065: Il comando non può essere abbreviato: %s"
+
+#, c-format
 msgid "E1066: Cannot declare a register: %s"
 msgstr "E1066: Non posso dichiarare un registro: %s"
 
+#, c-format
 msgid "E1067: Separator mismatch: %s"
 msgstr "E1067: Manca il separatore corrispondente: %s"
 
+#, c-format
 msgid "E1068: No white space allowed before '%s': %s"
 msgstr "E1068: Nessuno spazio bianco consentito prima di '%s': %s"
 
+#, c-format
 msgid "E1069: White space required after '%s': %s"
 msgstr "E1069: Spazio bianco necessario dopo '%s': %s"
 
+#, c-format
 msgid "E1071: Invalid string for :import: %s"
 msgstr "E1071: Stringa non valida per :import: %s"
 
+#, c-format
 msgid "E1072: Cannot compare %s with %s"
 msgstr "E1072: Non posso confrontare %s con %s"
 
+#, c-format
 msgid "E1073: Name already defined: %s"
 msgstr "E1073: Nome già definito: %s"
 
 msgid "E1074: No white space allowed after dot"
 msgstr "E1074: Nessuno spazio bianco consentito dopo il punto"
 
+#, c-format
 msgid "E1075: Namespace not supported: %s"
 msgstr "E1075: Spazio-dei-nomi non supportato: %s"
 
@@ -6933,18 +7495,34 @@ msgstr ""
 "E1076: Questo Vim non è stato compilato col supporto per i Numeri-a-virgola-"
 "mobile"
 
+#, c-format
 msgid "E1077: Missing argument type for %s"
 msgstr "E1077: Manca tipo di argomento per %s"
 
+msgid "E1078: Invalid command \"nested\", did you mean \"++nested\"?"
+msgstr "E1078: Comando \"nested\" non valido , si intendeva \"++nested\"?"
+
+msgid "E1079: Cannot declare a variable on the command line"
+msgstr "E1079: Non si può dichiarare una variabile sulla riga-di-comando"
+
+msgid "E1080: Invalid assignment"
+msgstr "E1080: Assegnazione non valida"
+
+#, c-format
 msgid "E1081: Cannot unlet %s"
 msgstr "E1081: Non posso annullare %s"
 
+msgid "E1082: Command modifier without command"
+msgstr "E1082: Modificatore di comando senza un comando"
+
 msgid "E1083: Missing backtick"
 msgstr "E1083: Manca apice inverso"
 
+#, c-format
 msgid "E1084: Cannot delete Vim9 script function %s"
 msgstr "E1084: Non posso eliminare la funzione di script Vim9 %s"
 
+#, c-format
 msgid "E1085: Not a callable type: %s"
 msgstr "E1085: Tipo che non può essere chiamato: %s"
 
@@ -6954,15 +7532,25 @@ msgstr "E1086: Riferimento di funzione n
 msgid "E1087: Cannot use an index when declaring a variable"
 msgstr "E1087: Non posso usare un indice nella dichiarazione di una variabile"
 
+msgid "E1088: Script cannot import itself"
+msgstr "E1088: Uno script non può importare se stesso"
+
+#, c-format
 msgid "E1089: Unknown variable: %s"
 msgstr "E1089: Variabile sconosciuta: %s"
 
+#, c-format
 msgid "E1090: Cannot assign to argument %s"
 msgstr "E1090: Non posso assegnare all'argomento %s"
 
+#, c-format
 msgid "E1091: Function is not compiled: %s"
 msgstr "E1091: La funzione non è compilata: %s"
 
+msgid "E1092: Cannot nest :redir"
+msgstr "E1092: Non si può nidificare :redir"
+
+#, c-format
 msgid "E1093: Expected %d items but got %d"
 msgstr "E1093: Attesi %d elementi, ma ottenuti %d"
 
@@ -6983,16 +7571,20 @@ msgstr "E1097: Riga incompleta"
 msgid "E1098: String, List or Blob required"
 msgstr "E1098: Necessaria Stringa, Lista, o Blob"
 
+#, c-format
 msgid "E1099: Unknown error while executing %s"
 msgstr "E1099: Errore sconosciuto mentre era in esecuzione %s"
 
+#, c-format
 msgid "E1100: Command not supported in Vim9 script (missing :var?): %s"
 msgstr "E1100: Comando non supportato negli script Vim9 (manca :var?): %s"
 
+#, c-format
 msgid "E1101: Cannot declare a script variable in a function: %s"
 msgstr ""
 "E1101: Non si può dichiarare una variabile di script in una funzione: %s"
 
+#, c-format
 msgid "E1102: Lambda function not found: %s"
 msgstr "E1102: Funzione Lambda non trovata: %s"
 
@@ -7002,33 +7594,41 @@ msgstr "E1103: Dizionario non impostato"
 msgid "E1104: Missing >"
 msgstr "E1104: Manca >"
 
+#, c-format
 msgid "E1105: Cannot convert %s to string"
 msgstr "E1105: Non posso convertire %s a una Stringa"
 
 msgid "E1106: One argument too many"
 msgstr "E1106: Un argomento di troppo"
 
+#, c-format
 msgid "E1106: %d arguments too many"
 msgstr "E1106: %d argomenti di troppo"
 
 msgid "E1107: String, List, Dict or Blob required"
 msgstr "E1107: Necessaria Stringa, Lista, Dizionario o Blob"
 
+#, c-format
 msgid "E1108: Item not found: %s"
 msgstr "E1108: Elemento non trovato: %s"
 
+#, c-format
 msgid "E1109: List item %d is not a List"
 msgstr "E1109: L'elemento di Lista %d non è una Lista"
 
+#, c-format
 msgid "E1110: List item %d does not contain 3 numbers"
 msgstr "E1110: L'elemento di Lista %d non contiene 3 numeri"
 
+#, c-format
 msgid "E1111: List item %d range invalid"
 msgstr "E1111: Intervallo dell'elemento di Lista %d non valido"
 
+#, c-format
 msgid "E1112: List item %d cell width invalid"
 msgstr "E1112: Elemento di Lista %d con larghezza di cella non valida"
 
+#, c-format
 msgid "E1113: Overlapping ranges for 0x%lx"
 msgstr "E1113: Intervalli sovrapposti per 0x%lx"
 
@@ -7057,12 +7657,15 @@ msgstr "E1120: Non posso cambiare Dizion
 msgid "E1121: Cannot change dict item"
 msgstr "E1121: Non posso cambiare elemento di Dizionario"
 
+#, c-format
 msgid "E1122: Variable is locked: %s"
 msgstr "E1122: Variabile non modificabile: %s"
 
+#, c-format
 msgid "E1123: Missing comma before argument: %s"
 msgstr "E1123: Manca virgola prima dell'argomento: %s"
 
+#, c-format
 msgid "E1124: \"%s\" cannot be used in legacy Vim script"
 msgstr "E1124: \"%s\" non si può usare negli script Vim tradizionali"
 
@@ -7096,6 +7699,7 @@ msgstr "E1133: Non si può estendere un Dizionario nullo"
 msgid "E1134: Cannot extend a null list"
 msgstr "E1134: Non si può estendere una Lista nulla"
 
+#, c-format
 msgid "E1135: Using a String as a Bool: \"%s\""
 msgstr "E1135: Uso di una Stringa come valore Booleano: \"%s\""
 
@@ -7104,6 +7708,7 @@ msgstr ""
 "E1136: La mappatura di <Cmd> deve terminare con un <CR> prima di un secondo "
 "<Cmd>"
 
+#, c-format
 msgid "E1137: <Cmd> mapping must not include %s key"
 msgstr "E1137: La mappatura di <Cmd> non deve includere il tasto %s"
 
@@ -7122,24 +7727,30 @@ msgstr "E1141: Il tipo dev'essere indici
 msgid "E1142: Calling test_garbagecollect_now() while v:testing is not set"
 msgstr "E1142: Chiamato test_garbagecollect_now() con v:testing non impostato"
 
+#, c-format
 msgid "E1143: Empty expression: \"%s\""
 msgstr "E1143: Espressione vuota: \"%s\""
 
+#, c-format
 msgid "E1144: Command \"%s\" is not followed by white space: %s"
 msgstr "E1144: Il comando \"%s\" non è seguito da uno spazio bianco: %s"
 
+#, c-format
 msgid "E1145: Missing heredoc end marker: %s"
 msgstr "E1145: Manca marcatore della fine del quidoc: %s"
 
+#, c-format
 msgid "E1146: Command not recognized: %s"
 msgstr "E1146: Comando non riconosciuto: %s"
 
 msgid "E1147: List not set"
 msgstr "E1147: Lista non impostata"
 
+#, c-format
 msgid "E1148: Cannot index a %s"
 msgstr "E1148: Non posso indicizzare un/a %s"
 
+#, c-format
 msgid "E1149: Script variable is invalid after reload in function %s"
 msgstr ""
 "E1149: Variabile di script non valida dopo essere stata ricaricata nella "
@@ -7154,6 +7765,7 @@ msgstr "E1151: :endfunction senza corris
 msgid "E1152: Mismatched enddef"
 msgstr "E1152: :enddef senza corrispondenza"
 
+#, c-format
 msgid "E1153: Invalid operation for %s"
 msgstr "E1153: Operazione non valida per %s"
 
@@ -7170,7 +7782,8 @@ msgid "E1157: Missing return type"
 msgstr "E1157: Manca tipo di valore restituito"
 
 msgid "E1158: Cannot use flatten() in Vim9 script, use flattennew()"
-msgstr "E1158: Non si può usare flatten() in script Vim9, usare flattennew()"
+msgstr "E1158: Non si può usare flatten() negli script Vim9, usare "
+"flattennew()"
 
 msgid "E1159: Cannot split a window when closing the buffer"
 msgstr ""
@@ -7180,16 +7793,20 @@ msgid "E1160: Cannot use a default for v
 msgstr ""
 "E1160: Non posso usare un valore di default per argomenti di tipo variabile"
 
+#, c-format
 msgid "E1161: Cannot json encode a %s"
 msgstr "E1161: Non si può codificare json un/a %s"
 
+#, c-format
 msgid "E1162: Register name must be one character: %s"
 msgstr "E1162: Il nome di registro dev'essere un carattere singolo: %s"
 
+#, c-format
 msgid "E1163: Variable %d: type mismatch, expected %s but got %s"
 msgstr ""
 "E1163: Variabile %d: tipo non corrispondente, atteso %s, ma ottenuto %s"
 
+#, c-format
 msgid "E1163: Variable %d: type mismatch, expected %s but got %s in %s"
 msgstr ""
 "E1163: Variabile %d: tipo non corrispondente, atteso %s, ma ottenuto %s in %s"
@@ -7197,18 +7814,22 @@ msgstr ""
 msgid "E1164: vim9cmd must be followed by a command"
 msgstr "E1164: vim9cmd dev'essere seguito da un comando"
 
+#, c-format
 msgid "E1165: Cannot use a range with an assignment: %s"
 msgstr "E1165: Non posso usare un intervallo in un'assegnazione: %s"
 
 msgid "E1166: Cannot use a range with a dictionary"
 msgstr "E1166: Non posso usare un intervallo con un Dizionario"
 
+#, c-format
 msgid "E1167: Argument name shadows existing variable: %s"
 msgstr "E1167: Il nome dell'argomento nasconde una variabile esistente: %s"
 
+#, c-format
 msgid "E1168: Argument already declared in the script: %s"
 msgstr "E1168: Argomento già dichiarato nello script: %s"
 
+#, c-format
 msgid "E1169: Expression too recursive: %s"
 msgstr "E1169: Espressione troppo ricorsiva: %s"
 
@@ -7221,24 +7842,29 @@ msgstr "E1171: Manca } dopo una funzione
 msgid "E1172: Cannot use default values in a lambda"
 msgstr "E1172: Non si possono usare valori di default in un'espressione lambda"
 
+#, c-format
 msgid "E1173: Text found after %s: %s"
 msgstr "E1173: Trovato del testo dopo %s: %s"
 
+#, c-format
 msgid "E1174: String required for argument %d"
 msgstr "E1174: Stringa richiesta per argomento %d"
 
+#, c-format
 msgid "E1175: Non-empty string required for argument %d"
 msgstr "E1175: Stringa non vuota richiesta come argomento %d"
 
 msgid "E1176: Misplaced command modifier"
 msgstr "E1176: Modificatore di comando fuori posto"
 
+#, c-format
 msgid "E1177: For loop on %s not supported"
 msgstr "E1177: Ciclo :for su %s non supportato"
 
 msgid "E1178: Cannot lock or unlock a local variable"
 msgstr "E1178: Non si può bloccare o sbloccare una variabile locale"
 
+#, c-format
 msgid ""
 "E1179: Failed to extract PWD from %s, check your shell's config related to "
 "OSC 7"
@@ -7246,15 +7872,17 @@ msgstr ""
 "E1179: Non riesco a estrarre PWD da %s, controllare la configurazione della "
 "vostra shell relativa a OSC 7"
 
+#, c-format
 msgid "E1180: Variable arguments type must be a list: %s"
 msgstr "E1180: Il tipo di argomento delle variabili dev'essere una Lista: %s"
 
 msgid "E1181: Cannot use an underscore here"
 msgstr "E1181: Non si può usare un trattino basso qui"
 
-msgid "E1182: Blob required"
-msgstr "E1182: È richiesto un Blob"
-
+msgid "E1182: Cannot define a dict function in Vim9 script: %s"
+msgstr "E1182: Non posso definite una funzione dict negli script Vim9: %s"
+
+#, c-format
 msgid "E1183: Cannot use a range with an assignment operator: %s"
 msgstr ""
 "E1183: Non si può usare un intervallo con un operatore di assegnazione: %s"
@@ -7262,12 +7890,10 @@ msgstr ""
 msgid "E1184: Blob not set"
 msgstr "E1184: Blob non impostato"
 
-msgid "E1185: Cannot nest :redir"
-msgstr "E1185: Non si può nidificare :redir"
-
 msgid "E1185: Missing :redir END"
 msgstr "E1185: Manca END per :redir"
 
+#, c-format
 msgid "E1186: Expression does not result in a value: %s"
 msgstr "E1186: L'espressione non produce un valore: %s"
 
@@ -7278,15 +7904,18 @@ msgid "E1188: Cannot open a terminal fro
 msgstr ""
 "E1188: Non riesco ad aprire un terminale dalla finestra della riga-di-comando"
 
+#, c-format
 msgid "E1189: Cannot use :legacy with this command: %s"
 msgstr "E1189: Non si può usare :legacy con questo comando: %s"
 
 msgid "E1190: One argument too few"
 msgstr "E1190: Manca un argomento"
 
+#, c-format
 msgid "E1190: %d arguments too few"
 msgstr "E1190: Mancano %d argomenti"
 
+#, c-format
 msgid "E1191: Call to function that failed to compile: %s"
 msgstr "E1191: Chiamata a funzione che non si riesce a compilare: %s"
 
@@ -7322,45 +7951,57 @@ msgstr "E1200: Decifrazione fallita!"
 msgid "E1201: Decryption failed: pre-mature end of file!"
 msgstr "E1201: Decifrazione fallita: inattesa fine del file!"
 
+#, c-format
 msgid "E1202: No white space allowed after '%s': %s"
 msgstr "E1202: Nessuno spazio bianco consentito dopo '%s': %s"
 
+#, c-format
 msgid "E1203: Dot can only be used on a dictionary: %s"
 msgstr "E1203: Il punto può essere usato solo in un dizionario: %s"
 
+#, c-format
 msgid "E1204: No Number allowed after .: '\\%%%c'"
 msgstr "E1204: Nessun Numero consentito dopo .: '\\%%%c'"
 
 msgid "E1205: No white space allowed between option and"
 msgstr "E1205: Nessuno spazio bianco consentito tra l'opzione e"
 
+#, c-format
 msgid "E1206: Dictionary required for argument %d"
 msgstr "E1206: Dizionario richiesto per argomento %d"
 
+#, c-format
 msgid "E1207: Expression without an effect: %s"
 msgstr "E1207: Expressione che non produce alcun effetto: %s"
 
 msgid "E1208: -complete used without allowing arguments"
 msgstr "E1208: -complete usato senza conetntire alcun argomento"
 
+#, c-format
 msgid "E1209: Invalid value for a line number: \"%s\""
 msgstr "E1209: Valore non valido come numero di riga: \"%s\""
 
+#, c-format
 msgid "E1210: Number required for argument %d"
 msgstr "E1210: Numero richiesto per argomento %d"
 
+#, c-format
 msgid "E1211: List required for argument %d"
 msgstr "E1211: Una Lista richiesta per argomento %d"
 
+#, c-format
 msgid "E1212: Bool required for argument %d"
 msgstr "E1212: Valore Booleano richiesto per argomento %d"
 
+#, c-format
 msgid "E1213: Redefining imported item \"%s\""
 msgstr "E1213: Ridefinisco elemento importato \"%s\""
 
+#, c-format
 msgid "E1214: Digraph must be just two characters: %s"
 msgstr "E1214: Il digramma dev'essere formato da due soli caratteri: %s"
 
+#, c-format
 msgid "E1215: Digraph must be one character: %s"
 msgstr "E1215: Il digramma dev'essere formato da un solo carattere: %s"
 
@@ -7370,48 +8011,62 @@ msgstr ""
 "E1216: l'argomento a digraph_setlist() dev'essere una Lista di Liste con due "
 "elementi"
 
+#, c-format
 msgid "E1217: Channel or Job required for argument %d"
 msgstr "E1217: Canale o Job richiesto per argomento %d"
 
+#, c-format
 msgid "E1218: Job required for argument %d"
 msgstr "E1218: Job richiesto per argomento %d"
 
+#, c-format
 msgid "E1219: Float or Number required for argument %d"
 msgstr "E1219: Numero-a-virgola-mobile o Numero richiesto per argomento %d"
 
+#, c-format
 msgid "E1220: String or Number required for argument %d"
 msgstr "E1220: Stringa o Numero richiesto per argomento %d"
 
+#, c-format
 msgid "E1221: String or Blob required for argument %d"
 msgstr "E1221: Stringa o Blob richiesto per argomento %d"
 
+#, c-format
 msgid "E1222: String or List required for argument %d"
 msgstr "E1222: Stringa o Lista richiesta per argomento %d"
 
+#, c-format
 msgid "E1223: String or Dictionary required for argument %d"
 msgstr "E1223: Stringa o Dizionario richiesto per argomento %d"
 
+#, c-format
 msgid "E1224: String, Number or List required for argument %d"
 msgstr "E1224: Stringa, Numero o Lista richiesto per argomento %d"
 
+#, c-format
 msgid "E1225: String, List or Dictionary required for argument %d"
 msgstr "E1225: Stringa, Lista o Dizionario richiesto per argomento %d"
 
+#, c-format
 msgid "E1226: List or Blob required for argument %d"
 msgstr "E1226: Lista o Blob richiesto per argomento %d"
 
+#, c-format
 msgid "E1227: List or Dictionary required for argument %d"
 msgstr "E1227: Lista o Dizionario richiesto per argomento %d"
 
+#, c-format
 msgid "E1228: List, Dictionary or Blob required for argument %d"
 msgstr "E1228: Lista, Dizionario o Blob richiesto per argomento %d"
 
+#, c-format
 msgid "E1229: Expected dictionary for using key \"%s\", but got %s"
 msgstr "E1229: Atteso Dizionario per usare chiave \"%s\", ma ottenuto %s"
 
 msgid "E1230: Encryption: sodium_mlock() failed"
 msgstr "E1230: CIfratura: sodium_mlock() fallita"
 
+#, c-format
 msgid "E1231: Cannot use a bar to separate commands here: %s"
 msgstr "E1231: Non si può usare una barra per separare comandi qui: %s"
 
@@ -7428,36 +8083,44 @@ msgstr "E1234: legacy dev'essere seguito
 msgid "E1235: Function reference is not set"
 msgstr "E1235: Riferimento di funzione non impostato"
 
+#, c-format
 msgid "E1236: Cannot use %s itself, it is imported"
 msgstr "E1236: Non posso usare %s stesso, è importato"
 
+#, c-format
 msgid "E1237: No such user-defined command in current buffer: %s"
 msgstr "E1237: Questo comando utente non c'è nel buffer corrente: %s"
 
+#, c-format
 msgid "E1238: Blob required for argument %d"
 msgstr "E1238: Blob richiesto per argomento %d"
 
+#, c-format
 msgid "E1239: Invalid value for blob: %d"
 msgstr "E1239: Valore non valido per blob: %d"
 
 msgid "E1240: Resulting text too long"
 msgstr "E1240: Testo risultante troppo lungo"
 
+#, c-format
 msgid "E1241: Separator not supported: %s"
 msgstr "E1241: Separatore nod supportato: %s"
 
+#, c-format
 msgid "E1242: No white space allowed before separator: %s"
 msgstr "E1242: Nessuno spazio bianco consentito prima del separatore: %s"
 
 msgid "E1243: ASCII code not in 32-127 range"
 msgstr "E1243: codice ASCII non nell'intervallo 32-127"
 
+#, c-format
 msgid "E1244: Bad color string: %s"
 msgstr "E1244: Descrizione colore non valida: %s"
 
 msgid "E1245: Cannot expand <sfile> in a Vim9 function"
 msgstr "E1245: Non posso espandere <sfile> in una funzione Vim9"
 
+#, c-format
 msgid "E1246: Cannot find variable to (un)lock: %s"
 msgstr "E1246: Non riesco a trovare variabile da (s)/bloccare: %s"
 
@@ -7465,22 +8128,26 @@ msgid "E1247: Line number out of range"
 msgstr "E1247: Numero di riga non nell'intervallo"
 
 msgid "E1248: Closure called from invalid context"
-msgstr "E1248: Chiusura chiamata da contesto non valido"
+msgstr "E1248: \"Closure\" chiamata da contesto non valido"
 
 msgid "E1249: Highlight group name too long"
 msgstr "E1249: Nome gruppo evidenziazione troppo lungo"
 
+#, c-format
 msgid "E1250: Argument of %s must be a List, String, Dictionary or Blob"
 msgstr ""
 "E1250: L'argomento di %s dev'essere una Lista, una Stringa, un Dizionario o "
 "un Blob"
 
+#, c-format
 msgid "E1251: List, Dictionary, Blob or String required for argument %d"
 msgstr "E1251: Lista, Dizionario, Blob o Stringa richiesto per argomento %d"
 
+#, c-format
 msgid "E1252: String, List or Blob required for argument %d"
 msgstr "E1252: Stringa, Lista o Blob richiesto per argomento %d"
 
+#, c-format
 msgid "E1253: String expected for argument %d"
 msgstr "E1253: Stringa richiesta per argomento %d"
 
@@ -7490,31 +8157,38 @@ msgstr "E1254: Non si può usare una variabile di script in un ciclo for"
 msgid "E1255: <Cmd> mapping must end with <CR>"
 msgstr "E1255: La mappatura di <Cmd> deve terminare con <CR>"
 
+#, c-format
 msgid "E1256: String or function required for argument %d"
 msgstr "E1256: Stringa o funzione richiesta per argomento %d"
 
+#, c-format
 msgid "E1257: Imported script must use \"as\" or end in .vim: %s"
 msgstr "E1257: Script importato deve usare \"as\" o finire in .vim: %s"
 
+#, c-format
 msgid "E1258: No '.' after imported name: %s"
 msgstr "E1258: Manca '.' dopo nome importato: %s"
 
+#, c-format
 msgid "E1259: Missing name after imported name: %s"
 msgstr "E1259: Manca nome dopo nome importato: %s"
 
+#, c-format
 msgid "E1260: Cannot unlet an imported item: %s"
 msgstr "E1260: Non posso annullare un elemento importato: %s"
 
 msgid "E1261: Cannot import .vim without using \"as\""
 msgstr "E1261: Non posso importare .vim senza usare \"as\""
 
+#, c-format
 msgid "E1262: Cannot import the same script twice: %s"
 msgstr "E1262: Non posso importare lo stesso script due volte: %s"
 
 msgid "E1263: cannot use name with # in Vim9 script, use export instead"
-msgstr "E1263: non si può usare nome con # in script Vim9, usare invece "
-"export"
-
+msgstr "E1263: non si può usare nome con # negli script Vim9, usare "
+"invece export"
+
+#, c-format
 msgid "E1264: Autoload import cannot use absolute or relative path: %s"
 msgstr ""
 "E1264: Import di Autoload non riesce a usare percorso assoluto o relativo: %s"
@@ -7522,6 +8196,35 @@ msgstr ""
 msgid "E1265: Cannot use a partial here"
 msgstr "E1265: Non posso usare un nome parziale qui"
 
+msgid ""
+"E1266: Critical error in python3 initialization, check your python3 "
+"installation"
+msgstr ""
+"E1266: Errore critico inizializzando python3, controllare installazione "
+"python3"
+
+msgid "E1267: Function name must start with a capital: %s"
+msgstr "E1267: Il nome funzione deve iniziare con maiuscola: %s"
+
+msgid "E1268: Cannot use s: in Vim9 script: %s"
+msgstr "E1268: Non si può usare s: negli script Vim9: %s"
+
+msgid "E1269: Cannot create a Vim9 script variable in a function: %s"
+msgstr ""
+"E1269: Non si può creare una variabile di script Vim9 in una funzione: %s"
+
+msgid "E1270: Cannot use :s\\/sub/ in Vim9 script"
+msgstr "E1270: Non si può usare :s\\/sub/ negli script Vim9"
+
+msgid "E1271: compiling closure without context: %s"
+msgstr "E1271: compilazione di \"closure\" senza un contesto: %s"
+
+msgid "E1272: Using type not in a script context: %s"
+msgstr "E1272: Uso di type fuori dal contesto di uno script: %s"
+
+msgid "E1273: (NFA regexp) missing value in '\\%%%c'"
+msgstr "E1273: (Espressione regolare NFA) manca valore in '\\%%%c'"
+
 msgid "--No lines in buffer--"
 msgstr "--File vuoto--"
 
@@ -7534,6 +8237,7 @@ msgstr "raggiunto il FONDO nella ricerca
 msgid " line "
 msgstr " riga "
 
+#, c-format
 msgid "Need encryption key for \"%s\""
 msgstr "Serve una chiave di cifratura per \"%s\""
 
@@ -7546,24 +8250,30 @@ msgstr "il Dizionario è non modificabile"
 msgid "list is locked"
 msgstr "la lista è non modificabile"
 
+#, c-format
 msgid "failed to add key '%s' to dictionary"
 msgstr "non riesco ad aggiungere la chiave '%s' al Dizionario"
 
+#, c-format
 msgid "index must be int or slice, not %s"
 msgstr "l'indice dev'essere un intero o un intervallo, non %s"
 
+#, c-format
 msgid "expected str() or unicode() instance, but got %s"
 msgstr "attesa istanza di str() o unicode(), ottenuto invece %s"
 
+#, c-format
 msgid "expected bytes() or str() instance, but got %s"
 msgstr "attesa istanza di bytes() o str(), ottenuto invece %s"
 
+#, c-format
 msgid ""
 "expected int(), long() or something supporting coercing to long(), but got %s"
 msgstr ""
 "atteso int(), long() o qualcosa che supporti forzatura a long(), ottenuto "
 "invece %s"
 
+#, c-format
 msgid "expected int() or something supporting coercing to int(), but got %s"
 msgstr ""
 "atteso int() o qualcosa che supporti forzatura a int(), ottenuto invece %s"
@@ -7583,16 +8293,19 @@ msgstr "il numero dev'essere maggiore o 
 msgid "can't delete OutputObject attributes"
 msgstr "non riesco a cancellare gli attributi OutputObject"
 
+#, c-format
 msgid "invalid attribute: %s"
 msgstr "attributo non valido: %s"
 
 msgid "failed to change directory"
 msgstr "cambio directory non riuscito"
 
+#, c-format
 msgid "expected 3-tuple as imp.find_module() result, but got %s"
 msgstr ""
 "atteso terzetto come risultato di imp.find_module(), ottenuto invece %s"
 
+#, c-format
 msgid "expected 3-tuple as imp.find_module() result, but got tuple of size %d"
 msgstr ""
 "atteso terzetto come risultato di imp.find_module(), ottenuto invece tuple "
@@ -7607,12 +8320,14 @@ msgstr "non riesco a cancellare gli attr
 msgid "cannot modify fixed dictionary"
 msgstr "non posso modificare il Dizionario fisso"
 
+#, c-format
 msgid "cannot set attribute %s"
 msgstr "non posso impostare attributo %s"
 
 msgid "hashtab changed during iteration"
 msgstr "hashtab cambiato durante l'iterazione"
 
+#, c-format
 msgid "expected sequence element of size 2, but got sequence of size %d"
 msgstr ""
 "atteso elemento sequenza di dimensione 2, ottenuto sequenza di dimensione %d"
@@ -7623,6 +8338,7 @@ msgstr "il costruttore di lista non acce
 msgid "list index out of range"
 msgstr "Indice di Lista fuori intervallo"
 
+#, c-format
 msgid "internal error: failed to get Vim list item %d"
 msgstr ""
 "errore interno: non sono riuscito a ottenere l'elemento di Lista di Vim %d"
@@ -7630,10 +8346,12 @@ msgstr ""
 msgid "slice step cannot be zero"
 msgstr "il passo scorrendo un intervallo non può essere zero"
 
+#, c-format
 msgid "attempt to assign sequence of size greater than %d to extended slice"
 msgstr ""
 "tentativo di assegnare una sequenza maggiore di %d a un intervallo esteso"
 
+#, c-format
 msgid "internal error: no Vim list item %d"
 msgstr "errore interno: non c'è elemento di Lista di Vim %d"
 
@@ -7643,6 +8361,7 @@ msgstr "errore interno: non ci sono abba
 msgid "internal error: failed to add item to list"
 msgstr "errore interno: non ho potuto aggiungere un elemento alla Lista"
 
+#, c-format
 msgid "attempt to assign sequence of size %d to extended slice of size %d"
 msgstr ""
 "tentativo di assegnare sequenza di dimensione %d a un intervallo esteso di "
@@ -7657,12 +8376,15 @@ msgstr "non riesco a cancellare gli attr
 msgid "cannot modify fixed list"
 msgstr "non posso modificare la lista fissa"
 
+#, c-format
 msgid "unnamed function %s does not exist"
 msgstr "la funzione anonima %s non esiste"
 
+#, c-format
 msgid "function %s does not exist"
 msgstr "la funzione %s non esiste"
 
+#, c-format
 msgid "failed to run function %s"
 msgstr "esecuzione non riuscita della funzione %s"
 
@@ -7675,9 +8397,11 @@ msgstr "errore interno: tipo di opzione 
 msgid "problem while switching windows"
 msgstr "problema nel cambio finestra"
 
+#, c-format
 msgid "unable to unset global option %s"
 msgstr "impossibile rimuovere l'opzione globale %s"
 
+#, c-format
 msgid "unable to unset option %s which does not have global value"
 msgstr "impossibile rimuovere l'opzione %s che non ha un valore globale"
 
@@ -7708,12 +8432,15 @@ msgstr "cambio nome buffer non riuscito"
 msgid "mark name must be a single character"
 msgstr "il nome marcatura dev'essere un carattere singolo"
 
+#, c-format
 msgid "expected vim.Buffer object, but got %s"
 msgstr "atteso oggetto vim.Buffer, ottenuto %s"
 
+#, c-format
 msgid "failed to switch to buffer %d"
 msgstr "passaggio non riuscito al buffer %d"
 
+#, c-format
 msgid "expected vim.Window object, but got %s"
 msgstr "atteso oggetto vim.Window, ottenuto %s"
 
@@ -7724,6 +8451,7 @@ msgstr ""
 msgid "did not switch to the specified window"
 msgstr "passaggio alla finestra specificata non effettuato"
 
+#, c-format
 msgid "expected vim.TabPage object, but got %s"
 msgstr "atteso oggetto vim.TabPage, ottenuto %s"
 
@@ -7733,12 +8461,15 @@ msgstr "passaggio alla pagina di linguet
 msgid "failed to run the code"
 msgstr "esecuzione del codice non riuscita"
 
+#, c-format
 msgid "unable to convert %s to a Vim dictionary"
 msgstr "impossibile convertire %s a Dizionario vim"
 
+#, c-format
 msgid "unable to convert %s to a Vim list"
 msgstr "impossibile convertire %s a Lista vim"
 
+#, c-format
 msgid "unable to convert %s to a Vim structure"
 msgstr "impossibile convertire %s a struttura vim"
 
@@ -8368,6 +9099,9 @@ msgstr "la finestra col puntatore del mo
 msgid "hide the mouse pointer while typing"
 msgstr "nasconde il puntatore del mouse mentre si immette testo"
 
+msgid "report mouse movement events"
+msgstr "riferisci eventi di movimento del mouse"
+
 msgid ""
 "\"extend\", \"popup\" or \"popup_setpos\"; what the right\n"
 "mouse button is used for"
@@ -8713,6 +9447,9 @@ msgstr "tasti che iniziano indentatura-C
 msgid "list of words that cause more C-indent"
 msgstr "lista di parole che innescano ulteriore indentatura-C"
 
+msgid "list of scope declaration names used by cino-g"
+msgstr "lista di dichiarazioni di ambito usate da cino-g"
+
 msgid "expression used to obtain the indent of a line"
 msgstr "espressione usata per ottenere indentatura di una riga"