changeset 18831:6848b809a26e

Runtime file updates. Commit: https://github.com/vim/vim/commit/664f3cf3f21d3699bfd179c318ef5c869c085648 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Dec 7 16:03:51 2019 +0100 Runtime file updates.
author Bram Moolenaar <Bram@vim.org>
date Sat, 07 Dec 2019 16:15:05 +0100
parents a5749be04ad3
children b3eb5102447a
files runtime/doc/channel.txt runtime/doc/editing.txt runtime/doc/eval.txt runtime/doc/ft_sql.txt runtime/doc/if_mzsch.txt runtime/doc/if_ole.txt runtime/doc/if_perl.txt runtime/doc/if_pyth.txt runtime/doc/indent.txt runtime/doc/options.txt runtime/doc/os_390.txt runtime/doc/pattern.txt runtime/doc/quickfix.txt runtime/doc/quickref.txt runtime/doc/repeat.txt runtime/doc/syntax.txt runtime/doc/tags runtime/doc/term.txt runtime/doc/terminal.txt runtime/doc/textprop.txt runtime/doc/todo.txt runtime/doc/uganda.txt runtime/doc/undo.txt runtime/doc/usr_22.txt runtime/doc/various.txt runtime/doc/version8.txt runtime/doc/windows.txt runtime/gvim.desktop runtime/syntax/gitrebase.vim runtime/vim.desktop src/po/fr.po src/po/gvim.desktop.in src/po/vim.desktop.in
diffstat 33 files changed, 1701 insertions(+), 1499 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 8.1.  Last change: 2019 Sep 11
+*channel.txt*      For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -223,7 +223,7 @@ ch_open() fails quickly.  On MS-Windows 
 *E898* *E901* *E902*
 
 If there is an error reading or writing a channel it will be closed.
-*E630* *E631* 
+*E630* *E631*
 
 ==============================================================================
 4. Using a JSON or JS channel					*channel-use*
@@ -752,7 +752,7 @@ handle that separately, add an "err_cb" 
 
 If you want to handle both stderr and stdout with one handler use the
 "callback" option: >
-    let job = job_start(command, {"callback": "MyHandler"}) 
+    let job = job_start(command, {"callback": "MyHandler"})
 
 Depending on the system, starting a job can put Vim in the background, the
 started job gets the focus.  To avoid that, use the `foreground()` function.
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 8.1.  Last change: 2019 Sep 27
+*editing.txt*   For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1452,7 +1452,7 @@ Do this before writing the file.  When r
 set automatically to the method used when that file was written.  You can
 change 'cryptmethod' before writing that file to change the method.
 
-To set the default method, used for new files, use this in your |vimrc| 
+To set the default method, used for new files, use this in your |vimrc|
 file: >
 	set cm=blowfish2
 Using "blowfish2" is highly recommended.  Only use another method if you
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.1.  Last change: 2019 Dec 01
+*eval.txt*	For Vim version 8.1.  Last change: 2019 Dec 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -42,7 +42,8 @@ 1.1 Variable types ~
 						*E712* *E896* *E897* *E899*
 There are ten types of variables:
 
-Number		A 32 or 64 bit signed number.  |expr-number| *Number*
+							*Number* *Integer*
+Number		A 32 or 64 bit signed number.  |expr-number|
 		64-bit Numbers are available only when compiled with the
 		|+num64| feature.
 		Examples:  -123  0x10  0177  0b1011
--- a/runtime/doc/ft_sql.txt
+++ b/runtime/doc/ft_sql.txt
@@ -1,4 +1,4 @@
-*ft_sql.txt*	For Vim version 8.1.  Last change: 2013 May 15
+*ft_sql.txt*	For Vim version 8.1.  Last change: 2019 Dec 07
 
 by David Fishburn
 
@@ -342,8 +342,8 @@ The defaults static maps are: >
     imap <buffer> <C-C>T <C-\><C-O>:call sqlcomplete#Map('sqlType')<CR><C-X><C-O>
     imap <buffer> <C-C>s <C-\><C-O>:call sqlcomplete#Map('sqlStatement')<CR><C-X><C-O>
 
-The use of "<C-C>" can be user chosen by using the following in your |.vimrc| as it 
-may not work properly on all platforms: >
+The use of "<C-C>" can be user chosen by using the following in your |.vimrc|
+as it may not work properly on all platforms: >
     let g:ftplugin_sql_omni_key = '<C-C>'
 >
 The static maps (which are based on the syntax highlight groups) follow this
@@ -522,7 +522,7 @@ The SQL completion plugin can also displ
 tables.  The column completion is trigger via <C-C>c.
 
 NOTE: The following example uses <Right> to trigger a column list while
-      the popup window is active.  
+      the popup window is active.
 
 Example of using column completion:
      - Press <C-C>t again to display the list of tables.
--- a/runtime/doc/if_mzsch.txt
+++ b/runtime/doc/if_mzsch.txt
@@ -1,4 +1,4 @@
-*if_mzsch.txt*  For Vim version 8.1.  Last change: 2019 Jul 21
+*if_mzsch.txt*  For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Sergey Khorev
@@ -87,7 +87,7 @@ To avoid clashes with MzScheme, consider
 e.g.: >
 	:mzscheme (require (prefix vim- vimext))
 <
-All the examples below assume this naming scheme. 
+All the examples below assume this naming scheme.
 
 							*mzscheme-sandbox*
 When executed in the |sandbox|, access to some filesystem and Vim interface
--- a/runtime/doc/if_ole.txt
+++ b/runtime/doc/if_ole.txt
@@ -1,4 +1,4 @@
-*if_ole.txt*    For Vim version 8.1.  Last change: 2019 May 05
+*if_ole.txt*    For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Paul Moore
@@ -39,7 +39,7 @@ instance), code similar to the following
 	$vim = new Win32::OLE 'Vim.Application';
 
 [C#] >
-        // Add a reference to Vim in your project. 
+        // Add a reference to Vim in your project.
         // Choose the COM tab.
         // Select "Vim Ole Interface 1.1 Type Library"
 	Vim.Vim vimobj = new Vim.Vim();
--- a/runtime/doc/if_perl.txt
+++ b/runtime/doc/if_perl.txt
@@ -1,4 +1,4 @@
-*if_perl.txt*   For Vim version 8.1.  Last change: 2019 Jul 21
+*if_perl.txt*   For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Sven Verdoolaege
@@ -180,7 +180,7 @@ VIM::Windows([{wn}...])	With no argument
 VIM::DoCommand({cmd})	Executes Ex command {cmd}.
 
 							*perl-Eval*
-VIM::Eval({expr})	Evaluates {expr} and returns (success, value) in list 
+VIM::Eval({expr})	Evaluates {expr} and returns (success, value) in list
 			context or just value in scalar context.
 			success=1 indicates that val contains the value of
 			{expr}; success=0 indicates a failure to evaluate
--- a/runtime/doc/if_pyth.txt
+++ b/runtime/doc/if_pyth.txt
@@ -1,4 +1,4 @@
-*if_pyth.txt*   For Vim version 8.1.  Last change: 2019 Nov 29
+*if_pyth.txt*   For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Paul Moore
@@ -183,7 +183,7 @@ vim.eval(str)						*python-eval*
 	    :py text_width = vim.eval("&tw")
 	    :
 	    :" contents of the 'a' register
-	    :py a_reg = vim.eval("@a") 
+	    :py a_reg = vim.eval("@a")
 	    :
 	    :" Result is a string! Use string.atoi() to convert to a number.
 	    :py str = vim.eval("12+12")
@@ -194,25 +194,25 @@ vim.eval(str)						*python-eval*
 	'eval_expr', 'kind': 'f', 'filename': './src/eval.c'}] ~
 
 vim.bindeval(str)					*python-bindeval*
-	Like |python-eval|, but returns special objects described in 
-	|python-bindeval-objects|. These python objects let you modify (|List| 
+	Like |python-eval|, but returns special objects described in
+	|python-bindeval-objects|. These python objects let you modify (|List|
 	or |Dictionary|) or call (|Funcref|) vim objects.
 
 vim.strwidth(str)					*python-strwidth*
-	Like |strwidth()|: returns number of display cells str occupies, tab 
+	Like |strwidth()|: returns number of display cells str occupies, tab
 	is counted as one cell.
 
 vim.foreach_rtp(callable)				*python-foreach_rtp*
-	Call the given callable for each path in 'runtimepath' until either 
-	callable returns something but None, the exception is raised or there 
-	are no longer paths. If stopped in case callable returned non-None, 
+	Call the given callable for each path in 'runtimepath' until either
+	callable returns something but None, the exception is raised or there
+	are no longer paths. If stopped in case callable returned non-None,
 	vim.foreach_rtp function returns the value returned by callable.
 
 vim.chdir(*args, **kwargs)				*python-chdir*
 vim.fchdir(*args, **kwargs)				*python-fchdir*
 	Run os.chdir or os.fchdir, then all appropriate vim stuff.
-	Note: you should not use these functions directly, use os.chdir and 
-	      os.fchdir instead. Behavior of vim.fchdir is undefined in case 
+	Note: you should not use these functions directly, use os.chdir and
+	      os.fchdir instead. Behavior of vim.fchdir is undefined in case
 	      os.fchdir does not exist.
 
 Error object of the "vim" module
@@ -247,15 +247,15 @@ vim.windows						*python-windows*
 	    :py w in vim.windows	# Membership test
 	    :py n = len(vim.windows)	# Number of elements
 	    :py for w in vim.windows:	# Sequential access
-<	Note: vim.windows object always accesses current tab page. 
-	|python-tabpage|.windows objects are bound to parent |python-tabpage| 
-	object and always use windows from that tab page (or throw vim.error 
-	in case tab page was deleted). You can keep a reference to both 
-	without keeping a reference to vim module object or |python-tabpage|, 
+<	Note: vim.windows object always accesses current tab page.
+	|python-tabpage|.windows objects are bound to parent |python-tabpage|
+	object and always use windows from that tab page (or throw vim.error
+	in case tab page was deleted). You can keep a reference to both
+	without keeping a reference to vim module object or |python-tabpage|,
 	they will not lose their properties in this case.
 
 vim.tabpages						*python-tabpages*
-	A sequence object providing access to the list of vim tab pages. The 
+	A sequence object providing access to the list of vim tab pages. The
 	object supports the following operations: >
 	    :py t = vim.tabpages[i]	# Indexing (read-only)
 	    :py t in vim.tabpages	# Membership test
@@ -276,12 +276,12 @@ vim.current						*python-current*
 	"current range".  A range is a bit like a buffer, but with all access
 	restricted to a subset of lines.  See |python-range| for more details.
 
-	Note: When assigning to vim.current.{buffer,window,tabpage} it expects 
-	valid |python-buffer|, |python-window| or |python-tabpage| objects 
-	respectively. Assigning triggers normal (with |autocommand|s) 
-	switching to given buffer, window or tab page. It is the only way to 
-	switch UI objects in python: you can't assign to 
-	|python-tabpage|.window attribute. To switch without triggering 
+	Note: When assigning to vim.current.{buffer,window,tabpage} it expects
+	valid |python-buffer|, |python-window| or |python-tabpage| objects
+	respectively. Assigning triggers normal (with |autocommand|s)
+	switching to given buffer, window or tab page. It is the only way to
+	switch UI objects in python: you can't assign to
+	|python-tabpage|.window attribute. To switch without triggering
 	autocommands use >
 	    py << EOF
 	    saved_eventignore = vim.options['eventignore']
@@ -294,12 +294,12 @@ vim.current						*python-current*
 <
 vim.vars						*python-vars*
 vim.vvars						*python-vvars*
-	Dictionary-like objects holding dictionaries with global (|g:|) and 
-	vim (|v:|) variables respectively. Identical to `vim.bindeval("g:")`, 
+	Dictionary-like objects holding dictionaries with global (|g:|) and
+	vim (|v:|) variables respectively. Identical to `vim.bindeval("g:")`,
 	but faster.
 
 vim.options						*python-options*
-	Object partly supporting mapping protocol (supports setting and 
+	Object partly supporting mapping protocol (supports setting and
 	getting items) providing a read-write access to global options.
 	Note: unlike |:set| this provides access only to global options. You
 	cannot use this object to obtain or set local options' values or
@@ -310,7 +310,7 @@ vim.options						*python-options*
 	buffer-local options and |python-window| objects to access to
 	window-local options.
 
-	Type of this object is available via "Options" attribute of vim 
+	Type of this object is available via "Options" attribute of vim
 	module.
 
 Output from Python					*python-output*
@@ -331,10 +331,10 @@ Output from Python					*python-output*
 		    *python2-directory* *python3-directory* *pythonx-directory*
 Python 'runtimepath' handling				*python-special-path*
 
-In python vim.VIM_SPECIAL_PATH special directory is used as a replacement for 
-the list of paths found in 'runtimepath': with this directory in sys.path and 
-vim.path_hooks in sys.path_hooks python will try to load module from 
-{rtp}/python2 (or python3) and {rtp}/pythonx (for both python versions) for 
+In python vim.VIM_SPECIAL_PATH special directory is used as a replacement for
+the list of paths found in 'runtimepath': with this directory in sys.path and
+vim.path_hooks in sys.path_hooks python will try to load module from
+{rtp}/python2 (or python3) and {rtp}/pythonx (for both python versions) for
 each {rtp} found in 'runtimepath'.
 
 Implementation is similar to the following, but written in C: >
@@ -362,8 +362,8 @@ Implementation is similar to the followi
             fmr = find_module(fullname, path)
             return load_module(fullname, *fmr)
 
-    # It uses vim module itself in place of VimPathFinder class: it does not 
-    # matter for python which object has find_module function attached to as 
+    # It uses vim module itself in place of VimPathFinder class: it does not
+    # matter for python which object has find_module function attached to as
     # an attribute.
     class VimPathFinder(object):
         @classmethod
@@ -386,28 +386,28 @@ Implementation is similar to the followi
     sys.path_hooks.append(hook)
 
 vim.VIM_SPECIAL_PATH					*python-VIM_SPECIAL_PATH*
-	String constant used in conjunction with vim path hook. If path hook 
-	installed by vim is requested to handle anything but path equal to 
-	vim.VIM_SPECIAL_PATH constant it raises ImportError. In the only other 
+	String constant used in conjunction with vim path hook. If path hook
+	installed by vim is requested to handle anything but path equal to
+	vim.VIM_SPECIAL_PATH constant it raises ImportError. In the only other
 	case it uses special loader.
 
-	Note: you must not use value of this constant directly, always use 
+	Note: you must not use value of this constant directly, always use
 	      vim.VIM_SPECIAL_PATH object.
 
 vim.find_module(...)					*python-find_module*
 vim.path_hook(path)					*python-path_hook*
-	Methods or objects used to implement path loading as described above. 
-	You should not be using any of these directly except for vim.path_hook 
-	in case you need to do something with sys.meta_path. It is not 
-	guaranteed that any of the objects will exist in the future vim 
+	Methods or objects used to implement path loading as described above.
+	You should not be using any of these directly except for vim.path_hook
+	in case you need to do something with sys.meta_path. It is not
+	guaranteed that any of the objects will exist in the future vim
 	versions.
 
 vim._get_paths						*python-_get_paths*
-	Methods returning a list of paths which will be searched for by path 
-	hook. You should not rely on this method being present in future 
+	Methods returning a list of paths which will be searched for by path
+	hook. You should not rely on this method being present in future
 	versions, but can use it for debugging.
 
-	It returns a list of {rtp}/python2 (or {rtp}/python3) and 
+	It returns a list of {rtp}/python2 (or {rtp}/python3) and
 	{rtp}/pythonx directories for each {rtp} in 'runtimepath'.
 
 ==============================================================================
@@ -436,21 +436,21 @@ line numbers, which start from 1.  This 
 with marks (see below) which use vim line numbers.
 
 The buffer object attributes are:
-	b.vars		Dictionary-like object used to access 
+	b.vars		Dictionary-like object used to access
 			|buffer-variable|s.
-	b.options	Mapping object (supports item getting, setting and 
-			deleting) that provides access to buffer-local options 
-			and buffer-local values of |global-local| options. Use 
-			|python-window|.options if option is window-local, 
-			this object will raise KeyError. If option is 
-			|global-local| and local value is missing getting it 
+	b.options	Mapping object (supports item getting, setting and
+			deleting) that provides access to buffer-local options
+			and buffer-local values of |global-local| options. Use
+			|python-window|.options if option is window-local,
+			this object will raise KeyError. If option is
+			|global-local| and local value is missing getting it
 			will return None.
 	b.name		String, RW. Contains buffer name (full path).
-			Note: when assigning to b.name |BufFilePre| and 
+			Note: when assigning to b.name |BufFilePre| and
 			|BufFilePost| autocommands are launched.
 	b.number	Buffer number. Can be used as |python-buffers| key.
 			Read-only.
-	b.valid		True or False. Buffer object becomes invalid when 
+	b.valid		True or False. Buffer object becomes invalid when
 			corresponding buffer is wiped out.
 
 The buffer object methods are:
@@ -538,16 +538,16 @@ Window attributes are:
 				This is a tuple, (row,col).
 	height (read-write)	The window height, in rows
 	width (read-write)	The window width, in columns
-	vars (read-only)	The window |w:| variables. Attribute is 
-				unassignable, but you can change window 
+	vars (read-only)	The window |w:| variables. Attribute is
+				unassignable, but you can change window
 				variables this way
-	options (read-only)	The window-local options. Attribute is 
-				unassignable, but you can change window 
-				options this way. Provides access only to 
-				window-local options, for buffer-local use 
-				|python-buffer| and for global ones use 
-				|python-options|. If option is |global-local| 
-				and local value is missing getting it will 
+	options (read-only)	The window-local options. Attribute is
+				unassignable, but you can change window
+				options this way. Provides access only to
+				window-local options, for buffer-local use
+				|python-buffer| and for global ones use
+				|python-options|. If option is |global-local|
+				and local value is missing getting it will
 				return None.
 	number (read-only)	Window number.  The first window has number 1.
 				This is zero in case it cannot be determined
@@ -556,7 +556,7 @@ Window attributes are:
 	row, col (read-only)	On-screen window position in display cells.
 				First position is zero.
 	tabpage (read-only)	Window tab page.
-	valid (read-write)	True or False. Window object becomes invalid 
+	valid (read-write)	True or False. Window object becomes invalid
 				when corresponding window is closed.
 
 The height attribute is writable only if the screen is split horizontally.
@@ -567,21 +567,21 @@ Window object type is available using "W
 ==============================================================================
 6. Tab page objects					*python-tabpage*
 
-Tab page objects represent vim tab pages. You can obtain them in a number of 
+Tab page objects represent vim tab pages. You can obtain them in a number of
 ways:
 	- via vim.current.tabpage (|python-current|)
 	- from indexing vim.tabpages (|python-tabpages|)
 
-You can use this object to access tab page windows. They have no methods and 
+You can use this object to access tab page windows. They have no methods and
 no sequence or other interfaces.
 
 Tab page attributes are:
-	number		The tab page number like the one returned by 
+	number		The tab page number like the one returned by
 			|tabpagenr()|.
 	windows		Like |python-windows|, but for current tab page.
 	vars		The tab page |t:| variables.
 	window		Current tabpage window.
-	valid		True or False. Tab page object becomes invalid when 
+	valid		True or False. Tab page object becomes invalid when
 			corresponding tab page is closed.
 
 TabPage object type is available using "TabPage" attribute of vim module.
@@ -598,8 +598,8 @@ vim.Dictionary object				*python-Diction
                     zero            Variable is not locked
                     vim.VAR_LOCKED  Variable is locked, but can be unlocked
                     vim.VAR_FIXED   Variable is locked and can't be unlocked
-                   Read-write. You can unlock locked variable by assigning 
-                   `True` or `False` to this attribute. No recursive locking 
+                   Read-write. You can unlock locked variable by assigning
+                   `True` or `False` to this attribute. No recursive locking
                    is supported.
         scope      One of
                     Value              Description ~
@@ -615,23 +615,23 @@ vim.Dictionary object				*python-Diction
         update(iterable), update(dictionary), update(**kwargs)
                     Adds keys to dictionary.
         get(key[, default=None])
-                    Obtain key from dictionary, returning the default if it is 
+                    Obtain key from dictionary, returning the default if it is
                     not present.
         pop(key[, default])
-                    Remove specified key from dictionary and return 
-                    corresponding value. If key is not found and default is 
+                    Remove specified key from dictionary and return
+                    corresponding value. If key is not found and default is
                     given returns the default, otherwise raises KeyError.
         popitem()
-                    Remove random key from dictionary and return (key, value) 
+                    Remove random key from dictionary and return (key, value)
                     pair.
         has_key(key)
-                    Check whether dictionary contains specified key, similar 
+                    Check whether dictionary contains specified key, similar
                     to `key in dict`.
 
         __new__(), __new__(iterable), __new__(dictionary), __new__(update)
-                    You can use `vim.Dictionary()` to create new vim 
-                    dictionaries. `d=vim.Dictionary(arg)` is the same as 
-                    `d=vim.bindeval('{}');d.update(arg)`. Without arguments 
+                    You can use `vim.Dictionary()` to create new vim
+                    dictionaries. `d=vim.Dictionary(arg)` is the same as
+                    `d=vim.bindeval('{}');d.update(arg)`. Without arguments
                     constructs empty dictionary.
 
     Examples: >
@@ -652,15 +652,15 @@ vim.Dictionary object				*python-Diction
 
 vim.List object					*python-List*
     Sequence-like object providing access to vim |List| type.
-    Supports `.locked` attribute, see |python-.locked|. Also supports the 
+    Supports `.locked` attribute, see |python-.locked|. Also supports the
     following methods:
         Method          Description ~
         extend(item)    Add items to the list.
 
         __new__(), __new__(iterable)
-                        You can use `vim.List()` to create new vim lists. 
-                        `l=vim.List(iterable)` is the same as 
-                        `l=vim.bindeval('[]');l.extend(iterable)`. Without 
+                        You can use `vim.List()` to create new vim lists.
+                        `l=vim.List(iterable)` is the same as
+                        `l=vim.bindeval('[]');l.extend(iterable)`. Without
                         arguments constructs empty list.
     Examples: >
         l = vim.List("abc")		# Constructor, result: ['a', 'b', 'c']
@@ -674,24 +674,24 @@ vim.List object					*python-List*
         class List(vim.List):		# Subclassing
 
 vim.Function object				*python-Function*
-    Function-like object, acting like vim |Funcref| object. Accepts special 
-    keyword argument `self`, see |Dictionary-function|. You can also use 
-    `vim.Function(name)` constructor, it is the same as 
+    Function-like object, acting like vim |Funcref| object. Accepts special
+    keyword argument `self`, see |Dictionary-function|. You can also use
+    `vim.Function(name)` constructor, it is the same as
     `vim.bindeval('function(%s)'%json.dumps(name))`.
 
     Attributes (read-only):
         Attribute    Description ~
         name         Function name.
-        args         `None` or a |python-List| object with arguments.  Note 
-                     that this is a copy of the arguments list, constructed 
-                     each time you request this attribute. Modifications made 
-                     to the list will be ignored (but not to the containers 
-                     inside argument list: this is like |copy()| and not 
+        args         `None` or a |python-List| object with arguments.  Note
+                     that this is a copy of the arguments list, constructed
+                     each time you request this attribute. Modifications made
+                     to the list will be ignored (but not to the containers
+                     inside argument list: this is like |copy()| and not
                      |deepcopy()|).
-        self         `None` or a |python-Dictionary| object with self 
-                     dictionary. Note that explicit `self` keyword used when 
+        self         `None` or a |python-Dictionary| object with self
+                     dictionary. Note that explicit `self` keyword used when
                      calling resulting object overrides this attribute.
-        auto_rebind  Boolean. True if partial created from this Python object 
+        auto_rebind  Boolean. True if partial created from this Python object
                      and stored in the Vim script dictionary should be
                      automatically rebound to the dictionary it is stored in
                      when this dictionary is indexed. Exposes Vim internal
@@ -699,11 +699,11 @@ vim.Function object				*python-Function*
                      `function(dict.func,dict)` (auto_rebind=False). This
                      attribute makes no sense if `self` attribute is `None`.
 
-    Constructor additionally accepts `args`, `self` and `auto_rebind` 
-    keywords.  If `args` and/or `self` argument is given then it constructs 
-    a partial, see |function()|.  `auto_rebind` is only used when `self` 
-    argument is given, otherwise it is assumed to be `True` regardless of 
-    whether it was given or not.  If `self` is given then it defaults to 
+    Constructor additionally accepts `args`, `self` and `auto_rebind`
+    keywords.  If `args` and/or `self` argument is given then it constructs
+    a partial, see |function()|.  `auto_rebind` is only used when `self`
+    argument is given, otherwise it is assumed to be `True` regardless of
+    whether it was given or not.  If `self` is given then it defaults to
     `False`.
 
     Examples: >
@@ -726,7 +726,7 @@ vim.Function object				*python-Function*
 ==============================================================================
 8. pyeval() and py3eval() Vim functions			*python-pyeval*
 
-To facilitate bi-directional interface, you can use |pyeval()| and |py3eval()| 
+To facilitate bi-directional interface, you can use |pyeval()| and |py3eval()|
 functions to evaluate Python expressions and pass their values to Vim script.
 |pyxeval()| is also available.
 
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -1,4 +1,4 @@
-*indent.txt*    For Vim version 8.1.  Last change: 2019 Aug 01
+*indent.txt*    For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -532,7 +532,7 @@ The examples below assume a 'shiftwidth'
 <
 			*javascript-cinoptions* *javascript-indenting* *cino-J*
 	JN    Indent JavaScript object declarations correctly by not confusing
-	      them with labels.  The value 'N' is currently unused but must be 
+	      them with labels.  The value 'N' is currently unused but must be
 	      non-zero (e.g. 'J1').  If you enable this you probably also want
 	      to set |cino-j|. >
 
@@ -541,7 +541,7 @@ The examples below assume a 'shiftwidth'
 			that: this,
 			some: ok,
 		    },
-		    "bar":{ 
+		    "bar":{
 			a : 2,
 			b: "123abc",
 			x: 4,
@@ -885,7 +885,7 @@ To automatically remove '\r' characters 
 							*PHP_BracesAtCodeLevel*
 To indent braces at the same level than the code they contain: >
     :let g:PHP_BracesAtCodeLevel = 1
-    
+
 This will give the following result: >
     if ($foo)
 	{
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.1.  Last change: 2019 Nov 26
+*options.txt*	For Vim version 8.1.  Last change: 2019 Dec 06
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -496,10 +496,11 @@ 3. If you start editing a new file, and 
 
 					*modeline* *vim:* *vi:* *ex:* *E520*
 There are two forms of modelines.  The first form:
-	[text]{white}{vi:|vim:|ex:}[white]{options}
-
-[text]			any text or empty
-{white}			at least one blank character (<Space> or <Tab>)
+	[text{white}]{vi:|vim:|ex:}[white]{options}
+
+[text{white}]		empty or any text followed by at least one blank
+			character (<Space> or <Tab>); "ex:" always requires at
+			least one blank character
 {vi:|vim:|ex:}		the string "vi:", "vim:" or "ex:"
 [white]			optional white space
 {options}		a list of option settings, separated with white space
--- a/runtime/doc/os_390.txt
+++ b/runtime/doc/os_390.txt
@@ -1,4 +1,4 @@
-*os_390.txt*    For Vim version 8.1.  Last change: 2016 Feb 27
+*os_390.txt*    For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL	  by Ralf Schandl
@@ -93,7 +93,7 @@ 5. Limitations     			*OS390-limitations
 
 - No glib/gtk support.  I have not been able to successfully compile glib on
   z/OS UNIX.  This means you'll have to live without the pretty gtk toolbar.
- 
+
 Disabled at compile time:
     - Multibyte support         (|multibyte|)
     - Right-to-left mode        (|rileft|)
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -1,4 +1,4 @@
-*pattern.txt*   For Vim version 8.1.  Last change: 2019 May 05
+*pattern.txt*   For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -78,7 +78,7 @@ N			Repeat the latest "/" or "?" [count]
 				4. the first non-blank word after the cursor,
 				   in the current line
 			Only whole keywords are searched for, like with the
-			command "/\<keyword\>".  |exclusive| 
+			command "/\<keyword\>".  |exclusive|
 			'ignorecase' is used, 'smartcase' is not.
 
 							*#*
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 8.1.  Last change: 2019 Oct 22
+*quickfix.txt*  For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -313,7 +313,7 @@ processing a quickfix or location list c
 							*:cex* *:cexpr* *E777*
 :cex[pr][!] {expr}	Create a quickfix list using the result of {expr} and
 			jump to the first error.
-			If {expr} is a String, then each new-line terminated
+			If {expr} is a String, then each newline terminated
 			line in the String is processed using the global value
 			of 'errorformat' and the result is added to the
 			quickfix list.
@@ -1099,7 +1099,7 @@ id-utils) in a similar way to its compil
 			allowed with |:bufdo|.
 			An example that uses the argument list and avoids
 			errors for files without matches: >
-                                :silent argdo try 
+                                :silent argdo try
 				  \ | grepadd! something %
 				  \ | catch /E480:/
 				  \ | endtry"
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 8.1.  Last change: 2019 Nov 07
+*quickref.txt*  For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -627,7 +627,7 @@ Short explanation of each option:		*opti
 'bioskey'	  'biosk'   MS-DOS: use bios calls for input characters
 'bomb'			    prepend a Byte Order Mark to the file
 'breakat'	  'brk'     characters that may cause a line break
-'breakindent'	  'bri'     wrapped line repeats indent 
+'breakindent'	  'bri'     wrapped line repeats indent
 'breakindentopt'  'briopt'  settings for 'breakindent'
 'browsedir'	  'bsdir'   which directory to start browsing in
 'bufhidden'	  'bh'	    what to do when buffer is no longer in window
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 8.1.  Last change: 2019 Sep 20
+*repeat.txt*    For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -79,7 +79,7 @@ The default for [range] is the whole buf
 the command.  If an error message is given for a line, the command for that
 line is aborted and the global command continues with the next marked or
 unmarked line.
-								*E147* 
+								*E147*
 When the command is used recursively, it only works on one line.  Giving a
 range is then not allowed. This is useful to find all lines that match a
 pattern and do not match another pattern: >
@@ -193,7 +193,7 @@ For writing a Vim script, see chapter 41
 			Read Ex commands from {file} in each directory given
 			by 'runtimepath' and/or 'packpath'.  There is no error
 			for non-existing files.
-			
+
 			Example: >
 				:runtime syntax/c.vim
 
@@ -268,7 +268,7 @@ For writing a Vim script, see chapter 41
 						*:packl* *:packloadall*
 :packl[oadall][!]	Load all packages in the "start" directory under each
 			entry in 'packpath'.
-			
+
 			First all the directories found are added to
 			'runtimepath', then the plugins found in the
 			directories are sourced.  This allows for a plugin to
@@ -547,7 +547,7 @@ When Vim starts up, after processing you
 directories are added to 'runtimepath'.  Then all the plugins are loaded.
 See |packload-two-steps| for how these two steps can be useful.
 
-In the example Vim will find "pack/foo/start/foobar/plugin/foo.vim" and adds 
+In the example Vim will find "pack/foo/start/foobar/plugin/foo.vim" and adds
 "~/.vim/pack/foo/start/foobar" to 'runtimepath'.
 
 If the "foobar" plugin kicks in and sets the 'filetype' to "some", Vim will
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 8.1.  Last change: 2019 Nov 29
+*syntax.txt*	For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1401,26 +1401,26 @@ to your startup file.
 
 EUPHORIA	    *euphoria3.vim* *euphoria4.vim* *ft-euphoria-syntax*
 
-Two syntax highlighting files exists for Euphoria. One for Euphoria 
-version 3.1.1, which is the default syntax highlighting file, and one for 
+Two syntax highlighting files exists for Euphoria. One for Euphoria
+version 3.1.1, which is the default syntax highlighting file, and one for
 Euphoria version 4.0.5 or later.
 
-Euphoria version 3.1.1 (http://www.rapideuphoria.com/) is still necessary 
-for developing applications for the DOS platform, which Euphoria version 4 
+Euphoria version 3.1.1 (http://www.rapideuphoria.com/) is still necessary
+for developing applications for the DOS platform, which Euphoria version 4
 (http://www.openeuphoria.org/) does not support.
 
-The following file extensions are auto-detected as Euphoria file type: 
-    
+The following file extensions are auto-detected as Euphoria file type:
+
 	*.e, *.eu, *.ew, *.ex, *.exu, *.exw
 	*.E, *.EU, *.EW, *.EX, *.EXU, *.EXW
 
-To select syntax highlighting file for Euphoria, as well as for 
+To select syntax highlighting file for Euphoria, as well as for
 auto-detecting the *.e and *.E file extensions as Euphoria file type,
 add the following line to your startup file: >
 
 	:let filetype_euphoria="euphoria3"
 
-	or 
+	or
 
 	:let filetype_euphoria="euphoria4"
 
@@ -3537,26 +3537,26 @@ It will look much better with a font in 
 YAML						*yaml.vim* *ft-yaml-syntax*
 
 					*g:yaml_schema* *b:yaml_schema*
-A YAML schema is a combination of a set of tags and a mechanism for resolving 
-non-specific tags. For user this means that YAML parser may, depending on 
-plain scalar contents, treat plain scalar (which can actually be only string 
-and nothing else) as a value of the other type: null, boolean, floating-point, 
-integer. `g:yaml_schema` option determines according to which schema values 
+A YAML schema is a combination of a set of tags and a mechanism for resolving
+non-specific tags. For user this means that YAML parser may, depending on
+plain scalar contents, treat plain scalar (which can actually be only string
+and nothing else) as a value of the other type: null, boolean, floating-point,
+integer. `g:yaml_schema` option determines according to which schema values
 will be highlighted specially. Supported schemas are
 
 Schema		Description ~
 failsafe	No additional highlighting.
 json		Supports JSON-style numbers, booleans and null.
 core		Supports more number, boolean and null styles.
-pyyaml		In addition to core schema supports highlighting timestamps, 
-		but there are some differences in what is recognized as 
-		numbers and many additional boolean values not present in core 
+pyyaml		In addition to core schema supports highlighting timestamps,
+		but there are some differences in what is recognized as
+		numbers and many additional boolean values not present in core
 		schema.
 
 Default schema is `core`.
 
-Note that schemas are not actually limited to plain scalars, but this is the 
-only difference between schemas defined in YAML specification and the only 
+Note that schemas are not actually limited to plain scalars, but this is the
+only difference between schemas defined in YAML specification and the only
 difference defined in the syntax file.
 
 
@@ -3658,7 +3658,7 @@ SYNTAX ISKEYWORD SETTING				*:syn-iskeyw
 
 	clear:		Syntax specific iskeyword setting is disabled and the
 			buffer-local 'iskeyword' setting is used.
-	{option}        Set the syntax 'iskeyword' option to a new value. 
+	{option}        Set the syntax 'iskeyword' option to a new value.
 
 	Example: >
   :syntax iskeyword @,48-57,192-255,$,_
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4867,6 +4867,7 @@ InsertChange	autocmd.txt	/*InsertChange*
 InsertCharPre	autocmd.txt	/*InsertCharPre*
 InsertEnter	autocmd.txt	/*InsertEnter*
 InsertLeave	autocmd.txt	/*InsertLeave*
+Integer	eval.txt	/*Integer*
 J	change.txt	/*J*
 Japanese	mbyte.txt	/*Japanese*
 Job	eval.txt	/*Job*
--- a/runtime/doc/term.txt
+++ b/runtime/doc/term.txt
@@ -1,4 +1,4 @@
-*term.txt*      For Vim version 8.1.  Last change: 2019 Oct 27
+*term.txt*      For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -505,7 +505,7 @@ Vim has started, the escape sequences ma
 
 							*xterm-true-color*
 Vim supports using true colors in the terminal (taken from |highlight-guifg|
-and |highlight-guibg|), given that the terminal supports this. To make this 
+and |highlight-guibg|), given that the terminal supports this. To make this
 work the 'termguicolors' option needs to be set.
 See https://gist.github.com/XVilka/8346728 for a list of terminals that
 support true colors.
--- a/runtime/doc/terminal.txt
+++ b/runtime/doc/terminal.txt
@@ -1,4 +1,4 @@
-*terminal.txt*	For Vim version 8.1.  Last change: 2019 Nov 03
+*terminal.txt*	For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -72,7 +72,7 @@ CTRL-W can be used to navigate between w
 	CTRL-W :	enter an Ex command
 See |CTRL-W| for more commands.
 
-Special in the terminal window:			*t_CTRL-W_.*  *t_CTRL-W_N* 
+Special in the terminal window:			*t_CTRL-W_.*  *t_CTRL-W_N*
 	CTRL-W .	send a CTRL-W to the job in the terminal
 	CTRL-W CTRL-\	send a CTRL-\ to the job in the terminal
 	CTRL-W N	go to Terminal-Normal mode, see |Terminal-mode|
@@ -926,7 +926,7 @@ Currently supported commands:
 
 		Call a user defined function with {argument}.
 		The function is called with two arguments: the buffer number
-		of the terminal and {argument}, the decoded JSON argument. 
+		of the terminal and {argument}, the decoded JSON argument.
 		By default, the function name must start with "Tapi_" to avoid
 		accidentally calling a function not meant to be used for the
 		terminal API.  This can be changed with |term_setapi()|.
@@ -1140,7 +1140,7 @@ program window	A terminal window for the
 
 The current window is used to show the source code.  When gdb pauses the
 source file location will be displayed, if possible.  A sign is used to
-highlight the current position, using highlight group debugPC.	 
+highlight the current position, using highlight group debugPC.
 
 If the buffer in the current window is modified, another window will be opened
 to display the current gdb position.  You can use `:Winbar` to add a window
@@ -1197,7 +1197,7 @@ Put focus on the gdb window and type: >
 	run
 Vim will start running in the program window. Put focus there and type: >
 	:help gui
-Gdb will run into the ex_help breakpoint.  The source window now shows the 
+Gdb will run into the ex_help breakpoint.  The source window now shows the
 ex_cmds.c file.  A red "1 " marker will appear in the signcolumn where the
 breakpoint was set.  The line where the debugger stopped is highlighted.  You
 can now step through the program.  Let's use the mouse: click on the "Next"
--- a/runtime/doc/textprop.txt
+++ b/runtime/doc/textprop.txt
@@ -1,4 +1,4 @@
-*textprop.txt*  For Vim version 8.1.  Last change: 2019 Nov 12
+*textprop.txt*  For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -45,7 +45,7 @@ A text property has these fields:
 
 Property Types ~
 							*E971*
-A text property normally has the name of a property type, which defines 
+A text property normally has the name of a property type, which defines
 how to highlight the text.  The property type can have these entries:
 	"highlight"	name of the highlight group to use
 	"combine"	when omitted or TRUE the text property highlighting is
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.1.  Last change: 2019 Dec 05
+*todo.txt*      For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -52,7 +52,7 @@ Text properties:
 - Text properties spanning more than one line
 - See remarks at top of src/textprop.c
 
-'incsearch' with :s: 
+'incsearch' with :s:
 - :s/foo  using CTRL-G moves to another line, should not happen, or use the
   correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
 - :s@pat/tern@ doesn't include "/" in the pattern. (Takahiro Yoshihara, #3637)
@@ -137,10 +137,11 @@ May 20)
 Also put :argadd commands at the start for all buffers, so that their order
 remains equal?  Then %argdel to clean it up.  Do try this with 'hidden' set.
 Also #4994: window-local options not always restored, related to using :badd.
+Also #5326: netrw buffers are not restored.
 
 Completion mixes results from the current buffer with tags and other files.
-Happens when typing CTRL-N while still search for results.  E.g., type "b_" in
-terminal.c and then CTRL-N twice.
+Happens when typing CTRL-N while still searching for results.  E.g., type "b_"
+in terminal.c and then CTRL-N twice.
 Should do current file first and not split it up when more results are found.
 (Also #1890)
 
@@ -205,10 +206,6 @@ Patch to add MODIFIED_BY to MSVC build f
 
 Patch to support "0o" for octal numbers. (Ken Takata, #5304)
 
-":cexpr" sees a | in the expression as the start of the next command.  Should
-remove the "BAR" flag from the command and let the command search for the next
-command after parsing the expression.
-
 When getting a focus event halfway a mapping this aborts the mapping.  E.g.
 when "qq" is mapped and after the first "q" the mouse is moved outside of the
 gvim window (with focus follows mouse), then the K_FOCUSLOST key is put in the
@@ -333,7 +330,7 @@ Include a few color schemes, based on po
 http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
 http://vimawesome.com/?q=tag:color-scheme
 Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
-- monokai - Xia Crusoe (2017 Aug 4) 
+- monokai - Xia Crusoe (2017 Aug 4)
 - seoul256 - Christian Brabandt (2017 Aug 3)
 - gruvbox -  Christian Brabandt (2017 Aug 3) (simplified version from
       Lifepillar, 2018 Jan 22, #2573)
@@ -643,9 +640,9 @@ Patch to list user digraphs. (Christian 
 Patch to add digraph() function. (Christian Brabandt, 2013 Aug 22, update Aug
 24)
 
-Try out background make plugin: 
+Try out background make plugin:
   https://github.com/AndrewVos/vim-make-background
-or asyncmake: 
+or asyncmake:
   https://github.com/yegappan/asyncmake
 
 Add a ModeChanged autocommand that has an argument indicating the old and new
@@ -2511,7 +2508,7 @@ 8   Use a mechanism similar to omni comp
 Patch by Christian Brabandt, 2013 May 31.
 
 The utf class table is missing some entries:
-	0x2212, minus sign 
+	0x2212, minus sign
 	0x2217, star
 	0x2500, bar
 	0x26ab, circle
@@ -2784,7 +2781,7 @@ Ruby completion is insecure.  Can this b
 
 When 'backupskip' is set from $TEMP special characters need to be escaped.
 (patch by Grembowietz, 2007 Feb 26, not quite right)
-Another problem is that file_pat_to_reg_pat() doesn't recognize "\\", so "\\(" 
+Another problem is that file_pat_to_reg_pat() doesn't recognize "\\", so "\\("
 will be seen as a path separator plus "\(".
 
 gvim d:\path\path\(FILE).xml should not remove the \ before the (.
@@ -3951,7 +3948,7 @@ 7   Add local highlighting for each tab 
 
 Spell checking:
 -   Support more regions? Caolan McNamara argues it's needed for es_XX.
-    https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=219777    
+    https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=219777
 -   Unicode defines another quote character: 0x2019.  Use it as an equivalent
     of a single quote, thus use it as a word character like a quote and match
     with words, replacing the curly quote with a single quote.
--- a/runtime/doc/uganda.txt
+++ b/runtime/doc/uganda.txt
@@ -1,4 +1,4 @@
-*uganda.txt*    For Vim version 8.1.  Last change: 2018 May 17
+*uganda.txt*    For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -216,7 +216,7 @@ Check the ICCF web site for the latest i
 USA:		The methods mentioned below can be used.
 		Sending a check to the Nehemiah Group Outreach Society (NGOS)
 		is no longer possible, unfortunately. We are looking for
-		another way to get you an IRS tax receipt. 
+		another way to get you an IRS tax receipt.
 		For sponsoring a child contact KCF in Canada (see below). US
 		checks can be sent to them to lower banking costs.
 
--- a/runtime/doc/undo.txt
+++ b/runtime/doc/undo.txt
@@ -1,4 +1,4 @@
-*undo.txt*      For Vim version 8.1.  Last change: 2019 May 07
+*undo.txt*      For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -271,7 +271,7 @@ respectively:
 		(the magic number at the start of the file is wrong), then
 		this fails, unless the ! was added.
 		If it exists and does look like an undo file it is
-		overwritten. If there is no undo-history, nothing will be 
+		overwritten. If there is no undo-history, nothing will be
 		written.
 		Implementation detail: Overwriting happens by first deleting
 		the existing file and then creating a new file with the same
--- a/runtime/doc/usr_22.txt
+++ b/runtime/doc/usr_22.txt
@@ -1,4 +1,4 @@
-*usr_22.txt*	For Vim version 8.1.  Last change: 2019 Apr 27
+*usr_22.txt*	For Vim version 8.1.  Last change: 2019 Dec 07
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -74,9 +74,9 @@ higher.  Pressing "-" does the same thin
 You can press <F1> to get help on the things you can do in the netrw file
 browser.  This is what you get: >
 
-    9. Directory Browsing	 netrw-browse   netrw-dir   netrw-list   netrw-help 
+    9. Directory Browsing	 netrw-browse   netrw-dir   netrw-list   netrw-help
 
-    MAPS								 netrw-maps 
+    MAPS								 netrw-maps
      	 <F1>.............Help.......................................|netrw-help|
      	 <cr>.............Browsing...................................|netrw-cr|
      	 <del>............Deleting Files or Directories..............|netrw-delete|
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 8.1.  Last change: 2019 Dec 01
+*various.txt*   For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -53,7 +53,7 @@ ga			Print the ascii value of the charac
 			When the character is a non-standard ASCII character,
 			but printable according to the 'isprint' option, the
 			non-printable version is also given.
-			
+
 			When the character is larger than 127, the <M-x> form
 			is also printed.  For example:
 				<~A>  <M-^A>  129,  Hex 81,  Octal 201 ~
@@ -518,11 +518,11 @@ N  *+X11*		Unix only: can restore window
 			optional.
 :redi[r] @{a-z}>>	Append messages to register {a-z}.
 
-:redi[r] @*>		
+:redi[r] @*>
 :redi[r] @+>		Redirect messages to the selection or clipboard. For
 			backward compatibility, the ">" after the register
 			name can be omitted. See |quotestar| and |quoteplus|.
-:redi[r] @*>>		
+:redi[r] @*>>
 :redi[r] @+>>		Append messages to the selection or clipboard.
 
 :redi[r] @">		Redirect messages to the unnamed register. For
@@ -715,7 +715,7 @@ K			Run a program to lookup the keyword 
 			after the X server restarts, e.g. when running Vim for
 			long time inside screen/tmux and connecting from
 			different machines.
-			[display] should be in the format of the $DISPLAY 
+			[display] should be in the format of the $DISPLAY
 			environment variable (e.g. "localhost:10.0")
 			If [display] is	omitted, then it reinitializes the
 			connection to the X11 server using the same value as
@@ -723,7 +723,7 @@ K			Run a program to lookup the keyword 
 			If the value was never specified, then it uses the
 			value of $DISPLAY environment variable as it was when
 			Vim was started.
-			{only available when compiled with the |+clipboard| 
+			{only available when compiled with the |+clipboard|
 			feature}
 
 							*g_CTRL-A*
--- a/runtime/doc/version8.txt
+++ b/runtime/doc/version8.txt
@@ -1,4 +1,4 @@
-*version8.txt*  For Vim version 8.1.  Last change: 2019 Dec 05
+*version8.txt*  For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -40763,7 +40763,7 @@ Files:	    src/ascii.h, src/beval.h, src
             src/os_mac.h, src/os_qnx.h, src/os_unix.h, src/os_unixx.h,
             src/os_vms_conf.h, src/os_win32.h, src/proto.h, src/regexp.h,
             src/spell.h, src/structs.h, src/term.h, src/version.h, src/vimio.h
- 
+
 Patch 8.1.2367
 Problem:    Registers are not sufficiently tested.
 Solution:   Add a few more test cases. (Yegappan Lakshmanan, closes #5288)
@@ -40841,8 +40841,8 @@ Files:	    src/register.c, src/testdir/t
 Patch 8.1.2376
 Problem:    Preprocessor indents are incorrect.
 Solution:   Fix the indents. (Ken Takata, closes #5298)
-Files:	    src/drawline.c, src/gui_w32.c src/os_mswin.c src/os_win32.c
-            src/proto.h
+Files:	    src/drawline.c, src/gui_w32.c, src/os_mswin.c, src/os_win32.c,
+	    src/proto.h
 
 Patch 8.1.2377
 Problem:    GUI: when losing focus a pending operator is executed.
@@ -40931,5 +40931,76 @@ Files:	    src/libvterm/src/screen.c, sr
             src/xdiff/xemit.h, src/xdiff/xinclude.h, src/xdiff/xmacros.h,
             src/xdiff/xprepare.h, src/xdiff/xtypes.h, src/xdiff/xutils.h
 
+Patch 8.1.2390
+Problem:    Test94 is old style, fix 7.4.441 not tested.
+Solution:   Turn test94 into a new style test.  Add tests for the fix in patch
+            7.4.441. (Yegappan Lakshmanan, closes #5316)
+Files:	    src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+            src/testdir/test94.in, src/testdir/test94.ok,
+            src/testdir/test_cmdline.vim, src/testdir/test_visual.vim
+
+Patch 8.1.2391
+Problem:    Cannot build when __QNXNTO__ is defined. (Ian Wayne Larson)
+Solution:   Move the check for "qansi". (Ken Takata, closes #5317)
+Files:	    src/highlight.c
+
+Patch 8.1.2392
+Problem:    Using old C style comments.
+Solution:   Use // comments where appropriate.
+Files:	    src/nbdebug.c, src/netbeans.c, src/normal.c, src/ops.c,
+            src/option.c
+
+Patch 8.1.2393
+Problem:    Using old C style comments.
+Solution:   Use // comments where appropriate.
+Files:	    src/os_amiga.c, src/os_beos.c, src/os_mac_conv.c, src/os_mswin.c,
+            src/os_qnx.c, src/os_unix.c, src/os_vms.c, src/os_win32.c
+
+Patch 8.1.2394
+Problem:    Using old C style comments.
+Solution:   Use // comments where appropriate.
+Files:	    src/popupmenu.c, src/pty.c, src/quickfix.c, src/regexp.c,
+            src/regexp_nfa.c, src/screen.c, src/search.c, src/sha256.c,
+            src/sign.c
+
+Patch 8.1.2395
+Problem:    Using old C style comments.
+Solution:   Use // comments where appropriate.
+Files:	    src/spell.c, src/spellfile.c, src/syntax.c, src/tag.c, src/term.c,
+            src/terminal.c, src/termlib.c, src/testing.c
+
+Patch 8.1.2396
+Problem:    Using old C style comments.
+Solution:   Use // comments where appropriate.
+Files:	    src/ui.c, src/undo.c, src/uninstall.c, src/usercmd.c,
+            src/userfunc.c, src/winclip.c, src/window.c, src/xpm_w32.c
+
+Patch 8.1.2397
+Problem:    Should not define __USE_XOPEN. _XOPEN_SOURCE is not needed for
+            Android.
+Solution:   Remove __USE_XOPEN and adjust #ifdefs. (Ozaki Kiichi,
+            closes #5322)
+Files:	    src/vim.h
+
+Patch 8.1.2398
+Problem:    strptime() test fails on Japanese Mac.
+Solution:   Use %T instead of %X.
+Files:	    src/testdir/test_functions.vim
+
+Patch 8.1.2399
+Problem:    Info popup on top of cursor if it doesn't fit.
+Solution:   Hide the popup if it doesn't fit.
+Files:	    src/popupmenu.c, src/testdir/test_popupwin.vim,
+            src/testdir/dumps/Test_popupwin_infopopup_wide_1.dump
+
+Patch 8.1.2400
+Problem:    Test39 is old style.
+Solution:   Convert the test cases into new style. (Yegappan Lakshmanan,
+            closes #5324)
+Files:	    src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+            src/testdir/test39.in, src/testdir/test39.ok,
+            src/testdir/test_blockedit.vim, src/testdir/test_visual.vim
+
+
 
  vim:tw=78:ts=8:noet:ft=help:norl:
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -1,4 +1,4 @@
-*windows.txt*   For Vim version 8.1.  Last change: 2019 Oct 27
+*windows.txt*   For Vim version 8.1.  Last change: 2019 Dec 07
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -146,7 +146,7 @@ CTRL-W CTRL-S						*CTRL-W_CTRL-S*
 :[N]sp[lit] [++opt] [+cmd] [file]			*:sp* *:split*
 		Split current window in two.  The result is two viewports on
 		the same file.
-		
+
 		Make the new window N high (default is to use half the height
 		of the current window).  Reduces the current window height to
 		create room (and others, if the 'equalalways' option is set,
@@ -294,14 +294,14 @@ CTRL-W CTRL-Q						*CTRL-W_CTRL-Q*
 
 		When quitting the last window (not counting a help window),
 		exit Vim.
-		
+
 		When 'hidden' is set, and there is only one window for the
 		current buffer, it becomes hidden.  When 'hidden' is not set,
 		and there is only one window for the current buffer, and the
 		buffer was changed, the command fails.
-		
+
 		(Note: CTRL-Q does not work on all terminals).
-		
+
 		If [count] is greater than the last window number the last
 		window will be closed: >
 		    :1quit  " quit the first window
@@ -334,7 +334,7 @@ CTRL-W c					*CTRL-W_c* *:clo* *:close*
 		When the 'hidden' option is set, or when the buffer was
 		changed and the [!] is used, the buffer becomes hidden (unless
 		there is another window editing it).
-		
+
 		When there is only one window in the current tab page and
 		there is another tab page, this closes the current tab page.
 		|tab-page|.
@@ -357,12 +357,12 @@ CTRL-W CTRL-C						*CTRL-W_CTRL-C*
 		Without {count}: Quit the current window, unless it is the
 		last window on the screen.
 		If {count} is given quit the {count} window.
-		
+
 		The buffer becomes hidden (unless there is another window
 		editing it or 'bufhidden' is "unload", "delete" or "wipe").
 		If the window is the last one in the current tab page the tab
-		page is closed.  |tab-page| 
-		
+		page is closed.  |tab-page|
+
 		The value of 'hidden' is irrelevant for this command.  Changes
 		to the buffer are not written and won't get lost, so this is a
 		"safe" command.
@@ -380,10 +380,10 @@ CTRL-W o						*CTRL-W_o* *E445*
 CTRL-W CTRL-O					*CTRL-W_CTRL-O* *:on* *:only*
 		Make the current window the only one on the screen.  All other
 		windows are closed.  For {count} see |:quit| command.
-		
+
 		When the 'hidden' option is set, all buffers in closed windows
 		become hidden.
-		
+
 		When 'hidden' is not set, and the 'autowrite' option is set,
 		modified buffers are written.  Otherwise, windows that have
 		buffers that are modified are not removed, unless the [!] is
--- a/runtime/gvim.desktop
+++ b/runtime/gvim.desktop
@@ -4,6 +4,7 @@
 # Translators: This is the Application Name used in the GVim desktop file
 Name[de]=GVim
 Name[eo]=GVim
+Name[fr]=GVim
 Name[ru]=GVim
 Name[sr]=GVim
 Name[tr]=GVim
@@ -11,6 +12,7 @@ Name=GVim
 # Translators: This is the Generic Application Name used in the Vim desktop file
 GenericName[de]=Texteditor
 GenericName[eo]=Tekstoredaktilo
+GenericName[fr]=Éditeur de texte
 GenericName[ja]=テキストエディタ
 GenericName[ru]=ТекÑтовый редактор
 GenericName[sr]=ТекÑÑ‚ Едитор
@@ -19,6 +21,7 @@ GenericName=Text Editor
 # Translators: This is the comment used in the Vim desktop file
 Comment[de]=Textdateien bearbeiten
 Comment[eo]=Redakti tekstajn dosierojn
+Comment[fr]=Éditer des fichiers texte
 Comment[ja]=テキストファイルを編集ã—ã¾ã™
 Comment[ru]=Редактирование текÑтовых файлов
 Comment[sr]=Уређивање текÑÑ‚ фајлова
@@ -27,7 +30,6 @@ Comment=Edit text files
 # The translations should come from the po file. Leave them here for now, they will
 # be overwritten by the po file when generating the desktop.file!
 GenericName[da]=Teksteditor
-GenericName[fr]=Éditeur de texte
 GenericName[pl]=Edytor tekstu
 GenericName[is]=Ritvinnsluforrit
 Comment[af]=Redigeer tekslêers
@@ -50,7 +52,6 @@ Comment[et]=Redigeeri tekstifaile
 Comment[eu]=Editatu testu-fitxategiak
 Comment[fa]=ویرایش پرونده‌های متنی
 Comment[fi]=Muokkaa tekstitiedostoja
-Comment[fr]=Éditer des fichiers textes
 Comment[ga]=Eagar comhad Téacs
 Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
 Comment[he]=ערוך קבצי טקסט
@@ -100,6 +101,7 @@ Type=Application
 # Translators: Search terms to find this application. Do NOT change the semicolons! The list MUST also end with a semicolon!
 Keywords[de]=Text;Editor;
 Keywords[eo]=Teksto;redaktilo;
+Keywords[fr]=Texte;éditeur;
 Keywords[ja]=テキスト;エディタ;
 Keywords[ru]=текÑÑ‚;текÑтовый редактор;
 Keywords[sr]=ТекÑÑ‚;едитор;
@@ -108,6 +110,7 @@ Keywords=Text;editor;
 # Translators: This is the Icon file name. Do NOT translate
 Icon[de]=gvim
 Icon[eo]=gvim
+Icon[fr]=gvim
 Icon[ru]=gvim
 Icon[sr]=gvim
 Icon=gvim
--- a/runtime/syntax/gitrebase.vim
+++ b/runtime/syntax/gitrebase.vim
@@ -2,7 +2,7 @@
 " Language:	git rebase --interactive
 " Maintainer:	Tim Pope <vimNOSPAM@tpope.org>
 " Filenames:	git-rebase-todo
-" Last Change:	2019 Dec 05
+" Last Change:	2019 Dec 06
 
 if exists("b:current_syntax")
   finish
@@ -23,7 +23,7 @@ syn match   gitrebaseDrop   "\v^d%(rop)=
 syn match   gitrebaseNoop   "\v^noop>"
 syn match   gitrebaseMerge  "\v^m(erge)=>"   nextgroup=gitrebaseMergeOption,gitrebaseName skipwhite
 syn match   gitrebaseLabel  "\v^l(abel)=>"   nextgroup=gitrebaseName skipwhite
-syn match   gitrebaseReset  "\v^r(eset)=>"   nextgroup=gitrebaseName skipwhite
+syn match   gitrebaseReset  "\v^(t|reset)=>" nextgroup=gitrebaseName skipwhite
 syn match   gitrebaseSummary ".*"               contains=gitrebaseHash contained
 syn match   gitrebaseCommand ".*"                                      contained
 syn match   gitrebaseComment "^\s*#.*"             contains=gitrebaseHash
--- a/runtime/vim.desktop
+++ b/runtime/vim.desktop
@@ -4,6 +4,7 @@
 # Translators: This is the Application Name used in the Vim desktop file
 Name[de]=Vim
 Name[eo]=Vim
+Name[fr]=Vim
 Name[ru]=Vim
 Name[sr]=Vim
 Name[tr]=Vim
@@ -11,6 +12,7 @@ Name=Vim
 # Translators: This is the Generic Application Name used in the Vim desktop file
 GenericName[de]=Texteditor
 GenericName[eo]=Tekstoredaktilo
+GenericName[fr]=Éditeur de texte
 GenericName[ja]=テキストエディタ
 GenericName[ru]=ТекÑтовый редактор
 GenericName[sr]=ТекÑÑ‚ Едитор
@@ -19,6 +21,7 @@ GenericName=Text Editor
 # Translators: This is the comment used in the Vim desktop file
 Comment[de]=Textdateien bearbeiten
 Comment[eo]=Redakti tekstajn dosierojn
+Comment[fr]=Éditer des fichiers texte
 Comment[ja]=テキストファイルを編集ã—ã¾ã™
 Comment[ru]=Редактирование текÑтовых файлов
 Comment[sr]=Уређивање текÑÑ‚ фајлова
@@ -49,7 +52,6 @@ Comment[et]=Redigeeri tekstifaile
 Comment[eu]=Editatu testu-fitxategiak
 Comment[fa]=ویرایش پرونده‌های متنی
 Comment[fi]=Muokkaa tekstitiedostoja
-Comment[fr]=Édite des fichiers texte
 Comment[ga]=Eagar comhad Téacs
 Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
 Comment[he]=ערוך קבצי טקסט
@@ -99,6 +101,7 @@ Type=Application
 # Translators: Search terms to find this application. Do NOT change the semicolons! The list MUST also end with a semicolon!
 Keywords[de]=Text;Editor;
 Keywords[eo]=Teksto;redaktilo;
+Keywords[fr]=Texte;éditeur;
 Keywords[ja]=テキスト;エディタ;
 Keywords[ru]=текÑÑ‚;текÑтовый редактор;
 Keywords[sr]=ТекÑÑ‚;едитор;
@@ -107,6 +110,7 @@ Keywords=Text;editor;
 # Translators: This is the Icon file name. Do NOT translate
 Icon[de]=gvim
 Icon[eo]=gvim
+Icon[fr]=gvim
 Icon[ru]=gvim
 Icon[sr]=gvim
 Icon=gvim
--- a/src/po/fr.po
+++ b/src/po/fr.po
@@ -6,14 +6,14 @@
 #  FIRST AUTHOR  DindinX         <David.Odin@bigfoot.com>    2000.
 # SECOND AUTHOR  Adrien Beau     <version.francaise@free.fr> 2002, 2003.
 #  THIRD AUTHOR  David Blanchet  <david.blanchet@free.fr>    2006, 2008.
-# FOURTH AUTHOR  Dominique Pellé <dominique.pelle@gmail.com> 2008, 2018.
+# FOURTH AUTHOR  Dominique Pellé <dominique.pelle@gmail.com> 2008, 2019.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: Vim 8.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-02-09 21:16+0100\n"
-"PO-Revision-Date: 2018-02-10 11:40+0100\n"
+"POT-Creation-Date: 2019-12-07 11:35+0100\n"
+"PO-Revision-Date: 2019-12-07 12:32+0100\n"
 "Last-Translator: Dominique Pellé <dominique.pelle@gmail.com>\n"
 "Language-Team: French\n"
 "Language: fr\n"
@@ -22,6 +22,18 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
+msgid "E163: There is only one file to edit"
+msgstr "E163: Il n'y a qu'un seul fichier à éditer"
+
+msgid "E164: Cannot go before first file"
+msgstr "E164: Impossible d'aller avant le premier fichier"
+
+msgid "E165: Cannot go beyond last file"
+msgstr "E165: Impossible d'aller au-delà du dernier fichier"
+
+msgid "E249: window layout changed unexpectedly"
+msgstr "E249: l'arrangement de fenêtre a été changé inopinément"
+
 msgid "--Deleted--"
 msgstr "--Effacé--"
 
@@ -123,8 +135,9 @@ msgstr ""
 msgid "E931: Buffer cannot be registered"
 msgstr "E931: Le tampon ne peut pas être enregistré"
 
-msgid "E937: Attempt to delete a buffer that is in use"
-msgstr "E937: Tentative de suppression d'un tampon en cours d'utilisation"
+#, c-format
+msgid "E937: Attempt to delete a buffer that is in use: %s"
+msgstr "E937: Tentative de suppression d'un tampon en cours d'utilisation : %s"
 
 msgid "E515: No buffers were unloaded"
 msgstr "E515: Aucun tampon n'a été déchargé"
@@ -173,8 +186,7 @@ msgstr "E88: Impossible d'aller avant le
 
 #, c-format
 msgid "E89: No write since last change for buffer %d (add ! to override)"
-msgstr ""
-"E89: Le tampon %d n'a pas été enregistré (ajoutez ! pour passer outre)"
+msgstr "E89: Le tampon %d n'a pas été enregistré (ajoutez ! pour passer outre)"
 
 msgid "E948: Job still running (add ! to end the job)"
 msgstr "E948: Tâche en cours d'exécution (ajouter ! pour terminer la tâche)"
@@ -275,22 +287,163 @@ msgstr "Bas"
 msgid "Top"
 msgstr "Haut"
 
-msgid ""
-"\n"
-"# Buffer list:\n"
-msgstr ""
-"\n"
-"# Liste des tampons :\n"
-
 msgid "E382: Cannot write, 'buftype' option is set"
 msgstr "E382: Écriture impossible, l'option 'buftype' est activée"
 
 msgid "[Prompt]"
 msgstr "[Invite]"
 
+msgid "[Popup]"
+msgstr "[Contextuelle]"
+
 msgid "[Scratch]"
 msgstr "[Brouillon]"
 
+msgid "WARNING: The file has been changed since reading it!!!"
+msgstr "ALERTE : Le fichier a été modifié depuis que Vim l'a lu !"
+
+msgid "Do you really want to write to it"
+msgstr "Voulez-vous vraiment écrire dedans"
+
+msgid "E676: No matching autocommands for acwrite buffer"
+msgstr "E676: Pas d'autocommande correspondante pour le tampon acwrite"
+
+msgid "E203: Autocommands deleted or unloaded buffer to be written"
+msgstr "E203: Des autocommandes ont effacé ou déchargé le tampon à écrire"
+
+msgid "E204: Autocommand changed number of lines in unexpected way"
+msgstr ""
+"E204: L'autocommande a modifié le nombre de lignes de manière inattendue"
+
+msgid "NetBeans disallows writes of unmodified buffers"
+msgstr "NetBeans interdit l'écriture des tampons non modifiés"
+
+msgid "Partial writes disallowed for NetBeans buffers"
+msgstr "Netbeans interdit l'écriture partielle de ses tampons"
+
+msgid "is a directory"
+msgstr "est un répertoire"
+
+msgid "is not a file or writable device"
+msgstr "n'est pas un fichier ou un périphérique inscriptible"
+
+msgid "writing to device disabled with 'opendevice' option"
+msgstr "écriture vers un périphérique désactivé par l'option 'opendevice'"
+
+msgid "is read-only (add ! to override)"
+msgstr "est en lecture seule (ajoutez ! pour passer outre)"
+
+msgid "E506: Can't write to backup file (add ! to override)"
+msgstr "E506: Impossible d'écrire la copie de secours (! pour passer outre)"
+
+msgid "E507: Close error for backup file (add ! to override)"
+msgstr "E507: Erreur de fermeture de la copie de secours (! pour passer outre)"
+
+msgid "E508: Can't read file for backup (add ! to override)"
+msgstr ""
+"E508: Impossible de lire le fichier pour la copie de secours (ajoutez ! pour "
+"passer outre)"
+
+msgid "E509: Cannot create backup file (add ! to override)"
+msgstr ""
+"E509: Impossible de créer la copie de secours (ajoutez ! pour passer outre)"
+
+msgid "E510: Can't make backup file (add ! to override)"
+msgstr ""
+"E510: Impossible de générer la copie de secours (ajoutez ! pour passer outre)"
+
+msgid "E214: Can't find temp file for writing"
+msgstr "E214: Impossible de générer un fichier temporaire pour y écrire"
+
+msgid "E213: Cannot convert (add ! to write without conversion)"
+msgstr "E213: Impossible de convertir (ajoutez ! pour écrire sans convertir)"
+
+msgid "E166: Can't open linked file for writing"
+msgstr "E166: Impossible d'ouvrir le lien pour y écrire"
+
+msgid "E212: Can't open file for writing"
+msgstr "E212: Impossible d'ouvrir le fichier pour y écrire"
+
+msgid "E949: File changed while writing"
+msgstr "E949: Fichier modifié après écriture"
+
+msgid "E512: Close failed"
+msgstr "E512: Erreur de fermeture de fichier"
+
+msgid "E513: write error, conversion failed (make 'fenc' empty to override)"
+msgstr ""
+"E513: Erreur d'écriture, échec de conversion (videz 'fenc' pour passer outre)"
+
+#, c-format
+msgid ""
+"E513: write error, conversion failed in line %ld (make 'fenc' empty to "
+"override)"
+msgstr ""
+"E513: Erreur d'écriture, échec de conversion à la ligne %ld (videz 'fenc' "
+"pour passer outre)"
+
+msgid "E514: write error (file system full?)"
+msgstr "E514: erreur d'écriture (système de fichiers plein ?)"
+
+msgid " CONVERSION ERROR"
+msgstr " ERREUR DE CONVERSION"
+
+#, c-format
+msgid " in line %ld;"
+msgstr " à la ligne %ld"
+
+msgid "[NOT converted]"
+msgstr "[NON converti]"
+
+msgid "[converted]"
+msgstr "[converti]"
+
+msgid "[Device]"
+msgstr "[Périph.]"
+
+msgid "[New]"
+msgstr "[Nouveau]"
+
+msgid "[New File]"
+msgstr "[Nouveau fichier]"
+
+msgid " [a]"
+msgstr " [a]"
+
+msgid " appended"
+msgstr " ajouté(s)"
+
+msgid " [w]"
+msgstr " [e]"
+
+msgid " written"
+msgstr " écrit(s)"
+
+msgid "E205: Patchmode: can't save original file"
+msgstr "E205: Patchmode : impossible d'enregistrer le fichier original"
+
+msgid "E206: patchmode: can't touch empty original file"
+msgstr "E206: patchmode : impossible de créer le fichier original vide"
+
+msgid "E207: Can't delete backup file"
+msgstr "E207: Impossible d'effacer la copie de secours"
+
+msgid ""
+"\n"
+"WARNING: Original file may be lost or damaged\n"
+msgstr ""
+"\n"
+"ALERTE: Le fichier original est peut-être perdu ou endommagé\n"
+
+# DB - todo : un peu long...
+msgid "don't quit the editor until the file is successfully written!"
+msgstr ""
+"ne quittez pas l'éditeur tant que le fichier n'est pas correctement "
+"enregistré !"
+
+msgid "W10: Warning: Changing a readonly file"
+msgstr "W10: Alerte : Modification d'un fichier en lecture seule"
+
 msgid "E902: Cannot connect to port"
 msgstr "E902: Impossible de se connecter au port"
 
@@ -313,6 +466,9 @@ msgstr "E904: le troisième argument de \"call\" doit être une liste"
 msgid "E905: received unknown command: %s"
 msgstr "E905: commande inconnue reçue : %s"
 
+msgid "E906: not an open channel"
+msgstr "E906: pas un canal ouvert"
+
 #, c-format
 msgid "E630: %s(): write while not connected"
 msgstr "E630: %s() : écriture sans être connecté"
@@ -330,9 +486,6 @@ msgstr ""
 "E912: Impossible d'utiliser ch_evalexpr()/ch_sendexpr() avec un canal brut "
 "ou nl"
 
-msgid "E906: not an open channel"
-msgstr "E906: pas un canal ouvert"
-
 msgid "E920: _io file requires _name to be set"
 msgstr "E920: fichier _io nécessite _name"
 
@@ -343,6 +496,21 @@ msgstr "E915: tampon in_io nécessite in_buf ou in_name "
 msgid "E918: buffer must be loaded: %s"
 msgstr "E918: le tampon doit être chargé : %s"
 
+msgid "E916: not a valid job"
+msgstr "E916: tâche invalide"
+
+# DB - TODO : Pas compris le message ni comment le déclencher malgré une visite
+#      dans le code.
+msgid "tagname"
+msgstr "nom du marqueur"
+
+# DB - TODO : Idem précédent.
+msgid " kind file\n"
+msgstr " type de fichier\n"
+
+msgid "'history' option is zero"
+msgstr "l'option 'history' vaut zéro"
+
 msgid "E821: File is encrypted with unknown method"
 msgstr "E821: Le fichier est chiffré avec une méthode inconnue"
 
@@ -362,6 +530,55 @@ msgstr "Les clés ne correspondent pas !"
 msgid "[crypted]"
 msgstr "[chiffré]"
 
+# AB - La version française de la première phrase ne me satisfait pas.
+# DB - Suggestion.
+msgid "Entering Debug mode.  Type \"cont\" to continue."
+msgstr "Mode débogage activé. Tapez \"cont\" pour continuer."
+
+#, c-format
+msgid "Oldval = \"%s\""
+msgstr "Ancienneval = \"%s\""
+
+#, c-format
+msgid "Newval = \"%s\""
+msgstr "Nouvelleval = \"%s\""
+
+#, c-format
+msgid "line %ld: %s"
+msgstr "ligne %ld : %s"
+
+#, c-format
+msgid "cmd: %s"
+msgstr "cmde : %s"
+
+msgid "frame is zero"
+msgstr "le cadre de pile est zéro"
+
+#, c-format
+msgid "frame at highest level: %d"
+msgstr "cadre de pile au niveau le plus haut : %d"
+
+#, c-format
+msgid "Breakpoint in \"%s%s\" line %ld"
+msgstr "Point d'arrêt dans %s%s ligne %ld"
+
+#, c-format
+msgid "E161: Breakpoint not found: %s"
+msgstr "E161: Le point d'arrêt %s est introuvable"
+
+msgid "No breakpoints defined"
+msgstr "Aucun point d'arrêt n'est défini"
+
+# AB - Le deuxième %s est remplacé par "func" ou "file" sans que l'on puisse
+#      traduire ces mots.
+#, c-format
+msgid "%3d  %s %s  line %ld"
+msgstr "%3d  %s %s  ligne %ld"
+
+#, c-format
+msgid "%3d  expr %s"
+msgstr "%3d  expr %s"
+
 #, c-format
 msgid "E720: Missing colon in Dictionary: %s"
 msgstr "E720: Il manque ':' dans le Dictionnaire %s"
@@ -531,174 +748,17 @@ msgstr "E105: :loadkeymap ne peut être utilisé que dans un script Vim"
 msgid "E791: Empty keymap entry"
 msgstr "E791: Entrée du descripteur de clavier (keymap) vide"
 
-# AB - Remplacer "complétion" par "complètement" ? Voir l'éthymologie
-#      d'"accrétion".
-msgid " Keyword completion (^N^P)"
-msgstr " Complètement de mot-clé (^N^P)"
-
-# DB - todo : Faut-il une majuscule à "mode" ?
-msgid " ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)"
-msgstr " mode ^X (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)"
-
-msgid " Whole line completion (^L^N^P)"
-msgstr " Complètement de ligne entière (^L^N^P)"
-
-msgid " File name completion (^F^N^P)"
-msgstr " Complètement de nom de fichier (^F^N^P)"
-
-msgid " Tag completion (^]^N^P)"
-msgstr " Complètement de marqueur (^]^N^P)"
-
-# AB - J'ai dû avoir une bonne raison de faire une version française aussi
-#      différente de la version anglaise. Il me faut la retrouver.
-# DB - TODO
-msgid " Path pattern completion (^N^P)"
-msgstr " Complètement global de mot-clé (^N^P)"
-
-msgid " Definition completion (^D^N^P)"
-msgstr " Complètement de définition (^D^N^P)"
-
-# AB - Trouver une meilleure formulation que "selon le".
-# DB : proposition : "avec"
-msgid " Dictionary completion (^K^N^P)"
-msgstr " Complètement avec le dictionnaire (^K^N^P)"
-
-# AB - Trouver une meilleure formulation que "selon le".
-msgid " Thesaurus completion (^T^N^P)"
-msgstr " Complètement avec le thésaurus (^T^N^P)"
-
-# AB - La version française est meilleure que la version anglaise.
-# DB : Suggestion.
-msgid " Command-line completion (^V^N^P)"
-msgstr " Complètement de ligne de commande (^V^N^P)"
-
-msgid " User defined completion (^U^N^P)"
-msgstr " Complètement défini par l'utilisateur (^U^N^P)"
-
-# DB : On doit pouvoir trouver nettement mieux que ça.
-msgid " Omni completion (^O^N^P)"
-msgstr " Complètement selon le type de fichier (Omni) (^O^N^P)"
-
-msgid " Spelling suggestion (s^N^P)"
-msgstr " Suggestion d'orthographe (s^N^P)"
-
-msgid " Keyword Local completion (^N^P)"
-msgstr " Complètement local de mot-clé (^N/^P)"
-
-# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
-#      Il faut éviter de le faire trop long. Je pense que la version française
-#      est suffisamment compréhensible dans le contexte dans lequel elle est
-#      affichée.
-msgid "Hit end of paragraph"
-msgstr "Fin du paragraphe"
-
-msgid "E839: Completion function changed window"
-msgstr "E839: La fonction de complètement a changé la fenêtre"
-
-msgid "E840: Completion function deleted text"
-msgstr "E840: La fonction de complètement a effacé du texte"
-
-msgid "'dictionary' option is empty"
-msgstr "L'option 'dictionary' est vide"
-
-msgid "'thesaurus' option is empty"
-msgstr "L'option 'thesaurus' est vide"
-
-#, c-format
-msgid "Scanning dictionary: %s"
-msgstr "Examen du dictionnaire : %s"
-
-msgid " (insert) Scroll (^E/^Y)"
-msgstr " (insertion) Défilement (^E/^Y)"
-
-msgid " (replace) Scroll (^E/^Y)"
-msgstr " (remplacement) Défilement (^E/^Y)"
-
-#, c-format
-msgid "Scanning: %s"
-msgstr "Examen : %s"
-
-msgid "Scanning tags."
-msgstr "Examen des marqueurs."
-
-msgid "match in file"
-msgstr "correspondance dans le fichier"
-
-# AB - Cette chaîne de caractères est ajoutée en début de ligne lorsqu'une
-#      opération de complétion est répétée (typiquement avec CTRL-X CTRL-N).
-#      Que ce soit en anglais ou en français, il y a un problème de majuscules.
-#      Bien qu'insatisfaisante, cette traduction semble optimale.
-msgid " Adding"
-msgstr " Ajout"
-
-msgid "-- Searching..."
-msgstr "-- Recherche en cours..."
-
-# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
-# AB - Faut-il utiliser "origine" ou "originel" au lieu d'"original" ?
-# DB : Suggestion.
-msgid "Back at original"
-msgstr "Retour au point de départ"
-
-# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
-msgid "Word from other line"
-msgstr "Mot d'une autre ligne"
-
-# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
-msgid "The only match"
-msgstr "La seule correspondance"
-
-# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
-# AB - Faut-il remplacer "sur" par "de" ?
-# DB : Pour moi, non.
-#, c-format
-msgid "match %d of %d"
-msgstr "Correspondance %d sur %d"
-
-# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
-# DB - todo : la VO n'a pas de majuscule.
-#, c-format
-msgid "match %d"
-msgstr "Correspondance %d"
-
-msgid "E18: Unexpected characters in :let"
-msgstr "E18: Caractères inattendus avant '='"
-
-#, c-format
-msgid "E121: Undefined variable: %s"
-msgstr "E121: Variable non définie : %s"
-
 msgid "E111: Missing ']'"
 msgstr "E111: ']' manquant"
 
 msgid "E719: Cannot use [:] with a Dictionary"
 msgstr "E719: Utilisation de [:] impossible avec un Dictionnaire"
 
-#, c-format
-msgid "E734: Wrong variable type for %s="
-msgstr "E734: Type de variable erroné avec %s="
-
-#, c-format
-msgid "E461: Illegal variable name: %s"
-msgstr "E461: Nom de variable invalide : %s"
-
 msgid "E806: using Float as a String"
 msgstr "E806: Utilisation d'un Flottant comme une Chaîne"
 
-# DB - todo : trouver mieux que "destinations".
-msgid "E687: Less targets than List items"
-msgstr "E687: Moins de destinations que d'éléments dans la Liste"
-
-# DB - todo : trouver mieux que "destinations".
-msgid "E688: More targets than List items"
-msgstr "E688: Plus de destinations que d'éléments dans la Liste"
-
-msgid "Double ; in list of variables"
-msgstr "Double ; dans une liste de variables"
-
-#, c-format
-msgid "E738: Can't list variables for %s"
-msgstr "E738: Impossible de lister les variables de %s"
+msgid "E274: No white space allowed before parenthesis"
+msgstr "E274: espace interdite avant une parenthèse"
 
 msgid "E689: Can only index a List, Dictionary or Blob"
 msgstr "E689: Seul une Liste, un Dictionnaire ou un Blob peut être indexé"
@@ -712,26 +772,21 @@ msgstr "E709: [:] nécessite une Liste ou un blob"
 msgid "E972: Blob value does not have the right number of bytes"
 msgstr "E972: Le Blob n'a pas le bon nombre d'octets"
 
+msgid "E996: Cannot lock a range"
+msgstr "E996: Impossible de verrouiller une plage"
+
 msgid "E710: List value has more items than target"
 msgstr "E710: La Liste a plus d'éléments que la destination"
 
 msgid "E711: List value has not enough items"
 msgstr "E711: La Liste n'a pas assez d'éléments"
 
+msgid "E996: Cannot lock a list or dict"
+msgstr "E996: Impossible de verrouiller une liste ou un dictionnaire"
+
 msgid "E690: Missing \"in\" after :for"
 msgstr "E690: \"in\" manquant après :for"
 
-#, c-format
-msgid "E108: No such variable: \"%s\""
-msgstr "E108: Variable inexistante : %s"
-
-#, c-format
-msgid "E940: Cannot lock or unlock variable %s"
-msgstr "E940: Impossible de (dé)verrouiller la variable %s"
-
-msgid "E743: variable nested too deep for (un)lock"
-msgstr "E743: variable trop imbriquée pour la (dé)verrouiller"
-
 # AB - Je suis partagé entre la concision d'une traduction assez littérale et
 #      la lourdeur d'une traduction plus correcte.
 msgid "E109: Missing ':' after '?'"
@@ -741,11 +796,16 @@ msgid "E804: Cannot use '%' with Float"
 msgstr "E804: Impossible d'utiliser '%' avec un Flottant"
 
 msgid "E973: Blob literal should have an even number of hex characters"
-msgstr "E973: Un littéral de Blob doit avoir un nombre pair de caractères hexadécimaux"
+msgstr ""
+"E973: Un littéral de Blob doit avoir un nombre pair de caractères "
+"hexadécimaux"
 
 msgid "E110: Missing ')'"
 msgstr "E110: ')' manquant"
 
+msgid "E260: Missing name after ->"
+msgstr "E260: Nom manquant après ->"
+
 msgid "E695: Cannot index a Funcref"
 msgstr "E695: Impossible d'indexer une Funcref"
 
@@ -840,45 +900,9 @@ msgstr "E976: Utilisation d'un Blob comme une Chaîne"
 msgid "E908: using an invalid value as a String"
 msgstr "E908: Utilisation d'une valeur invalide comme une Chaîne"
 
-#, c-format
-msgid "E963: setting %s to value with wrong type"
-msgstr "E963: type incorrect lors de l'affectation de %s"
-
-#, c-format
-msgid "E795: Cannot delete variable %s"
-msgstr "E795: Impossible de supprimer la variable %s"
-
-#, c-format
-msgid "E704: Funcref variable name must start with a capital: %s"
-msgstr "E704: Le nom d'une Funcref doit commencer par une majuscule : %s"
-
-#, c-format
-msgid "E705: Variable name conflicts with existing function: %s"
-msgstr "E705: Le nom d'une variable entre en conflit avec la fonction %s"
-
-#, c-format
-msgid "E741: Value is locked: %s"
-msgstr "E741: La valeur de %s est verrouillée"
-
-msgid "Unknown"
-msgstr "Inconnu"
-
-#, c-format
-msgid "E742: Cannot change value of %s"
-msgstr "E742: Impossible de modifier la valeur de %s"
-
 msgid "E698: variable nested too deep for making a copy"
 msgstr "E698: variable trop imbriquée pour en faire une copie"
 
-# AB - La version française est capitalisée pour être en accord avec les autres
-#      commentaires enregistrés dans le fichier viminfo.
-msgid ""
-"\n"
-"# global variables:\n"
-msgstr ""
-"\n"
-"# Variables globales:\n"
-
 # DB - Plus précis ("la dernière fois") ?
 msgid ""
 "\n"
@@ -908,38 +932,15 @@ msgstr "E736: Opération invalide avec les Dictionnaires"
 msgid "E694: Invalid operation for Funcrefs"
 msgstr "E694: Opération invalide avec les Funcrefs"
 
-msgid "map() argument"
-msgstr "argument de map()"
-
-msgid "filter() argument"
-msgstr "argument de filter()"
-
-#, c-format
-msgid "E686: Argument of %s must be a List"
-msgstr "E686: L'argument de %s doit être une Liste"
-
-#, c-format
-msgid "E899: Argument of %s must be a List or Blob"
-msgstr "E899: L'argument de %s doit être une Liste ou un Blob"
-
-msgid "E928: String required"
-msgstr "E928: Chaîne requis"
-
 msgid "E808: Number or Float required"
 msgstr "E808: Nombre ou Flottant requis"
 
-msgid "add() argument"
-msgstr "argument de add()"
-
 # AB - Vu le code source, la version française est meilleure que la
 #      version anglaise. Ce message est similaire au message E102.
 #, c-format
 msgid "E158: Invalid buffer name: %s"
 msgstr "E158: Le tampon %s est introuvable"
 
-msgid "E785: complete() can only be used in Insert mode"
-msgstr "E785: complete() n'est utilisable que dans le mode Insertion"
-
 # AB - Texte par défaut du bouton de la boîte de dialogue affichée par la
 #      fonction confirm().
 msgid "&Ok"
@@ -949,12 +950,6 @@ msgid "E980: lowlevel input not supporte
 msgstr "E980: entrée de bas niveau non supportée"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld ligne : "
-msgstr[1] "+-%s%3ld lignes : "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: Fonction inconnue : %s"
 
@@ -977,34 +972,18 @@ msgstr ""
 msgid "called inputrestore() more often than inputsave()"
 msgstr "inputrestore() a été appelé plus de fois qu'inputsave()"
 
-msgid "insert() argument"
-msgstr "argument de insert()"
-
 msgid "E786: Range not allowed"
 msgstr "E786: Les plages ne sont pas autorisées"
 
-msgid "E916: not a valid job"
-msgstr "E916: tâche invalide"
-
 msgid "E701: Invalid type for len()"
 msgstr "E701: Type invalide avec len()"
 
-msgid "E957: Invalid window number"
-msgstr "E957: numéro de fenêtre invalide"
-
-#, c-format
-msgid "E798: ID is reserved for \":match\": %d"
-msgstr "E798: ID est réservé pour \":match\": %d"
-
 msgid "E726: Stride is zero"
 msgstr "E726: Le pas est nul"
 
 msgid "E727: Start past end"
 msgstr "E727: Début au-delà de la fin"
 
-msgid "<empty>"
-msgstr "<vide>"
-
 msgid "E240: No connection to the X server"
 msgstr "E240: Pas de connexion au serveur X"
 
@@ -1022,39 +1001,14 @@ msgstr "E941: serveur déjà démarré"
 msgid "E942: +clientserver feature not available"
 msgstr "E942: La fonctionnalité +clientserver n'est pas disponible"
 
-msgid "remove() argument"
-msgstr "argument de remove()"
-
-msgid "E655: Too many symbolic links (cycle?)"
-msgstr "E655: Trop de liens symboliques (cycle ?)"
-
-msgid "reverse() argument"
-msgstr "argument de reverse()"
-
 # AB - La version française est meilleure que la version anglaise.
 msgid "E258: Unable to send to client"
 msgstr "E258: La réponse n'a pas pu être envoyée au client"
 
 #, c-format
-msgid "E927: Invalid action: '%s'"
-msgstr "E927: Action invalide : « %s »"
-
-#, c-format
 msgid "E962: Invalid action: '%s'"
 msgstr "E962: Action invalide : « %s »"
 
-msgid "sort() argument"
-msgstr "argument de sort()"
-
-msgid "uniq() argument"
-msgstr "argument de uniq()"
-
-msgid "E702: Sort compare function failed"
-msgstr "E702: La fonction de comparaison de sort() a échoué"
-
-msgid "E882: Uniq compare function failed"
-msgstr "E882: La fonction de comparaison de uniq() a échoué"
-
 msgid "(Invalid)"
 msgstr "(Invalide)"
 
@@ -1062,8 +1016,86 @@ msgstr "(Invalide)"
 msgid "E935: invalid submatch number: %d"
 msgstr "E935: numéro de submatch invalide : %d"
 
-msgid "E677: Error writing temp file"
-msgstr "E677: Erreur lors de l'écriture du fichier temporaire"
+msgid "E18: Unexpected characters in :let"
+msgstr "E18: Caractères inattendus avant '='"
+
+msgid "E991: cannot use =<< here"
+msgstr "E991: Impossible d'utiliser =<< ici"
+
+msgid "E221: Marker cannot start with lower case letter"
+msgstr "E221: Marqueur ne peut pas commencer par une lettre minuscule"
+
+msgid "E172: Missing marker"
+msgstr "E172: Marqueur manquant"
+
+#, c-format
+msgid "E990: Missing end marker '%s'"
+msgstr "E990: Marqueur de fin manquant « %s »"
+
+msgid "E985: .= is not supported with script version 2"
+msgstr "E985: .= non supporté avec la version de script 2"
+
+# DB - todo : trouver mieux que "destinations".
+msgid "E687: Less targets than List items"
+msgstr "E687: Moins de destinations que d'éléments dans la Liste"
+
+# DB - todo : trouver mieux que "destinations".
+msgid "E688: More targets than List items"
+msgstr "E688: Plus de destinations que d'éléments dans la Liste"
+
+msgid "Double ; in list of variables"
+msgstr "Double ; dans une liste de variables"
+
+#, c-format
+msgid "E738: Can't list variables for %s"
+msgstr "E738: Impossible de lister les variables de %s"
+
+msgid "E996: Cannot lock an environment variable"
+msgstr "E996: Impossible de verrouiller une variable d'environnement"
+
+msgid "E996: Cannot lock an option"
+msgstr "E996: Impossible de verrouiller une option"
+
+msgid "E996: Cannot lock a register"
+msgstr "E996: Impossible de verrouiller un registre"
+
+#, c-format
+msgid "E108: No such variable: \"%s\""
+msgstr "E108: Variable inexistante : %s"
+
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: Impossible de (dé)verrouiller la variable %s"
+
+msgid "E743: variable nested too deep for (un)lock"
+msgstr "E743: variable trop imbriquée pour la (dé)verrouiller"
+
+#, c-format
+msgid "E963: setting %s to value with wrong type"
+msgstr "E963: type incorrect lors de l'affectation de %s"
+
+#, c-format
+msgid "E795: Cannot delete variable %s"
+msgstr "E795: Impossible de supprimer la variable %s"
+
+#, c-format
+msgid "E704: Funcref variable name must start with a capital: %s"
+msgstr "E704: Le nom d'une Funcref doit commencer par une majuscule : %s"
+
+#, c-format
+msgid "E705: Variable name conflicts with existing function: %s"
+msgstr "E705: Le nom d'une variable entre en conflit avec la fonction %s"
+
+#, c-format
+msgid "E741: Value is locked: %s"
+msgstr "E741: La valeur de %s est verrouillée"
+
+msgid "Unknown"
+msgstr "Inconnu"
+
+#, c-format
+msgid "E742: Cannot change value of %s"
+msgstr "E742: Impossible de modifier la valeur de %s"
 
 msgid "E921: Invalid callback argument"
 msgstr "E921: Argument de callback invalide"
@@ -1121,98 +1153,6 @@ msgstr ""
 msgid "[No write since last change]\n"
 msgstr "[Attention : tout n'est pas enregistré]\n"
 
-# AB - Le numéro et le message d'erreur (%s ci-dessous) et le "numéro" de ligne
-#      sont des chaînes de caractères dont le contenu est à la discrétion de
-#      l'appelant de la fonction viminfo_error().
-#, c-format
-msgid "%sviminfo: %s in line: "
-msgstr "%sviminfo : %s à la ligne "
-
-# AB - La version française est meilleure que la version anglaise.
-msgid "E136: viminfo: Too many errors, skipping rest of file"
-msgstr ""
-"E136: Il y a trop d'erreurs ; interruption de la lecture du fichier viminfo"
-
-# AB - Ce texte fait partie d'un message de débogage.
-# DB - ... dont les valeurs possibles sont les messages
-#      qui suivent.
-#, c-format
-msgid "Reading viminfo file \"%s\"%s%s%s"
-msgstr "Lecture du fichier viminfo \"%s\"%s%s%s"
-
-# AB - Ce texte fait partie d'un message de débogage.
-# DB - Voir ci-dessus.
-msgid " info"
-msgstr " info"
-
-# AB - Ce texte fait partie d'un message de débogage.
-# DB - Voir ci-dessus.
-msgid " marks"
-msgstr " marques"
-
-msgid " oldfiles"
-msgstr " vieux fichiers"
-
-# AB - Ce texte fait partie d'un message de débogage.
-# DB - Voir ci-dessus.
-msgid " FAILED"
-msgstr " ÉCHEC"
-
-# AB - J'espère que la plupart des utilisateurs aura l'idée d'aller vérifier
-#      ses droits d'accès.
-# AB - Le mot "viminfo" a été retiré pour que le message ne dépasse pas 80
-#      caractères dans le cas courant où %s = /home/12345678/.viminfo
-#, c-format
-msgid "E137: Viminfo file is not writable: %s"
-msgstr "E137: L'écriture dans le fichier %s est interdite"
-
-#, c-format
-msgid "E929: Too many viminfo temp files, like %s!"
-msgstr "E929: Trop de fichiers temporaires viminfo, comme %s!"
-
-# AB - Le point d'exclamation est superflu.
-# AB - Le mot "viminfo" a été retiré pour que le message ne dépasse pas 80
-#      caractères dans le cas courant où %s = /home/12345678/.viminfo
-#, c-format
-msgid "E138: Can't write viminfo file %s!"
-msgstr "E138: Impossible d'écrire le fichier %s"
-
-# AB - Ce texte est un message de débogage.
-#, c-format
-msgid "Writing viminfo file \"%s\""
-msgstr "Écriture du fichier viminfo \"%s\""
-
-#, c-format
-msgid "E886: Can't rename viminfo file to %s!"
-msgstr "E886: Impossible de renommer viminfo en %s"
-
-#, c-format
-msgid "# This viminfo file was generated by Vim %s.\n"
-msgstr "# Ce fichier viminfo a été généré par Vim %s.\n"
-
-# AB - Les deux versions, bien que différentes, se valent.
-msgid ""
-"# You may edit it if you're careful!\n"
-"\n"
-msgstr ""
-"# Vous pouvez l'éditer, mais soyez prudent.\n"
-"\n"
-
-msgid "# Value of 'encoding' when this file was written\n"
-msgstr "# 'encoding' dans lequel ce fichier a été écrit\n"
-
-# AB - Ce texte est passé en argument à la fonction viminfo_error().
-# AB - "illégal" est un terme trop fort à mon goût.
-msgid "Illegal starting char"
-msgstr "Caractère initial non valide"
-
-msgid ""
-"\n"
-"# Bar lines, copied verbatim:\n"
-msgstr ""
-"\n"
-"# Lignes commençant par |, copiées littéralement :\n"
-
 # AB - Ceci est un titre de boîte de dialogue. Vérifier que la version
 #      française est correcte pour les trois références ; j'ai un doute quant
 #      à la troisième.
@@ -1348,22 +1288,7 @@ msgstr "Motif trouvé dans toutes les lignes : %s"
 
 #, c-format
 msgid "Pattern not found: %s"
-msgstr "Motif introuvable: %s"
-
-# AB - Ne pas traduire le dollar.
-# AB - Ce message n'est volontairement pas traduit. En effet, il fait partie
-#      d'un groupe de trois messages dans viminfo, dont deux ne sont pas soumis
-#      à internationalisation. J'attends que les deux autres messages soient
-#      traduisibles pour traduire celui-ci.
-# DB - TODO : Qu'en est-il à présent ?
-msgid ""
-"\n"
-"# Last Substitute String:\n"
-"$"
-msgstr ""
-"\n"
-"# Dernières chaînes de substitution :\n"
-"$"
+msgstr "Motif introuvable : %s"
 
 # This message should *so* be E42!
 msgid "E478: Don't panic!"
@@ -1413,58 +1338,6 @@ msgstr "E150: %s n'est pas un répertoire"
 msgid "No old files"
 msgstr "Aucun vieux fichier"
 
-# AB - La version française de la première phrase ne me satisfait pas.
-# DB - Suggestion.
-msgid "Entering Debug mode.  Type \"cont\" to continue."
-msgstr "Mode débogage activé. Tapez \"cont\" pour continuer."
-
-#, c-format
-msgid "Oldval = \"%s\""
-msgstr "Ancienneval = \"%s\""
-
-#, c-format
-msgid "Newval = \"%s\""
-msgstr "Nouvelleval = \"%s\""
-
-#, c-format
-msgid "line %ld: %s"
-msgstr "ligne %ld : %s"
-
-#, c-format
-msgid "cmd: %s"
-msgstr "cmde : %s"
-
-msgid "frame is zero"
-msgstr "le cadre de pile est zéro"
-
-#, c-format
-msgid "frame at highest level: %d"
-msgstr "cadre de pile au niveau le plus haut : %d"
-
-#, c-format
-msgid "Breakpoint in \"%s%s\" line %ld"
-msgstr "Point d'arrêt dans %s%s ligne %ld"
-
-#, c-format
-msgid "E161: Breakpoint not found: %s"
-msgstr "E161: Le point d'arrêt %s est introuvable"
-
-msgid "No breakpoints defined"
-msgstr "Aucun point d'arrêt n'est défini"
-
-# AB - Le deuxième %s est remplacé par "func" ou "file" sans que l'on puisse
-#      traduire ces mots.
-#, c-format
-msgid "%3d  %s %s  line %ld"
-msgstr "%3d  %s %s  ligne %ld"
-
-#, c-format
-msgid "%3d  expr %s"
-msgstr "%3d  expr %s"
-
-msgid "E750: First use \":profile start {fname}\""
-msgstr "E750: Utilisez d'abord \":profile start {nomfichier}\""
-
 # AB - "changes to" est redondant et a été omis de la version française.
 #, c-format
 msgid "Save changes to \"%s\"?"
@@ -1484,32 +1357,11 @@ msgid "Warning: Entered other buffer une
 msgstr ""
 "Alerte : Entrée inattendue dans un autre tampon (vérifier autocommandes)"
 
-msgid "E163: There is only one file to edit"
-msgstr "E163: Il n'y a qu'un seul fichier à éditer"
-
-msgid "E164: Cannot go before first file"
-msgstr "E164: Impossible d'aller avant le premier fichier"
-
-msgid "E165: Cannot go beyond last file"
-msgstr "E165: Impossible d'aller au-delà du dernier fichier"
-
 #, c-format
 msgid "E666: compiler not supported: %s"
 msgstr "E666: Compilateur %s non supporté"
 
 #, c-format
-msgid "Searching for \"%s\" in \"%s\""
-msgstr "Recherche de \"%s\" dans \"%s\""
-
-#, c-format
-msgid "Searching for \"%s\""
-msgstr "Recherche de \"%s\""
-
-#, c-format
-msgid "not found in '%s': \"%s\""
-msgstr "introuvable dans '%s' : \"%s\""
-
-#, c-format
 msgid "W20: Required python version 2.x not supported, ignoring file: %s"
 msgstr "W20: Python version 2.x non supporté, fichier %s ignoré"
 
@@ -1517,62 +1369,6 @@ msgstr "W20: Python version 2.x non supporté, fichier %s ignoré"
 msgid "W21: Required python version 3.x not supported, ignoring file: %s"
 msgstr "W21: Python 3.x non supporté, fichier %s ignoré"
 
-msgid "Source Vim script"
-msgstr "Sourcer un script - Vim"
-
-#, c-format
-msgid "Cannot source a directory: \"%s\""
-msgstr "Impossible de sourcer un répertoire : \"%s\""
-
-#, c-format
-msgid "could not source \"%s\""
-msgstr "impossible de sourcer \"%s\""
-
-#, c-format
-msgid "line %ld: could not source \"%s\""
-msgstr "ligne %ld : impossible de sourcer \"%s\""
-
-#, c-format
-msgid "sourcing \"%s\""
-msgstr "sourcement \"%s\""
-
-#, c-format
-msgid "line %ld: sourcing \"%s\""
-msgstr "ligne %ld : sourcement de \"%s\""
-
-#, c-format
-msgid "finished sourcing %s"
-msgstr "fin du sourcement de %s"
-
-# AB - Ce texte fait partie d'un message de débogage.
-#, c-format
-msgid "continuing in %s"
-msgstr "de retour dans %s"
-
-msgid "modeline"
-msgstr "ligne de mode"
-
-msgid "--cmd argument"
-msgstr "argument --cmd"
-
-msgid "-c argument"
-msgstr "argument -c"
-
-msgid "environment variable"
-msgstr "variable d'environnement"
-
-msgid "error handler"
-msgstr "gestionnaire d'erreur"
-
-msgid "W15: Warning: Wrong line separator, ^M may be missing"
-msgstr "W15: Alerte : Séparateur de ligne erroné, ^M possiblement manquant"
-
-msgid "E167: :scriptencoding used outside of a sourced file"
-msgstr "E167: :scriptencoding utilisé en dehors d'un fichier sourcé"
-
-msgid "E168: :finish used outside of a sourced file"
-msgstr "E168: :finish utilisé en dehors d'un fichier sourcé"
-
 # DB - Le premier %s est, au choix : "time ", "ctype " ou "messages ",
 #      sans qu'il soit possible de les traduire.
 #, c-format
@@ -1589,6 +1385,10 @@ msgstr "Mode Ex activé. Tapez \"visual\" pour passer en mode Normal."
 msgid "E501: At end-of-file"
 msgstr "E501: À la fin du fichier"
 
+#, c-format
+msgid "Executing: %s"
+msgstr "Exécution de : %s"
+
 msgid "E169: Command too recursive"
 msgstr "E169: Commande trop récursive"
 
@@ -1620,6 +1420,11 @@ msgstr "La plage spécifiée est inversée, OK pour l'inverser"
 msgid "E494: Use w or w>>"
 msgstr "E494: Utilisez w ou w>>"
 
+msgid ""
+"INTERNAL: Cannot use EX_DFLALL with ADDR_NONE, ADDR_UNSIGNED or ADDR_QUICKFIX"
+msgstr ""
+"INTERNE: Impossible d'utiliser EX_DFLALL avec ADDR_NONE, ADDR_UNSIGNED ou ADDR_QUICKFIX"
+
 msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
 msgstr ""
 "E943: La table des commandes doit être mise à jour, lancez 'make cmdidxs'"
@@ -1639,70 +1444,6 @@ msgid_plural "E173: %d more files to edi
 msgstr[0] "E173: encore %d fichier à éditer"
 msgstr[1] "E173: encore %d fichiers à éditer"
 
-#, c-format
-msgid "E174: Command already exists: add ! to replace it: %s"
-msgstr "E174: La commande existe déjà : ajoutez ! pour la redéfinir : %s"
-
-msgid ""
-"\n"
-"    Name        Args       Address   Complete  Definition"
-msgstr ""
-"\n"
-"    Nom         Args       Adresse   Complet.  Définition"
-
-msgid "No user-defined commands found"
-msgstr "Aucune commande définie par l'utilisateur trouvée"
-
-msgid "E175: No attribute specified"
-msgstr "E175: Pas d'attribut spécifié"
-
-msgid "E176: Invalid number of arguments"
-msgstr "E176: Nombre d'arguments invalide"
-
-msgid "E177: Count cannot be specified twice"
-msgstr "E177: Le quantificateur ne peut être spécifié deux fois"
-
-msgid "E178: Invalid default value for count"
-msgstr "E178: La valeur par défaut du quantificateur est invalide"
-
-msgid "E179: argument required for -complete"
-msgstr "E179: argument requis avec -complete"
-
-msgid "E179: argument required for -addr"
-msgstr "E179: argument requis avec -addr"
-
-#, c-format
-msgid "E181: Invalid attribute: %s"
-msgstr "E181: Attribut invalide : %s"
-
-msgid "E182: Invalid command name"
-msgstr "E182: Nom de commande invalide"
-
-msgid "E183: User defined commands must start with an uppercase letter"
-msgstr "E183: Les commandes utilisateur doivent commencer par une majuscule"
-
-msgid "E841: Reserved name, cannot be used for user defined command"
-msgstr ""
-"E841: Nom réservé, ne peux pas être utilisé pour une commande utilisateur"
-
-#, c-format
-msgid "E184: No such user-defined command: %s"
-msgstr "E184: Aucune commande %s définie par l'utilisateur"
-
-#, c-format
-msgid "E180: Invalid address type value: %s"
-msgstr "E180: Valeur de type d'adresse invalide : %s"
-
-#, c-format
-msgid "E180: Invalid complete value: %s"
-msgstr "E180: Valeur invalide pour \"-complete=\" : %s"
-
-msgid "E468: Completion argument only allowed for custom completion"
-msgstr "E468: Seul le complètement personnalisé accepte un argument"
-
-msgid "E467: Custom completion requires a function argument"
-msgstr "E467: Le complètement personnalisé nécessite une fonction en argument"
-
 msgid "unknown"
 msgstr "inconnu"
 
@@ -1767,15 +1508,6 @@ msgstr "E930: Impossible d'utiliser :red
 msgid "Save Redirection"
 msgstr "Enregistrer la redirection"
 
-msgid "Save View"
-msgstr "Enregistrer la vue - Vim"
-
-msgid "Save Session"
-msgstr "Enregistrer la session - Vim"
-
-msgid "Save Setup"
-msgstr "Enregistrer les réglages - Vim"
-
 #, c-format
 msgid "E739: Cannot create directory: %s"
 msgstr "E739: Impossible de créer le répertoire \"%s\""
@@ -1825,9 +1557,6 @@ msgstr "E499: Nom de fichier vide pour '
 msgid "E500: Evaluates to an empty string"
 msgstr "E500: Évalué en une chaîne vide"
 
-msgid "E195: Cannot open viminfo file for reading"
-msgstr "E195: Impossible d'ouvrir le viminfo en lecture"
-
 # AB - Si les parenthèses posent problème, il faudra remettre les guillemets
 #      ci-dessus.
 msgid "Untitled"
@@ -1945,46 +1674,6 @@ msgid "E811: Not allowed to change buffe
 msgstr ""
 "E811: Changement des informations du tampon n'est pas permise maintenant"
 
-# DB - TODO : Pas compris le message ni comment le déclencher malgré une visite
-#      dans le code.
-msgid "tagname"
-msgstr "nom du marqueur"
-
-# DB - TODO : Idem précédent.
-msgid " kind file\n"
-msgstr " type de fichier\n"
-
-msgid "'history' option is zero"
-msgstr "l'option 'history' vaut zéro"
-
-# DB - Messages et les suivants : fichier .viminfo.
-#      Pas de majuscule nécessaire pour les messages d'après.
-#, c-format
-msgid ""
-"\n"
-"# %s History (newest to oldest):\n"
-msgstr ""
-"\n"
-"# Historique %s (chronologie décroissante) :\n"
-
-msgid "Command Line"
-msgstr "ligne de commande"
-
-msgid "Search String"
-msgstr "chaîne de recherche"
-
-msgid "Expression"
-msgstr "expression"
-
-msgid "Input Line"
-msgstr "ligne de saisie"
-
-msgid "Debug Line"
-msgstr "Ligne de débogage"
-
-msgid "E198: cmd_pchar beyond the command length"
-msgstr "E198: cmd_pchar au-delà de la longueur de la commande"
-
 msgid "E199: Active window or buffer deleted"
 msgstr "E199: Fenêtre ou tampon actif effacé"
 
@@ -1994,18 +1683,12 @@ msgstr "E812: Des autocommandes ont changé le tampon ou le nom du tampon"
 msgid "Illegal file name"
 msgstr "Nom de fichier invalide"
 
-msgid "is a directory"
-msgstr "est un répertoire"
-
 msgid "is not a file"
 msgstr "n'est pas un fichier"
 
 msgid "is a device (disabled with 'opendevice' option)"
 msgstr "est un périphérique (désactivé par l'option 'opendevice')"
 
-msgid "[New File]"
-msgstr "[Nouveau fichier]"
-
 msgid "[New DIRECTORY]"
 msgstr "[Nouveau RÉPERTOIRE]"
 
@@ -2047,12 +1730,6 @@ msgstr "[CR manquant]"
 msgid "[long lines split]"
 msgstr "[lignes longues coupées]"
 
-msgid "[NOT converted]"
-msgstr "[NON converti]"
-
-msgid "[converted]"
-msgstr "[converti]"
-
 #, c-format
 msgid "[CONVERSION ERROR in line %ld]"
 msgstr "[ERREUR DE CONVERSION à la ligne %ld]"
@@ -2074,130 +1751,6 @@ msgstr "La conversion avec 'charconvert' a échoué"
 msgid "can't read output of 'charconvert'"
 msgstr "Impossible de lire la sortie de 'charconvert'"
 
-msgid "E676: No matching autocommands for acwrite buffer"
-msgstr "E676: Pas d'autocommande correspondante pour le tampon acwrite"
-
-msgid "E203: Autocommands deleted or unloaded buffer to be written"
-msgstr "E203: Des autocommandes ont effacé ou déchargé le tampon à écrire"
-
-msgid "E204: Autocommand changed number of lines in unexpected way"
-msgstr ""
-"E204: L'autocommande a modifié le nombre de lignes de manière inattendue"
-
-msgid "NetBeans disallows writes of unmodified buffers"
-msgstr "NetBeans interdit l'écriture des tampons non modifiés"
-
-msgid "Partial writes disallowed for NetBeans buffers"
-msgstr "Netbeans interdit l'écriture partielle de ses tampons"
-
-msgid "is not a file or writable device"
-msgstr "n'est pas un fichier ou un périphérique inscriptible"
-
-msgid "writing to device disabled with 'opendevice' option"
-msgstr "écriture vers un périphérique désactivé par l'option 'opendevice'"
-
-msgid "is read-only (add ! to override)"
-msgstr "est en lecture seule (ajoutez ! pour passer outre)"
-
-msgid "E506: Can't write to backup file (add ! to override)"
-msgstr "E506: Impossible d'écrire la copie de secours (! pour passer outre)"
-
-msgid "E507: Close error for backup file (add ! to override)"
-msgstr "E507: Erreur de fermeture de la copie de secours (! pour passer outre)"
-
-msgid "E508: Can't read file for backup (add ! to override)"
-msgstr ""
-"E508: Impossible de lire le fichier pour la copie de secours (ajoutez ! pour "
-"passer outre)"
-
-msgid "E509: Cannot create backup file (add ! to override)"
-msgstr ""
-"E509: Impossible de créer la copie de secours (ajoutez ! pour passer outre)"
-
-msgid "E510: Can't make backup file (add ! to override)"
-msgstr ""
-"E510: Impossible de générer la copie de secours (ajoutez ! pour passer outre)"
-
-msgid "E214: Can't find temp file for writing"
-msgstr "E214: Impossible de générer un fichier temporaire pour y écrire"
-
-msgid "E213: Cannot convert (add ! to write without conversion)"
-msgstr "E213: Impossible de convertir (ajoutez ! pour écrire sans convertir)"
-
-msgid "E166: Can't open linked file for writing"
-msgstr "E166: Impossible d'ouvrir le lien pour y écrire"
-
-msgid "E212: Can't open file for writing"
-msgstr "E212: Impossible d'ouvrir le fichier pour y écrire"
-
-msgid "E949: File changed while writing"
-msgstr "E949: Fichier modifié après écriture"
-
-msgid "E512: Close failed"
-msgstr "E512: Erreur de fermeture de fichier"
-
-msgid "E513: write error, conversion failed (make 'fenc' empty to override)"
-msgstr ""
-"E513: Erreur d'écriture, échec de conversion (videz 'fenc' pour passer outre)"
-
-#, c-format
-msgid ""
-"E513: write error, conversion failed in line %ld (make 'fenc' empty to "
-"override)"
-msgstr ""
-"E513: Erreur d'écriture, échec de conversion à la ligne %ld (videz 'fenc' "
-"pour passer outre)"
-
-msgid "E514: write error (file system full?)"
-msgstr "E514: erreur d'écriture (système de fichiers plein ?)"
-
-msgid " CONVERSION ERROR"
-msgstr " ERREUR DE CONVERSION"
-
-#, c-format
-msgid " in line %ld;"
-msgstr " à la ligne %ld"
-
-msgid "[Device]"
-msgstr "[Périph.]"
-
-msgid "[New]"
-msgstr "[Nouveau]"
-
-msgid " [a]"
-msgstr " [a]"
-
-msgid " appended"
-msgstr " ajouté(s)"
-
-msgid " [w]"
-msgstr " [e]"
-
-msgid " written"
-msgstr " écrit(s)"
-
-msgid "E205: Patchmode: can't save original file"
-msgstr "E205: Patchmode : impossible d'enregistrer le fichier original"
-
-msgid "E206: patchmode: can't touch empty original file"
-msgstr "E206: patchmode : impossible de créer le fichier original vide"
-
-msgid "E207: Can't delete backup file"
-msgstr "E207: Impossible d'effacer la copie de secours"
-
-msgid ""
-"\n"
-"WARNING: Original file may be lost or damaged\n"
-msgstr ""
-"\n"
-"ALERTE: Le fichier original est peut-être perdu ou endommagé\n"
-
-# DB - todo : un peu long...
-msgid "don't quit the editor until the file is successfully written!"
-msgstr ""
-"ne quittez pas l'éditeur tant que le fichier n'est pas correctement "
-"enregistré !"
-
 msgid "[dos]"
 msgstr "[dos]"
 
@@ -2234,12 +1787,6 @@ msgstr "[noeol]"
 msgid "[Incomplete last line]"
 msgstr "[Dernière ligne incomplète]"
 
-msgid "WARNING: The file has been changed since reading it!!!"
-msgstr "ALERTE : Le fichier a été modifié depuis que Vim l'a lu !"
-
-msgid "Do you really want to write to it"
-msgstr "Voulez-vous vraiment écrire dedans"
-
 #, c-format
 msgid "E208: Error writing to \"%s\""
 msgstr "E208: Erreur lors de l'écriture dans \"%s\""
@@ -2314,6 +1861,60 @@ msgstr "E219: { manquant."
 msgid "E220: Missing }."
 msgstr "E220: } manquant."
 
+msgid "<empty>"
+msgstr "<vide>"
+
+msgid "E655: Too many symbolic links (cycle?)"
+msgstr "E655: Trop de liens symboliques (cycle ?)"
+
+# DB : Les trois messages qui suivent sont des titres de boîtes
+#      de dialogue par défaut.
+msgid "Select Directory dialog"
+msgstr "Sélecteur de répertoire"
+
+msgid "Save File dialog"
+msgstr "Enregistrer un fichier"
+
+msgid "Open File dialog"
+msgstr "Ouvrir un fichier"
+
+msgid "E338: Sorry, no file browser in console mode"
+msgstr "E338: Désolé, pas de sélecteur de fichiers en mode console"
+
+msgid "E854: path too long for completion"
+msgstr "E854: chemin trop long pour complètement"
+
+#, c-format
+msgid ""
+"E343: Invalid path: '**[number]' must be at the end of the path or be "
+"followed by '%s'."
+msgstr ""
+"E343: Chemin invalide : '**[nombre]' doit être à la fin du chemin ou être "
+"suivi de '%s'."
+
+#, c-format
+msgid "E344: Can't find directory \"%s\" in cdpath"
+msgstr "E344: Répertoire \"%s\" introuvable dans 'cdpath'"
+
+#, c-format
+msgid "E345: Can't find file \"%s\" in path"
+msgstr "E345: Fichier \"%s\" introuvable dans 'path'"
+
+#, c-format
+msgid "E346: No more directory \"%s\" found in cdpath"
+msgstr "E346: Plus de répertoire \"%s\" dans 'cdpath'"
+
+#, c-format
+msgid "E347: No more file \"%s\" found in path"
+msgstr "E347: Plus de fichier \"%s\" dans 'path'"
+
+msgid "E446: No file name under cursor"
+msgstr "E446: Aucun nom de fichier sous le curseur"
+
+#, c-format
+msgid "E447: Can't find file \"%s\" in path"
+msgstr "E447: Le fichier \"%s\" est introuvable dans 'path'"
+
 msgid "E490: No fold found"
 msgstr "E490: Aucun repli trouvé"
 
@@ -2329,37 +1930,18 @@ msgid_plural "+--%3ld lines folded "
 msgstr[0] "+--%3ld ligne déplacée "
 msgstr[1] "+--%3ld lignes déplacées "
 
+#, c-format
+msgid "+-%s%3ld line: "
+msgid_plural "+-%s%3ld lines: "
+msgstr[0] "+-%s%3ld ligne : "
+msgstr[1] "+-%s%3ld lignes : "
+
 msgid "E222: Add to read buffer"
 msgstr "E222: Ajout au tampon de lecture"
 
 msgid "E223: recursive mapping"
 msgstr "E223: mappage récursif"
 
-#, c-format
-msgid "E224: global abbreviation already exists for %s"
-msgstr "E224: une abréviation globale existe déjà pour %s"
-
-#, c-format
-msgid "E225: global mapping already exists for %s"
-msgstr "E225: un mappage global existe déjà pour %s"
-
-#, c-format
-msgid "E226: abbreviation already exists for %s"
-msgstr "E226: une abréviation existe déjà pour %s"
-
-#, c-format
-msgid "E227: mapping already exists for %s"
-msgstr "E227: un mappage existe déjà pour %s"
-
-msgid "No abbreviation found"
-msgstr "Aucune abréviation trouvée"
-
-msgid "No mapping found"
-msgstr "Aucun mappage trouvé"
-
-msgid "E228: makemap: Illegal mode"
-msgstr "E228: makemap : mode invalide"
-
 msgid "E851: Failed to create a new process for the GUI"
 msgstr ""
 "E851: Échec lors de la création d'un nouveau processus pour l'interface "
@@ -2576,6 +2158,9 @@ msgstr "E671: Titre de fenêtre \"%s\" introuvable"
 msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
 msgstr "E243: Argument non supporté : \"-%s\" ; Utilisez la version OLE."
 
+msgid "E988: GUI cannot be used. Cannot execute gvim.exe."
+msgstr "E988: L'interface graphique ne peut pas être utilisée. Impossible d'exécuter gvim.exe."
+
 msgid "E672: Unable to open window inside MDI application"
 msgstr "E672: Impossible d'ouvrir une fenêtre dans une application MDI"
 
@@ -2608,7 +2193,7 @@ msgstr "Font0: %s"
 
 #, c-format
 msgid "Font%d: %s"
-msgstr "Font%d: %s"
+msgstr "Font%d : %s"
 
 #, c-format
 msgid "Font%d width is not twice that of font0"
@@ -2654,9 +2239,6 @@ msgstr "Style :"
 msgid "Size:"
 msgstr "Taille :"
 
-msgid "E256: Hangul automata ERROR"
-msgstr "E256: ERREUR dans l'automate Hangul"
-
 msgid "E550: Missing colon"
 msgstr "E550: ':' manquant"
 
@@ -2754,6 +2336,94 @@ msgstr "E365: L'impression du fichier PostScript a échoué"
 msgid "Print job sent."
 msgstr "Tâche d'impression envoyée."
 
+msgid "E679: recursive loop loading syncolor.vim"
+msgstr "E679: boucle récursive lors du chargement de syncolor.vim"
+
+#, c-format
+msgid "E411: highlight group not found: %s"
+msgstr "E411: groupe de surbrillance introuvable : %s"
+
+#, c-format
+msgid "E412: Not enough arguments: \":highlight link %s\""
+msgstr "E412: Trop peu d'arguments : \":highlight link %s\""
+
+#, c-format
+msgid "E413: Too many arguments: \":highlight link %s\""
+msgstr "E413: Trop d'arguments : \":highlight link %s\""
+
+msgid "E414: group has settings, highlight link ignored"
+msgstr "E414: le groupe a déjà des attributs, lien de surbrillance ignoré"
+
+#, c-format
+msgid "E415: unexpected equal sign: %s"
+msgstr "E415: signe égal inattendu : %s"
+
+#, c-format
+msgid "E416: missing equal sign: %s"
+msgstr "E416: '=' manquant : %s"
+
+#, c-format
+msgid "E417: missing argument: %s"
+msgstr "E417: argument manquant : %s"
+
+#, c-format
+msgid "E418: Illegal value: %s"
+msgstr "E418: Valeur invalide : %s"
+
+msgid "E419: FG color unknown"
+msgstr "E419: Couleur de premier plan inconnue"
+
+msgid "E420: BG color unknown"
+msgstr "E420: Couleur d'arrière-plan inconnue"
+
+#, c-format
+msgid "E421: Color name or number not recognized: %s"
+msgstr "E421: Nom ou numéro de couleur non reconnu : %s"
+
+#, c-format
+msgid "E422: terminal code too long: %s"
+msgstr "E422: le code de terminal est trop long : %s"
+
+#, c-format
+msgid "E423: Illegal argument: %s"
+msgstr "E423: Argument invalide : %s"
+
+msgid "E424: Too many different highlighting attributes in use"
+msgstr ""
+"E424: Trop d'attributs de surbrillance différents en cours d'utilisation"
+
+msgid "E669: Unprintable character in group name"
+msgstr "E669: Caractère non imprimable dans un nom de groupe"
+
+msgid "W18: Invalid character in group name"
+msgstr "W18: Caractère invalide dans un nom de groupe"
+
+msgid "E849: Too many highlight and syntax groups"
+msgstr "E849: Trop de groupes de surbrillance et de syntaxe"
+
+#, c-format
+msgid "E799: Invalid ID: %d (must be greater than or equal to 1)"
+msgstr "E799: ID invalide : %d (doit être plus grand ou égal à 1)"
+
+#, c-format
+msgid "E801: ID already taken: %d"
+msgstr "E801: ID déjà pris : %d"
+
+msgid "List or number required"
+msgstr "Liste ou nombre requis"
+
+#, c-format
+msgid "E802: Invalid ID: %d (must be greater than or equal to 1)"
+msgstr "E802: ID invalide : %d (doit être plus grand ou égal à 1)"
+
+#, c-format
+msgid "E803: ID not found: %d"
+msgstr "E803: ID introuvable : %d"
+
+#, c-format
+msgid "E798: ID is reserved for \":match\": %d"
+msgstr "E798: ID est réservé pour \":match\" : %d"
+
 msgid "Add a new database"
 msgstr "Ajouter une base de données"
 
@@ -3130,10 +2800,157 @@ msgid "E251: VIM instance registry prope
 msgstr "E251: Entrée registre de l'instance de Vim mal formatée. Suppression !"
 
 #, c-format
+msgid "%ld lines to indent... "
+msgstr "%ld lignes à indenter... "
+
+#, c-format
+msgid "%ld line indented "
+msgid_plural "%ld lines indented "
+msgstr[0] "%ld ligne indentée "
+msgstr[1] "%ld lignes indentées "
+
+# AB - Remplacer "complétion" par "complètement" ? Voir l'éthymologie
+#      d'"accrétion".
+msgid " Keyword completion (^N^P)"
+msgstr " Complètement de mot-clé (^N^P)"
+
+# DB - todo : Faut-il une majuscule à "mode" ?
+msgid " ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)"
+msgstr " mode ^X (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)"
+
+msgid " Whole line completion (^L^N^P)"
+msgstr " Complètement de ligne entière (^L^N^P)"
+
+msgid " File name completion (^F^N^P)"
+msgstr " Complètement de nom de fichier (^F^N^P)"
+
+msgid " Tag completion (^]^N^P)"
+msgstr " Complètement de marqueur (^]^N^P)"
+
+# AB - J'ai dû avoir une bonne raison de faire une version française aussi
+#      différente de la version anglaise. Il me faut la retrouver.
+# DB - TODO
+msgid " Path pattern completion (^N^P)"
+msgstr " Complètement global de mot-clé (^N^P)"
+
+msgid " Definition completion (^D^N^P)"
+msgstr " Complètement de définition (^D^N^P)"
+
+# AB - Trouver une meilleure formulation que "selon le".
+# DB : proposition : "avec"
+msgid " Dictionary completion (^K^N^P)"
+msgstr " Complètement avec le dictionnaire (^K^N^P)"
+
+# AB - Trouver une meilleure formulation que "selon le".
+msgid " Thesaurus completion (^T^N^P)"
+msgstr " Complètement avec le thésaurus (^T^N^P)"
+
+# AB - La version française est meilleure que la version anglaise.
+# DB : Suggestion.
+msgid " Command-line completion (^V^N^P)"
+msgstr " Complètement de ligne de commande (^V^N^P)"
+
+msgid " User defined completion (^U^N^P)"
+msgstr " Complètement défini par l'utilisateur (^U^N^P)"
+
+# DB : On doit pouvoir trouver nettement mieux que ça.
+msgid " Omni completion (^O^N^P)"
+msgstr " Complètement selon le type de fichier (Omni) (^O^N^P)"
+
+msgid " Spelling suggestion (s^N^P)"
+msgstr " Suggestion d'orthographe (s^N^P)"
+
+msgid " Keyword Local completion (^N^P)"
+msgstr " Complètement local de mot-clé (^N/^P)"
+
+# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
+#      Il faut éviter de le faire trop long. Je pense que la version française
+#      est suffisamment compréhensible dans le contexte dans lequel elle est
+#      affichée.
+msgid "Hit end of paragraph"
+msgstr "Fin du paragraphe"
+
+msgid "E839: Completion function changed window"
+msgstr "E839: La fonction de complètement a changé la fenêtre"
+
+msgid "E840: Completion function deleted text"
+msgstr "E840: La fonction de complètement a effacé du texte"
+
+msgid "'dictionary' option is empty"
+msgstr "L'option 'dictionary' est vide"
+
+msgid "'thesaurus' option is empty"
+msgstr "L'option 'thesaurus' est vide"
+
+#, c-format
+msgid "Scanning dictionary: %s"
+msgstr "Examen du dictionnaire : %s"
+
+msgid " (insert) Scroll (^E/^Y)"
+msgstr " (insertion) Défilement (^E/^Y)"
+
+msgid " (replace) Scroll (^E/^Y)"
+msgstr " (remplacement) Défilement (^E/^Y)"
+
+msgid "E785: complete() can only be used in Insert mode"
+msgstr "E785: complete() n'est utilisable que dans le mode Insertion"
+
+#, c-format
+msgid "Scanning: %s"
+msgstr "Examen : %s"
+
+msgid "Scanning tags."
+msgstr "Examen des marqueurs."
+
+msgid "match in file"
+msgstr "correspondance dans le fichier"
+
+# AB - Cette chaîne de caractères est ajoutée en début de ligne lorsqu'une
+#      opération de complétion est répétée (typiquement avec CTRL-X CTRL-N).
+#      Que ce soit en anglais ou en français, il y a un problème de majuscules.
+#      Bien qu'insatisfaisante, cette traduction semble optimale.
+msgid " Adding"
+msgstr " Ajout"
+
+msgid "-- Searching..."
+msgstr "-- Recherche en cours..."
+
+# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
+# AB - Faut-il utiliser "origine" ou "originel" au lieu d'"original" ?
+# DB : Suggestion.
+msgid "Back at original"
+msgstr "Retour au point de départ"
+
+# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
+msgid "Word from other line"
+msgstr "Mot d'une autre ligne"
+
+# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
+msgid "The only match"
+msgstr "La seule correspondance"
+
+# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
+# AB - Faut-il remplacer "sur" par "de" ?
+# DB : Pour moi, non.
+#, c-format
+msgid "match %d of %d"
+msgstr "Correspondance %d sur %d"
+
+# AB - Ce texte s'ajoute à la fin d'un des messages de complétion ci-dessus.
+# DB - todo : la VO n'a pas de majuscule.
+#, c-format
+msgid "match %d"
+msgstr "Correspondance %d"
+
+#, c-format
 msgid "E938: Duplicate key in JSON: \"%s\""
 msgstr "E938: Clé dupliquée dans le document JSON : \"%s\""
 
 #, c-format
+msgid "E899: Argument of %s must be a List or Blob"
+msgstr "E899: L'argument de %s doit être une Liste ou un Blob"
+
+#, c-format
 msgid "E696: Missing comma in List: %s"
 msgstr "E696: Il manque une virgule dans la Liste %s"
 
@@ -3141,6 +2958,36 @@ msgstr "E696: Il manque une virgule dans
 msgid "E697: Missing end of List ']': %s"
 msgstr "E697: Il manque ']' à la fin de la Liste %s"
 
+msgid "sort() argument"
+msgstr "argument de sort()"
+
+msgid "uniq() argument"
+msgstr "argument de uniq()"
+
+msgid "E702: Sort compare function failed"
+msgstr "E702: La fonction de comparaison de sort() a échoué"
+
+msgid "E882: Uniq compare function failed"
+msgstr "E882: La fonction de comparaison de uniq() a échoué"
+
+msgid "map() argument"
+msgstr "argument de map()"
+
+msgid "filter() argument"
+msgstr "argument de filter()"
+
+msgid "add() argument"
+msgstr "argument de add()"
+
+msgid "insert() argument"
+msgstr "argument de insert()"
+
+msgid "remove() argument"
+msgstr "argument de remove()"
+
+msgid "reverse() argument"
+msgstr "argument de reverse()"
+
 msgid "Unknown option argument"
 msgstr "Option inconnue"
 
@@ -3350,9 +3197,6 @@ msgstr "-A\t\tDémarrer en mode arabe"
 msgid "-H\t\t\tStart in Hebrew mode"
 msgstr "-H\t\tDémarrer en mode hébreu"
 
-msgid "-F\t\t\tStart in Farsi mode"
-msgstr "-F\t\tDémarrer en mode farsi"
-
 msgid "-T <terminal>\tSet terminal type to <terminal>"
 msgstr "-T <term>\tRégler le type du terminal sur <terminal>"
 
@@ -3583,6 +3427,39 @@ msgstr "Aucun display : L'envoi de l'expression a échoué.\n"
 msgid ": Send expression failed.\n"
 msgstr " : L'envoi de l'expression a échoué.\n"
 
+#, c-format
+msgid "E224: global abbreviation already exists for %s"
+msgstr "E224: une abréviation globale existe déjà pour %s"
+
+#, c-format
+msgid "E225: global mapping already exists for %s"
+msgstr "E225: un mappage global existe déjà pour %s"
+
+#, c-format
+msgid "E226: abbreviation already exists for %s"
+msgstr "E226: une abréviation existe déjà pour %s"
+
+#, c-format
+msgid "E227: mapping already exists for %s"
+msgstr "E227: un mappage existe déjà pour %s"
+
+msgid "No abbreviation found"
+msgstr "Aucune abréviation trouvée"
+
+msgid "No mapping found"
+msgstr "Aucun mappage trouvé"
+
+msgid "E228: makemap: Illegal mode"
+msgstr "E228: makemap : mode invalide"
+
+#, c-format
+msgid "E357: 'langmap': Matching character missing for %s"
+msgstr "E357: 'langmap' : Aucun caractère correspondant pour %s"
+
+#, c-format
+msgid "E358: 'langmap': Extra characters after semicolon: %s"
+msgstr "E358: 'langmap' : Caractères surnuméraires après point-virgule : %s"
+
 msgid "No marks set"
 msgstr "Aucune marque positionnée"
 
@@ -3611,30 +3488,6 @@ msgstr ""
 "\n"
 "modif  ligne col fichier/texte"
 
-msgid ""
-"\n"
-"# File marks:\n"
-msgstr ""
-"\n"
-"# Marques dans le fichier :\n"
-
-msgid ""
-"\n"
-"# Jumplist (newest first):\n"
-msgstr ""
-"\n"
-"# Liste de sauts (le plus récent en premier) :\n"
-
-msgid ""
-"\n"
-"# History of marks within files (newest to oldest):\n"
-msgstr ""
-"\n"
-"# Historique des marques dans les fichiers (les plus récentes en premier) :\n"
-
-msgid "Missing '>'"
-msgstr "'>' manquant"
-
 msgid "E543: Not a valid codepage"
 msgstr "E543: Page de codes non valide"
 
@@ -3892,6 +3745,9 @@ msgstr "   Dans le répertoire "
 msgid "      -- none --\n"
 msgstr "     -- aucun --\n"
 
+msgid "%a %b %d %H:%M:%S %Y"
+msgstr "%a %b %d %H:%M:%S %Y"
+
 msgid "          owned by: "
 msgstr "      propriété de : "
 
@@ -3984,8 +3840,8 @@ msgid "E315: ml_get: invalid lnum: %ld"
 msgstr "E315: ml_get : numéro de ligne invalide : %ld"
 
 #, c-format
-msgid "E316: ml_get: cannot find line %ld"
-msgstr "E316: ml_get : ligne %ld introuvable"
+msgid "E316: ml_get: cannot find line %ld in buffer %d %s"
+msgstr "E316: ml_get : impossible de trouver la ligne %ld dans le tampon %d %s"
 
 msgid "E317: pointer block id wrong 3"
 msgstr "E317: mauvais id de pointeur de bloc 3"
@@ -4084,6 +3940,9 @@ msgstr ""
 "\"\n"
 "    pour éviter ce message.\n"
 
+msgid "Found a swap file that is not useful, deleting it"
+msgstr "Effacement de fichier d'échange inutile"
+
 msgid "Swap file \""
 msgstr "Le fichier d'échange \""
 
@@ -4229,20 +4088,6 @@ msgstr ""
 "Tout aban&donner\n"
 "&Annuler"
 
-# DB : Les trois messages qui suivent sont des titres de boîtes
-#      de dialogue par défaut.
-msgid "Select Directory dialog"
-msgstr "Sélecteur de répertoire"
-
-msgid "Save File dialog"
-msgstr "Enregistrer un fichier"
-
-msgid "Open File dialog"
-msgstr "Ouvrir un fichier"
-
-msgid "E338: Sorry, no file browser in console mode"
-msgstr "E338: Désolé, pas de sélecteur de fichiers en mode console"
-
 msgid "E766: Insufficient arguments for printf()"
 msgstr "E766: Pas assez d'arguments pour printf()"
 
@@ -4252,9 +4097,6 @@ msgstr "E807: printf() attend un argumen
 msgid "E767: Too many arguments to printf()"
 msgstr "E767: Trop d'arguments pour printf()"
 
-msgid "W10: Warning: Changing a readonly file"
-msgstr "W10: Alerte : Modification d'un fichier en lecture seule"
-
 msgid "Type number and <Enter> or click with mouse (empty cancels): "
 msgstr "Tapez un nombre et <Entrée> ou cliquez avec la souris (rien annule) :"
 
@@ -4279,6 +4121,15 @@ msgstr " (Interrompu)"
 msgid "Beep!"
 msgstr "Bip !"
 
+msgid "E677: Error writing temp file"
+msgstr "E677: Erreur lors de l'écriture du fichier temporaire"
+
+#, c-format
+msgid "%ld second ago"
+msgid_plural "%ld seconds ago"
+msgstr[0] "il y a %ld seconde"
+msgstr[1] "il y a %ld secondes"
+
 msgid "ERROR: "
 msgstr "ERREUR : "
 
@@ -4298,12 +4149,8 @@ msgstr ""
 "[appels] total re/malloc() %lu, total free() %lu\n"
 "\n"
 
-msgid "E340: Line is becoming too long"
-msgstr "E340: La ligne devient trop longue"
-
-#, c-format
-msgid "E341: Internal error: lalloc(%ld, )"
-msgstr "E341: Erreur interne : lalloc(%ld, )"
+msgid "E341: Internal error: lalloc(0, )"
+msgstr "E341: Erreur interne : lalloc(0, )"
 
 #, c-format
 msgid "E342: Out of memory!  (allocating %lu bytes)"
@@ -4328,33 +4175,6 @@ msgstr "E548: chiffre attendu"
 msgid "E549: Illegal percentage"
 msgstr "E549: Pourcentage non autorisé"
 
-msgid "E854: path too long for completion"
-msgstr "E854: chemin trop long pour complètement"
-
-#, c-format
-msgid ""
-"E343: Invalid path: '**[number]' must be at the end of the path or be "
-"followed by '%s'."
-msgstr ""
-"E343: Chemin invalide : '**[nombre]' doit être à la fin du chemin ou être "
-"suivi de '%s'."
-
-#, c-format
-msgid "E344: Can't find directory \"%s\" in cdpath"
-msgstr "E344: Répertoire \"%s\" introuvable dans 'cdpath'"
-
-#, c-format
-msgid "E345: Can't find file \"%s\" in path"
-msgstr "E345: Fichier \"%s\" introuvable dans 'path'"
-
-#, c-format
-msgid "E346: No more directory \"%s\" found in cdpath"
-msgstr "E346: Plus de répertoire \"%s\" dans 'cdpath'"
-
-#, c-format
-msgid "E347: No more file \"%s\" found in path"
-msgstr "E347: Plus de fichier \"%s\" dans 'path'"
-
 #, c-format
 msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
 msgstr ""
@@ -4378,12 +4198,6 @@ msgstr "E505: %s est en lecture seule (a
 msgid "E349: No identifier under cursor"
 msgstr "E349: Aucun identifiant sous le curseur"
 
-msgid "E774: 'operatorfunc' is empty"
-msgstr "E774: 'operatorfunc' est vide"
-
-msgid "E775: Eval feature not available"
-msgstr "E775: La fonctionnalité d'évaluation n'est pas disponible"
-
 # DB : Il est ici question du mode Visuel.
 msgid "Warning: terminal cannot highlight"
 msgstr "Alerte : le terminal ne peut pas surligner"
@@ -4392,7 +4206,7 @@ msgid "E348: No string under cursor"
 msgstr "E348: Aucune chaîne sous le curseur"
 
 msgid "E352: Cannot erase folds with current 'foldmethod'"
-msgstr "E352: Impossible d'effacer des replis avec la 'foldmethod'e actuelle"
+msgstr "E352: Impossible d'effacer des replis avec la 'foldmethod' actuelle"
 
 msgid "E664: changelist is empty"
 msgstr "E664: La liste des modifications (changelist) est vide"
@@ -4408,6 +4222,9 @@ msgstr ""
 "Tapez  :qa!  puis <Entrée> pour abandonner tous les changements et quitter "
 "Vim"
 
+msgid "Type  :qa  and press <Enter> to exit Vim"
+msgstr "Tapez  :qa  puis <Entrée> pour quitter Vim"
+
 #, c-format
 msgid "%ld line %sed %d time"
 msgid_plural "%ld line %sed %d times"
@@ -4420,19 +4237,6 @@ msgid_plural "%ld lines %sed %d times"
 msgstr[0] "%ld lignes %sées %d fois"
 msgstr[1] "%ld lignes %sées %d fois"
 
-#, c-format
-msgid "%ld lines to indent... "
-msgstr "%ld lignes à indenter... "
-
-#, c-format
-msgid "%ld line indented "
-msgid_plural "%ld lines indented "
-msgstr[0] "%ld ligne indentée "
-msgstr[1] "%ld lignes indentées "
-
-msgid "E748: No previously used register"
-msgstr "E748: Aucun registre n'a été précédemment utilisé"
-
 # DB - Question O/N.
 msgid "cannot yank; delete anyway"
 msgstr "impossible de réaliser une copie ; effacer tout de même"
@@ -4444,58 +4248,6 @@ msgstr[0] "%ld ligne modifiée"
 msgstr[1] "%ld lignes modifiées"
 
 #, c-format
-msgid "freeing %ld lines"
-msgstr "libération de %ld lignes"
-
-#, c-format
-msgid " into \"%c"
-msgstr " dans \"%c"
-
-#, c-format
-msgid "block of %ld line yanked%s"
-msgid_plural "block of %ld lines yanked%s"
-msgstr[0] "bloc de %ld ligne copié%s"
-msgstr[1] "bloc de %ld lignes copié%s"
-
-#, c-format
-msgid "%ld line yanked%s"
-msgid_plural "%ld lines yanked%s"
-msgstr[0] "%ld ligne copiée%s"
-msgstr[1] "%ld lignes copiées%s"
-
-#, c-format
-msgid "E353: Nothing in register %s"
-msgstr "E353: Le registre %s est vide"
-
-msgid ""
-"\n"
-"--- Registers ---"
-msgstr ""
-"\n"
-"--- Registres ---"
-
-msgid "Illegal register name"
-msgstr "Nom de registre invalide"
-
-msgid ""
-"\n"
-"# Registers:\n"
-msgstr ""
-"\n"
-"# Registres :\n"
-
-#, c-format
-msgid "E574: Unknown register type %d"
-msgstr "E574: Type de registre %d inconnu"
-
-msgid ""
-"E883: search pattern and expression register may not contain two or more "
-"lines"
-msgstr ""
-"E883: le motif de recherche et le registre d'expression ne peuvent pas "
-"contenir deux lignes ou plus"
-
-#, c-format
 msgid "%ld Cols; "
 msgstr "%ld Colonnes ; "
 
@@ -4530,8 +4282,11 @@ msgstr ""
 msgid "(+%lld for BOM)"
 msgstr "(+%lld pour le BOM)"
 
-msgid "Thanks for flying Vim"
-msgstr "Merci d'avoir choisi Vim"
+msgid "E774: 'operatorfunc' is empty"
+msgstr "E774: 'operatorfunc' est vide"
+
+msgid "E775: Eval feature not available"
+msgstr "E775: La fonctionnalité d'évaluation n'est pas disponible"
 
 msgid "E518: Unknown option"
 msgstr "E518: Option inconnue"
@@ -4542,6 +4297,9 @@ msgstr "E519: Option non supportée"
 msgid "E520: Not allowed in a modeline"
 msgstr "E520: Non autorisé dans une ligne de mode"
 
+msgid "E992: Not allowed in a modeline when 'modelineexpr' is off"
+msgstr "E992: Non autorisé dans une ligne de mode avec 'modelineexpr' désélectionnée"
+
 msgid "E846: Key code not set"
 msgstr "E846: Le code de touche n'est pas configuré"
 
@@ -4551,99 +4309,6 @@ msgstr "E521: Nombre requis après ="
 msgid "E522: Not found in termcap"
 msgstr "E522: Introuvable dans termcap"
 
-#, c-format
-msgid "E539: Illegal character <%s>"
-msgstr "E539: Caractère <%s> invalide"
-
-#, c-format
-msgid "For option %s"
-msgstr "Pour l'option %s"
-
-msgid "E529: Cannot set 'term' to empty string"
-msgstr "E529: 'term' ne doit pas être une chaîne vide"
-
-msgid "E530: Cannot change term in GUI"
-msgstr "E530: Impossible de modifier term dans l'interface graphique"
-
-msgid "E531: Use \":gui\" to start the GUI"
-msgstr "E531: Utilisez \":gui\" pour démarrer l'interface graphique"
-
-msgid "E589: 'backupext' and 'patchmode' are equal"
-msgstr "E589: 'backupext' et 'patchmode' sont égaux"
-
-msgid "E834: Conflicts with value of 'listchars'"
-msgstr "E834: Conflits avec la valeur de 'listchars'"
-
-msgid "E835: Conflicts with value of 'fillchars'"
-msgstr "E835: Conflits avec la valeur de 'fillchars'"
-
-msgid "E617: Cannot be changed in the GTK+ 2 GUI"
-msgstr "E617: Non modifiable dans l'interface graphique GTK+ 2"
-
-#, c-format
-msgid "E950: Cannot convert between %s and %s"
-msgstr "E950: Impossible de convertir de %s à %s"
-
-msgid "E524: Missing colon"
-msgstr "E524: ':' manquant"
-
-msgid "E525: Zero length string"
-msgstr "E525: Chaîne de longueur nulle"
-
-#, c-format
-msgid "E526: Missing number after <%s>"
-msgstr "E526: Nombre manquant après <%s>"
-
-msgid "E527: Missing comma"
-msgstr "E527: Virgule manquante"
-
-msgid "E528: Must specify a ' value"
-msgstr "E528: Une valeur ' doit être spécifiée"
-
-msgid "E595: contains unprintable or wide character"
-msgstr "E595: contient des caractères à largeur double non-imprimables"
-
-msgid "E596: Invalid font(s)"
-msgstr "E596: Police(s) invalide(s)"
-
-msgid "E597: can't select fontset"
-msgstr "E597: Impossible de sélectionner un jeu de polices"
-
-msgid "E598: Invalid fontset"
-msgstr "E598: Jeu de polices invalide"
-
-msgid "E533: can't select wide font"
-msgstr "E533: Impossible de sélectionner une police à largeur double"
-
-msgid "E534: Invalid wide font"
-msgstr "E534: Police à largeur double invalide"
-
-#, c-format
-msgid "E535: Illegal character after <%c>"
-msgstr "E535: Caractère invalide après <%c>"
-
-msgid "E536: comma required"
-msgstr "E536: virgule requise"
-
-#, c-format
-msgid "E537: 'commentstring' must be empty or contain %s"
-msgstr "E537: 'commentstring' doit être vide ou contenir %s"
-
-msgid "E538: No mouse support"
-msgstr "E538: La souris n'est pas supportée"
-
-# DB - Le code est sans ambiguïté sur le caractère manquant.
-#      À défaut d'une traduction valable, au moins comprend-on
-#      ce qui se passe.
-msgid "E540: Unclosed expression sequence"
-msgstr "E540: '}' manquant"
-
-msgid "E541: too many items"
-msgstr "E541: trop d'éléments"
-
-msgid "E542: unbalanced groups"
-msgstr "E542: parenthèses non équilibrées"
-
 msgid "E946: Cannot make a terminal with running job modifiable"
 msgstr ""
 "E946: terminal avec tâche en cours d'exécution ne peut pas être modifiable"
@@ -4655,7 +4320,7 @@ msgid "W17: Arabic requires UTF-8, do ':
 msgstr "W17: L'arabe nécessite l'UTF-8, tapez ':set encoding=utf-8'"
 
 msgid "E954: 24-bit colors are not supported on this environment"
-msgstr "E954: Couleurs en 24-bits non-supportées sur cet environnement."
+msgstr "E954: Couleurs en 24-bits non supportées sur cet environnement."
 
 #, c-format
 msgid "E593: Need at least %d lines"
@@ -4705,12 +4370,94 @@ msgid "E356: get_varp ERROR"
 msgstr "E356: ERREUR get_varp"
 
 #, c-format
-msgid "E357: 'langmap': Matching character missing for %s"
-msgstr "E357: 'langmap' : Aucun caractère correspondant pour %s"
-
-#, c-format
-msgid "E358: 'langmap': Extra characters after semicolon: %s"
-msgstr "E358: 'langmap' : Caractères surnuméraires après point-virgule : %s"
+msgid "E539: Illegal character <%s>"
+msgstr "E539: Caractère <%s> invalide"
+
+#, c-format
+msgid "For option %s"
+msgstr "Pour l'option %s"
+
+# DB - Le code est sans ambiguïté sur le caractère manquant.
+#      À défaut d'une traduction valable, au moins comprend-on
+#      ce qui se passe.
+msgid "E540: Unclosed expression sequence"
+msgstr "E540: '}' manquant"
+
+msgid "E541: too many items"
+msgstr "E541: trop d'éléments"
+
+msgid "E542: unbalanced groups"
+msgstr "E542: parenthèses non équilibrées"
+
+msgid "E529: Cannot set 'term' to empty string"
+msgstr "E529: 'term' ne doit pas être une chaîne vide"
+
+msgid "E530: Cannot change term in GUI"
+msgstr "E530: Impossible de modifier term dans l'interface graphique"
+
+msgid "E531: Use \":gui\" to start the GUI"
+msgstr "E531: Utilisez \":gui\" pour démarrer l'interface graphique"
+
+msgid "E589: 'backupext' and 'patchmode' are equal"
+msgstr "E589: 'backupext' et 'patchmode' sont égaux"
+
+msgid "E834: Conflicts with value of 'listchars'"
+msgstr "E834: Conflits avec la valeur de 'listchars'"
+
+msgid "E835: Conflicts with value of 'fillchars'"
+msgstr "E835: Conflits avec la valeur de 'fillchars'"
+
+msgid "E617: Cannot be changed in the GTK+ 2 GUI"
+msgstr "E617: Non modifiable dans l'interface graphique GTK+ 2"
+
+#, c-format
+msgid "E950: Cannot convert between %s and %s"
+msgstr "E950: Impossible de convertir de %s à %s"
+
+msgid "E524: Missing colon"
+msgstr "E524: ':' manquant"
+
+msgid "E525: Zero length string"
+msgstr "E525: Chaîne de longueur nulle"
+
+#, c-format
+msgid "E526: Missing number after <%s>"
+msgstr "E526: Nombre manquant après <%s>"
+
+msgid "E527: Missing comma"
+msgstr "E527: Virgule manquante"
+
+msgid "E528: Must specify a ' value"
+msgstr "E528: Une valeur ' doit être spécifiée"
+
+msgid "E595: 'showbreak' contains unprintable or wide character"
+msgstr "E595: 'showbreak' contient des caractères à largeur double ou non imprimables"
+
+msgid "E596: Invalid font(s)"
+msgstr "E596: Police(s) invalide(s)"
+
+msgid "E597: can't select fontset"
+msgstr "E597: Impossible de sélectionner un jeu de polices"
+
+msgid "E598: Invalid fontset"
+msgstr "E598: Jeu de polices invalide"
+
+msgid "E533: can't select wide font"
+msgstr "E533: Impossible de sélectionner une police à largeur double"
+
+msgid "E534: Invalid wide font"
+msgstr "E534: Police à largeur double invalide"
+
+#, c-format
+msgid "E535: Illegal character after <%c>"
+msgstr "E535: Caractère invalide après <%c>"
+
+msgid "E536: comma required"
+msgstr "E536: virgule requise"
+
+#, c-format
+msgid "E537: 'commentstring' must be empty or contain %s"
+msgstr "E537: 'commentstring' doit être vide ou contenir %s"
 
 msgid "cannot open "
 msgstr "impossible d'ouvrir "
@@ -4805,6 +4552,10 @@ msgstr ""
 "\n"
 "Vim : Réception d'une erreur X\n"
 
+#, c-format
+msgid "restoring display %s"
+msgstr "restauration du display %s"
+
 msgid "Testing the X display failed"
 msgstr "Le test du display X a échoué"
 
@@ -4902,15 +4653,6 @@ msgstr "XSMP : SmcOpenConnection a échoué : %s"
 msgid "At line"
 msgstr "À la ligne"
 
-msgid "Could not load vim32.dll!"
-msgstr "Impossible de charger vim32.dll !"
-
-msgid "VIM Error"
-msgstr "Erreur VIM"
-
-msgid "Could not fix up function pointers to the DLL!"
-msgstr "Impossible d'initialiser les pointeurs de fonction vers la DLL !"
-
 # DB - Les événements en question sont ceux des messages qui suivent.
 #, c-format
 msgid "Vim: Caught %s event\n"
@@ -4944,6 +4686,26 @@ msgstr "Alerte Vim"
 msgid "shell returned %d"
 msgstr "le shell a retourné %d"
 
+msgid "E278: Cannot put a terminal buffer in a popup window"
+msgstr "E278: Impossible de mettre un tampon de terminal dans une fenêtre contextuelle"
+
+#, c-format
+msgid "E997: Tabpage not found: %d"
+msgstr "E997: Onglet introuvable : %d"
+
+#, c-format
+msgid "E993: window %d is not a popup window"
+msgstr "E993: la fenêtre %d n'est pas une fenêtre contextuelle"
+
+msgid "E994: Not allowed in a popup window"
+msgstr "E994: Opération interdite dans une fenêtre contextuelle"
+
+msgid "E750: First use \":profile start {fname}\""
+msgstr "E750: Utilisez d'abord \":profile start {nomfichier}\""
+
+msgid "E553: No more items"
+msgstr "E553: Plus d'éléments"
+
 msgid "E926: Current location list was changed"
 msgstr "E926: La liste d'emplacements courante a changé"
 
@@ -4976,9 +4738,6 @@ msgstr "E378: 'errorformat' ne contient 
 msgid "E379: Missing or empty directory name"
 msgstr "E379: Nom de répertoire vide ou absent"
 
-msgid "E553: No more items"
-msgstr "E553: Plus d'éléments"
-
 msgid "E924: Current window was closed"
 msgstr "E924: La fenêtre courante doit être fermée"
 
@@ -5022,6 +4781,10 @@ msgid "E777: String or List expected"
 msgstr "E777: Chaîne ou Liste attendue"
 
 #, c-format
+msgid "E927: Invalid action: '%s'"
+msgstr "E927: Action invalide : « %s »"
+
+#, c-format
 msgid "E369: invalid item in %s%%[]"
 msgstr "E369: élément invalide dans %s%%[]"
 
@@ -5064,38 +4827,27 @@ msgstr "E70: %s%%[] vide"
 msgid "E956: Cannot use pattern recursively"
 msgstr "E956: Impossible d'utiliser le motif récursivement"
 
+#, c-format
+msgid "E554: Syntax error in %s{...}"
+msgstr "E554: Erreur de syntaxe dans %s{...}"
+
+#, c-format
+msgid "E888: (NFA regexp) cannot repeat %s"
+msgstr "E888: (regexp NFA) %s ne peut pas être répété"
+
+msgid ""
+"E864: \\%#= can only be followed by 0, 1, or 2. The automatic engine will be "
+"used "
+msgstr ""
+"E864: \\%#= peut être suivi uniquement de 0, 1 ou 2. Le moteur automatique "
+"sera utilisé "
+
+msgid "Switching to backtracking RE engine for pattern: "
+msgstr "Moteur RE avec backtracking utilisé pour le motif : "
+
 msgid "E65: Illegal back reference"
 msgstr "E65: post-référence invalide"
 
-msgid "E339: Pattern too long"
-msgstr "E339: Motif trop long"
-
-msgid "E50: Too many \\z("
-msgstr "E50: Trop de \\z("
-
-#, c-format
-msgid "E51: Too many %s("
-msgstr "E51: Trop de %s("
-
-msgid "E52: Unmatched \\z("
-msgstr "E52: Pas de correspondance pour \\z("
-
-#, c-format
-msgid "E59: invalid character after %s@"
-msgstr "E59: caractère invalide après %s@"
-
-#, c-format
-msgid "E60: Too many complex %s{...}s"
-msgstr "E60: Trop de %s{...}s complexes"
-
-#, c-format
-msgid "E61: Nested %s*"
-msgstr "E61: %s* imbriqués"
-
-#, c-format
-msgid "E62: Nested %s%c"
-msgstr "E62: %s%c imbriqués"
-
 msgid "E63: invalid use of \\_"
 msgstr "E63: utilisation invalide de \\_"
 
@@ -5115,26 +4867,37 @@ msgid "E71: Invalid character after %s%%
 msgstr "E71: Caractère invalide après %s%%"
 
 #, c-format
-msgid "E554: Syntax error in %s{...}"
-msgstr "E554: Erreur de syntaxe dans %s{...}"
+msgid "E59: invalid character after %s@"
+msgstr "E59: caractère invalide après %s@"
+
+#, c-format
+msgid "E60: Too many complex %s{...}s"
+msgstr "E60: Trop de %s{...}s complexes"
+
+#, c-format
+msgid "E61: Nested %s*"
+msgstr "E61: %s* imbriqués"
+
+#, c-format
+msgid "E62: Nested %s%c"
+msgstr "E62: %s%c imbriqués"
+
+msgid "E50: Too many \\z("
+msgstr "E50: Trop de \\z("
+
+#, c-format
+msgid "E51: Too many %s("
+msgstr "E51: Trop de %s("
+
+msgid "E52: Unmatched \\z("
+msgstr "E52: Pas de correspondance pour \\z("
+
+msgid "E339: Pattern too long"
+msgstr "E339: Motif trop long"
 
 msgid "External submatches:\n"
 msgstr "Sous-correspondances externes :\n"
 
-#, c-format
-msgid "E888: (NFA regexp) cannot repeat %s"
-msgstr "E888: (regexp NFA) %s ne peut pas être répété"
-
-msgid ""
-"E864: \\%#= can only be followed by 0, 1, or 2. The automatic engine will be "
-"used "
-msgstr ""
-"E864: \\%#= peut être suivi uniquement de 0, 1 ou 2. Le moteur automatique "
-"sera utilisé "
-
-msgid "Switching to backtracking RE engine for pattern: "
-msgstr "Moteur RE avec backtracking utilisé pour le motif : "
-
 msgid "E865: (NFA) Regexp end encountered prematurely"
 msgstr "E865: (NFA) Fin de regexp rencontrée prématurément"
 
@@ -5143,8 +4906,8 @@ msgid "E866: (NFA regexp) Misplaced %c"
 msgstr "E866: (regexp NFA) %c au mauvais endroit"
 
 #, c-format
-msgid "E877: (NFA regexp) Invalid character class: %ld"
-msgstr "E877: (regexp NFA) Classe de caractère invalide : %ld"
+msgid "E877: (NFA regexp) Invalid character class: %d"
+msgstr "E877: (regexp NFA) Classe de caractère invalide : %d"
 
 #, c-format
 msgid "E867: (NFA) Unknown operator '\\z%c'"
@@ -5201,6 +4964,47 @@ msgid "E878: (NFA) Could not allocate me
 msgstr ""
 "E878: (NFA) Impossible d'allouer la mémoire pour parcourir les branches !"
 
+msgid "E748: No previously used register"
+msgstr "E748: Aucun registre n'a été précédemment utilisé"
+
+#, c-format
+msgid "freeing %ld lines"
+msgstr "libération de %ld lignes"
+
+#, c-format
+msgid " into \"%c"
+msgstr " dans \"%c"
+
+#, c-format
+msgid "block of %ld line yanked%s"
+msgid_plural "block of %ld lines yanked%s"
+msgstr[0] "bloc de %ld ligne copié%s"
+msgstr[1] "bloc de %ld lignes copié%s"
+
+#, c-format
+msgid "%ld line yanked%s"
+msgid_plural "%ld lines yanked%s"
+msgstr[0] "%ld ligne copiée%s"
+msgstr[1] "%ld lignes copiées%s"
+
+#, c-format
+msgid "E353: Nothing in register %s"
+msgstr "E353: Le registre %s est vide"
+
+msgid ""
+"\n"
+"Type Name Content"
+msgstr ""
+"\n"
+"Type nom  Contenu"
+
+msgid ""
+"E883: search pattern and expression register may not contain two or more "
+"lines"
+msgstr ""
+"E883: le motif de recherche et le registre d'expression ne peuvent pas "
+"contenir deux lignes ou plus"
+
 msgid " VREPLACE"
 msgstr " VREMPLACEMENT"
 
@@ -5254,6 +5058,81 @@ msgid "recording"
 msgstr "Enregistrement"
 
 #, c-format
+msgid "Searching for \"%s\" in \"%s\""
+msgstr "Recherche de \"%s\" dans \"%s\""
+
+#, c-format
+msgid "Searching for \"%s\""
+msgstr "Recherche de \"%s\""
+
+#, c-format
+msgid "not found in '%s': \"%s\""
+msgstr "introuvable dans '%s' : \"%s\""
+
+msgid "Source Vim script"
+msgstr "Sourcer un script - Vim"
+
+#, c-format
+msgid "Cannot source a directory: \"%s\""
+msgstr "Impossible de sourcer un répertoire : \"%s\""
+
+#, c-format
+msgid "could not source \"%s\""
+msgstr "impossible de sourcer \"%s\""
+
+#, c-format
+msgid "line %ld: could not source \"%s\""
+msgstr "ligne %ld : impossible de sourcer \"%s\""
+
+#, c-format
+msgid "sourcing \"%s\""
+msgstr "sourcement \"%s\""
+
+#, c-format
+msgid "line %ld: sourcing \"%s\""
+msgstr "ligne %ld : sourcement de \"%s\""
+
+#, c-format
+msgid "finished sourcing %s"
+msgstr "fin du sourcement de %s"
+
+# AB - Ce texte fait partie d'un message de débogage.
+#, c-format
+msgid "continuing in %s"
+msgstr "de retour dans %s"
+
+msgid "modeline"
+msgstr "ligne de mode"
+
+msgid "--cmd argument"
+msgstr "argument --cmd"
+
+msgid "-c argument"
+msgstr "argument -c"
+
+msgid "environment variable"
+msgstr "variable d'environnement"
+
+msgid "error handler"
+msgstr "gestionnaire d'erreur"
+
+msgid "W15: Warning: Wrong line separator, ^M may be missing"
+msgstr "W15: Alerte : Séparateur de ligne erroné, ^M possiblement manquant"
+
+msgid "E167: :scriptencoding used outside of a sourced file"
+msgstr "E167: :scriptencoding utilisé en dehors d'un fichier sourcé"
+
+msgid "E984: :scriptversion used outside of a sourced file"
+msgstr "E984: :scriptversion utilisé en dehors d'un fichier sourcé"
+
+#, c-format
+msgid "E999: scriptversion not supported: %d"
+msgstr "E999: scriptversion non supporté : %d"
+
+msgid "E168: :finish used outside of a sourced file"
+msgstr "E168: :finish utilisé en dehors d'un fichier sourcé"
+
+#, c-format
 msgid "E383: Invalid search string: %s"
 msgstr "E383: Chaîne de recherche invalide : %s"
 
@@ -5309,18 +5188,14 @@ msgstr "E388: Impossible de trouver la définition"
 msgid "E389: Couldn't find pattern"
 msgstr "E389: Impossible de trouver le motif"
 
-msgid "Substitute "
-msgstr "Substitue "
-
-#, c-format
-msgid ""
-"\n"
-"# Last %sSearch Pattern:\n"
-"~"
-msgstr ""
-"\n"
-"# Dernier motif de recherche %s :\n"
-"~"
+msgid "Save View"
+msgstr "Enregistrer la vue - Vim"
+
+msgid "Save Session"
+msgstr "Enregistrer la session - Vim"
+
+msgid "Save Setup"
+msgstr "Enregistrer les réglages - Vim"
 
 msgid "[Deleted]"
 msgstr "[Effacé]"
@@ -5407,22 +5282,6 @@ msgstr "E797: L'autocommande SpellFileMissing a effacé le tampon"
 msgid "Warning: region %s not supported"
 msgstr "Alerte : région %s non supportée"
 
-msgid "Sorry, no suggestions"
-msgstr "Désolé, aucune suggestion"
-
-#, c-format
-msgid "Sorry, only %ld suggestions"
-msgstr "Désolé, seulement %ld suggestions"
-
-#, c-format
-msgid "Change \"%.*s\" to:"
-msgstr "Remplacer \"%.*s\" par :"
-
-# DB - todo : l'intérêt de traduire ce message m'échappe.
-#, c-format
-msgid " < \"%.*s\""
-msgstr " < \"%.*s\""
-
 msgid "E752: No previous spell replacement"
 msgstr "E752: Pas de suggestion orthographique précédente"
 
@@ -5756,6 +5615,22 @@ msgstr ""
 msgid "E783: duplicate char in MAP entry"
 msgstr "E783: caractère dupliqué dans l'entrée MAP"
 
+msgid "Sorry, no suggestions"
+msgstr "Désolé, aucune suggestion"
+
+#, c-format
+msgid "Sorry, only %ld suggestions"
+msgstr "Désolé, seulement %ld suggestions"
+
+#, c-format
+msgid "Change \"%.*s\" to:"
+msgstr "Remplacer \"%.*s\" par :"
+
+# DB - todo : l'intérêt de traduire ce message m'échappe.
+#, c-format
+msgid " < \"%.*s\""
+msgstr " < \"%.*s\""
+
 msgid "No Syntax items defined for this buffer"
 msgstr "Aucun élément de syntaxe défini pour ce tampon"
 
@@ -5876,7 +5751,7 @@ msgstr "E789: ']' manquant : %s"
 
 #, c-format
 msgid "E890: trailing char after ']': %s]%s"
-msgstr "E890: Caractère surnuméraire après ']': %s]%s"
+msgstr "E890: Caractère surnuméraire après ']' : %s]%s"
 
 #, c-format
 msgid "E398: Missing '=': %s"
@@ -5937,76 +5812,17 @@ msgid ""
 msgstr ""
 "  TOTAL      NOMBRE MATCH   PLUS LENT   MOYEN     NOM                MOTIF"
 
-msgid "E679: recursive loop loading syncolor.vim"
-msgstr "E679: boucle récursive lors du chargement de syncolor.vim"
-
-#, c-format
-msgid "E411: highlight group not found: %s"
-msgstr "E411: groupe de surbrillance introuvable : %s"
-
-#, c-format
-msgid "E412: Not enough arguments: \":highlight link %s\""
-msgstr "E412: Trop peu d'arguments : \":highlight link %s\""
-
-#, c-format
-msgid "E413: Too many arguments: \":highlight link %s\""
-msgstr "E413: Trop d'arguments : \":highlight link %s\""
-
-msgid "E414: group has settings, highlight link ignored"
-msgstr "E414: le groupe a déjà des attributs, lien de surbrillance ignoré"
-
-#, c-format
-msgid "E415: unexpected equal sign: %s"
-msgstr "E415: signe égal inattendu : %s"
-
-#, c-format
-msgid "E416: missing equal sign: %s"
-msgstr "E416: '=' manquant : %s"
-
-#, c-format
-msgid "E417: missing argument: %s"
-msgstr "E417: argument manquant : %s"
-
-#, c-format
-msgid "E418: Illegal value: %s"
-msgstr "E418: Valeur invalide : %s"
-
-msgid "E419: FG color unknown"
-msgstr "E419: Couleur de premier plan inconnue"
-
-msgid "E420: BG color unknown"
-msgstr "E420: Couleur d'arrière-plan inconnue"
-
-#, c-format
-msgid "E421: Color name or number not recognized: %s"
-msgstr "E421: Nom ou numéro de couleur non reconnu : %s"
-
-#, c-format
-msgid "E422: terminal code too long: %s"
-msgstr "E422: le code de terminal est trop long : %s"
-
-#, c-format
-msgid "E423: Illegal argument: %s"
-msgstr "E423: Argument invalide : %s"
-
-msgid "E424: Too many different highlighting attributes in use"
-msgstr ""
-"E424: Trop d'attributs de surbrillance différents en cours d'utilisation"
-
-msgid "E669: Unprintable character in group name"
-msgstr "E669: Caractère non-imprimable dans un nom de groupe"
-
-msgid "W18: Invalid character in group name"
-msgstr "W18: Caractère invalide dans un nom de groupe"
-
-msgid "E849: Too many highlight and syntax groups"
-msgstr "E849: Trop de groupes de surbrillance et de syntaxe"
-
 msgid "E555: at bottom of tag stack"
-msgstr "E555: En bas de la pile de marqueurs"
+msgstr "E555: En bas de la pile des marqueurs"
 
 msgid "E556: at top of tag stack"
-msgstr "E556: Au sommet de la pile de marqueurs"
+msgstr "E556: Au sommet de la pile des marqueurs"
+
+msgid "E986: cannot modify the tag stack within tagfunc"
+msgstr "E986: impossible de modifier la pile des marqueurs dans tagfunc"
+
+msgid "E987: invalid return value from tagfunc"
+msgstr "E987: tagfunc a retourné une valeur de retour invalide"
 
 msgid "E425: Cannot go before first matching tag"
 msgstr "E425: Impossible d'aller avant le premier marqueur correspondant"
@@ -6015,12 +5831,6 @@ msgstr "E425: Impossible d'aller avant l
 msgid "E426: tag not found: %s"
 msgstr "E426: Marqueur introuvable : %s"
 
-msgid "  # pri kind tag"
-msgstr "  # pri type marqueur"
-
-msgid "file\n"
-msgstr "fichier\n"
-
 msgid "E427: There is only one matching tag"
 msgstr "E427: Il n'y a qu'un marqueur correspondant"
 
@@ -6045,6 +5855,12 @@ msgstr "  Utilisation d'un marqueur avec une casse différente !"
 msgid "E429: File \"%s\" does not exist"
 msgstr "E429: Le fichier \"%s\" n'existe pas"
 
+msgid "  # pri kind tag"
+msgstr "  # pri type marqueur"
+
+msgid "file\n"
+msgstr "fichier\n"
+
 msgid ""
 "\n"
 "  # TO tag         FROM line  in file/text"
@@ -6060,9 +5876,6 @@ msgstr "Examen du fichier de marqueurs %
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: Chemin de fichiers de marqueurs tronqué pour %s\n"
 
-msgid "Ignoring long line in tags file"
-msgstr "Ignore longue ligne dans le fichier de marqueurs"
-
 #, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: Erreur de format dans le fichier de marqueurs \"%s\""
@@ -6078,6 +5891,9 @@ msgstr "E432: Le fichier de marqueurs %s n'est pas ordonné"
 msgid "E433: No tags file"
 msgstr "E433: Aucun fichier de marqueurs"
 
+msgid "Ignoring long line in tags file"
+msgstr "Ignore longue ligne dans le fichier de marqueurs"
+
 msgid "E434: Can't find tag pattern"
 msgstr "E434: Le motif de marqueur est introuvable"
 
@@ -6122,6 +5938,13 @@ msgid "Cannot open $VIMRUNTIME/rgb.txt"
 msgstr "Impossible d'ouvrir $VIMRUNTIME/rgb.txt"
 
 #, c-format
+msgid "E181: Invalid attribute: %s"
+msgstr "E181: Attribut invalide : %s"
+
+msgid "E279: Sorry, ++shell is not supported on this system"
+msgstr "E279: ++shell non supporté sur cet environnement"
+
+#, c-format
 msgid "Kill job in \"%s\"?"
 msgstr "Terminer la tâche d'exécution dans \"%s\"?"
 
@@ -6150,6 +5973,9 @@ msgstr "E953: Le fichier existe déjà : %s"
 msgid "E955: Not a terminal buffer"
 msgstr "E955: Ce n'est pas un tampon de terminal"
 
+msgid "E982: ConPTY is not available"
+msgstr "E982: ConPTY n'est pas disponible"
+
 #, c-format
 msgid "E971: Property type %s does not exist"
 msgstr "E971: Le type de propriété %s n'existe pas"
@@ -6165,6 +5991,9 @@ msgstr "E966: Numéro de ligne invalide : %ld"
 msgid "E965: missing property type name"
 msgstr "E965: nom du type de propriété absent"
 
+msgid "E275: Cannot add text property to unloaded buffer"
+msgstr "E275: Impossible d'ajouter des propriétés de texte à un tampon déchargé"
+
 msgid "E967: text property info corrupted"
 msgstr "E967: information de propriété de texte corrompu"
 
@@ -6246,7 +6075,7 @@ msgstr "E823: Ce n'est pas un fichier d'
 
 #, c-format
 msgid "E832: Non-encrypted file has encrypted undo file: %s"
-msgstr "E832: Fichier non-chiffré a un fichier d'annulations chiffré : %s"
+msgstr "E832: Fichier non chiffré a un fichier d'annulations chiffré : %s"
 
 #, c-format
 msgid "E826: Undo file decryption failed: %s"
@@ -6317,12 +6146,6 @@ msgstr "Rien à annuler"
 msgid "number changes  when               saved"
 msgstr "numéro modif.   instant            enregistré"
 
-#, c-format
-msgid "%ld second ago"
-msgid_plural "%ld seconds ago"
-msgstr[0] "il y a %ld seconde"
-msgstr[1] "il y a %ld secondes"
-
 msgid "E790: undojoin is not allowed after undo"
 msgstr "E790: undojoin n'est pas autorisé après une annulation"
 
@@ -6332,6 +6155,66 @@ msgstr "E439: la liste d'annulation est 
 msgid "E440: undo line missing"
 msgstr "E440: ligne d'annulation manquante"
 
+msgid ""
+"\n"
+"    Name              Args Address Complete    Definition"
+msgstr ""
+"\n"
+"    Nom               Args Adresse Complet     Définition"
+
+msgid "No user-defined commands found"
+msgstr "Aucune commande définie par l'utilisateur trouvée"
+
+#, c-format
+msgid "E180: Invalid address type value: %s"
+msgstr "E180: Valeur de type d'adresse invalide : %s"
+
+#, c-format
+msgid "E180: Invalid complete value: %s"
+msgstr "E180: Valeur invalide pour \"-complete=\" : %s"
+
+msgid "E468: Completion argument only allowed for custom completion"
+msgstr "E468: Seul le complètement personnalisé accepte un argument"
+
+msgid "E467: Custom completion requires a function argument"
+msgstr "E467: Le complètement personnalisé nécessite une fonction en argument"
+
+msgid "E175: No attribute specified"
+msgstr "E175: Pas d'attribut spécifié"
+
+msgid "E176: Invalid number of arguments"
+msgstr "E176: Nombre d'arguments invalide"
+
+msgid "E177: Count cannot be specified twice"
+msgstr "E177: Le quantificateur ne peut être spécifié deux fois"
+
+msgid "E178: Invalid default value for count"
+msgstr "E178: La valeur par défaut du quantificateur est invalide"
+
+msgid "E179: argument required for -complete"
+msgstr "E179: argument requis avec -complete"
+
+msgid "E179: argument required for -addr"
+msgstr "E179: argument requis avec -addr"
+
+#, c-format
+msgid "E174: Command already exists: add ! to replace it: %s"
+msgstr "E174: La commande existe déjà : ajoutez ! pour la redéfinir : %s"
+
+msgid "E182: Invalid command name"
+msgstr "E182: Nom de commande invalide"
+
+msgid "E183: User defined commands must start with an uppercase letter"
+msgstr "E183: Les commandes utilisateur doivent commencer par une majuscule"
+
+msgid "E841: Reserved name, cannot be used for user defined command"
+msgstr ""
+"E841: Nom réservé, ne peux pas être utilisé pour une commande utilisateur"
+
+#, c-format
+msgid "E184: No such user-defined command: %s"
+msgstr "E184: Aucune commande %s définie par l'utilisateur"
+
 #, c-format
 msgid "E122: Function %s already exists, add ! to replace it"
 msgstr "E122: La fonction %s existe déjà (ajoutez ! pour la remplacer)"
@@ -6354,6 +6237,9 @@ msgstr "E125: Argument invalide : %s"
 msgid "E853: Duplicate argument name: %s"
 msgstr "E853: Nom d'argument dupliqué : %s"
 
+msgid "E989: Non-default argument follows default argument"
+msgstr "E989: Argument sans valeur par défaut ne peut pas suivre un argument avec valeur par défaut"
+
 #, c-format
 msgid "E740: Too many arguments for function %s"
 msgstr "E740: Trop d'arguments pour la fonction %s"
@@ -6396,8 +6282,12 @@ msgid "E117: Unknown function: %s"
 msgstr "E117: Fonction inconnue : %s"
 
 #, c-format
+msgid "E276: Cannot use function as a method: %s"
+msgstr "E276: Impossible d'utiliser une fonction comme méthode : %s"
+
+#, c-format
 msgid "E933: Function was deleted: %s"
-msgstr "E933: La fonction a été effacée: %s"
+msgstr "E933: La fonction a été effacée : %s"
 
 #, c-format
 msgid "E119: Not enough arguments for function: %s"
@@ -6449,7 +6339,7 @@ msgstr "E126: Il manque :endfunction"
 
 #, c-format
 msgid "W22: Text found after :endfunction: %s"
-msgstr "W22: Texte trouvé après :endfunction: %s"
+msgstr "W22: Texte trouvé après :endfunction : %s"
 
 #, c-format
 msgid "E707: Function name conflicts with variable: %s"
@@ -6476,15 +6366,25 @@ msgid "E133: :return not inside a functi
 msgstr "E133: :return en dehors d'une fonction"
 
 #, c-format
-msgid "E107: Missing parentheses: %s"
-msgstr "E107: Parenthèses manquantes : %s"
-
-#, c-format
 msgid "%s (%s, compiled %s)"
 msgstr "%s (%s, compilé %s)"
 
 msgid ""
 "\n"
+"MS-Windows 64-bit GUI/console version"
+msgstr ""
+"\n"
+"Version interface graphique/console MS-Windows 64 bits"
+
+msgid ""
+"\n"
+"MS-Windows 32-bit GUI/console version"
+msgstr ""
+"\n"
+"Version interface graphique/console MS-Windows 32 bits"
+
+msgid ""
+"\n"
 "MS-Windows 64-bit GUI version"
 msgstr ""
 "\n"
@@ -6762,6 +6662,208 @@ msgstr "tapez  :help register<Entrée>   pour plus d'informations          "
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "menu  Aide->Sponsor/Enregistrement pour plus d'info"
 
+msgid ""
+"\n"
+"# Buffer list:\n"
+msgstr ""
+"\n"
+"# Liste des tampons :\n"
+
+# DB - Messages et les suivants : fichier .viminfo.
+#      Pas de majuscule nécessaire pour les messages d'après.
+#, c-format
+msgid ""
+"\n"
+"# %s History (newest to oldest):\n"
+msgstr ""
+"\n"
+"# Historique %s (chronologie décroissante) :\n"
+
+msgid "Command Line"
+msgstr "ligne de commande"
+
+msgid "Search String"
+msgstr "chaîne de recherche"
+
+msgid "Expression"
+msgstr "expression"
+
+msgid "Input Line"
+msgstr "ligne de saisie"
+
+msgid "Debug Line"
+msgstr "Ligne de débogage"
+
+msgid ""
+"\n"
+"# Bar lines, copied verbatim:\n"
+msgstr ""
+"\n"
+"# Lignes commençant par |, copiées littéralement :\n"
+
+# AB - Le numéro et le message d'erreur (%s ci-dessous) et le "numéro" de ligne
+#      sont des chaînes de caractères dont le contenu est à la discrétion de
+#      l'appelant de la fonction viminfo_error().
+#, c-format
+msgid "%sviminfo: %s in line: "
+msgstr "%sviminfo : %s à la ligne "
+
+# AB - La version française est meilleure que la version anglaise.
+msgid "E136: viminfo: Too many errors, skipping rest of file"
+msgstr ""
+"E136: Il y a trop d'erreurs ; interruption de la lecture du fichier viminfo"
+
+# AB - La version française est capitalisée pour être en accord avec les autres
+#      commentaires enregistrés dans le fichier viminfo.
+msgid ""
+"\n"
+"# global variables:\n"
+msgstr ""
+"\n"
+"# Variables globales:\n"
+
+# AB - Ne pas traduire le dollar.
+# AB - Ce message n'est volontairement pas traduit. En effet, il fait partie
+#      d'un groupe de trois messages dans viminfo, dont deux ne sont pas soumis
+#      à internationalisation. J'attends que les deux autres messages soient
+#      traduisibles pour traduire celui-ci.
+# DB - TODO : Qu'en est-il à présent ?
+msgid ""
+"\n"
+"# Last Substitute String:\n"
+"$"
+msgstr ""
+"\n"
+"# Dernières chaînes de substitution :\n"
+"$"
+
+#, c-format
+msgid ""
+"\n"
+"# Last %sSearch Pattern:\n"
+"~"
+msgstr ""
+"\n"
+"# Dernier motif de recherche %s :\n"
+"~"
+
+msgid "Substitute "
+msgstr "Substitue "
+
+msgid "Illegal register name"
+msgstr "Nom de registre invalide"
+
+msgid ""
+"\n"
+"# Registers:\n"
+msgstr ""
+"\n"
+"# Registres :\n"
+
+#, c-format
+msgid "E574: Unknown register type %d"
+msgstr "E574: Type de registre %d inconnu"
+
+msgid ""
+"\n"
+"# History of marks within files (newest to oldest):\n"
+msgstr ""
+"\n"
+"# Historique des marques dans les fichiers (les plus récentes en premier) :\n"
+
+msgid ""
+"\n"
+"# File marks:\n"
+msgstr ""
+"\n"
+"# Marques dans le fichier :\n"
+
+msgid ""
+"\n"
+"# Jumplist (newest first):\n"
+msgstr ""
+"\n"
+"# Liste de sauts (le plus récent en premier) :\n"
+
+msgid "Missing '>'"
+msgstr "'>' manquant"
+
+# AB - Ce texte est passé en argument à la fonction viminfo_error().
+# AB - "illégal" est un terme trop fort à mon goût.
+msgid "Illegal starting char"
+msgstr "Caractère initial non valide"
+
+#, c-format
+msgid "# This viminfo file was generated by Vim %s.\n"
+msgstr "# Ce fichier viminfo a été généré par Vim %s.\n"
+
+# AB - Les deux versions, bien que différentes, se valent.
+msgid ""
+"# You may edit it if you're careful!\n"
+"\n"
+msgstr ""
+"# Vous pouvez l'éditer, mais soyez prudent.\n"
+"\n"
+
+msgid "# Value of 'encoding' when this file was written\n"
+msgstr "# 'encoding' dans lequel ce fichier a été écrit\n"
+
+# AB - Ce texte fait partie d'un message de débogage.
+# DB - ... dont les valeurs possibles sont les messages
+#      qui suivent.
+#, c-format
+msgid "Reading viminfo file \"%s\"%s%s%s"
+msgstr "Lecture du fichier viminfo \"%s\"%s%s%s"
+
+# AB - Ce texte fait partie d'un message de débogage.
+# DB - Voir ci-dessus.
+msgid " info"
+msgstr " info"
+
+# AB - Ce texte fait partie d'un message de débogage.
+# DB - Voir ci-dessus.
+msgid " marks"
+msgstr " marques"
+
+msgid " oldfiles"
+msgstr " vieux fichiers"
+
+# AB - Ce texte fait partie d'un message de débogage.
+# DB - Voir ci-dessus.
+msgid " FAILED"
+msgstr " ÉCHEC"
+
+# AB - J'espère que la plupart des utilisateurs aura l'idée d'aller vérifier
+#      ses droits d'accès.
+# AB - Le mot "viminfo" a été retiré pour que le message ne dépasse pas 80
+#      caractères dans le cas courant où %s = /home/12345678/.viminfo
+#, c-format
+msgid "E137: Viminfo file is not writable: %s"
+msgstr "E137: L'écriture dans le fichier %s est interdite"
+
+#, c-format
+msgid "E929: Too many viminfo temp files, like %s!"
+msgstr "E929: Trop de fichiers temporaires viminfo, comme %s!"
+
+# AB - Le point d'exclamation est superflu.
+# AB - Le mot "viminfo" a été retiré pour que le message ne dépasse pas 80
+#      caractères dans le cas courant où %s = /home/12345678/.viminfo
+#, c-format
+msgid "E138: Can't write viminfo file %s!"
+msgstr "E138: Impossible d'écrire le fichier %s"
+
+# AB - Ce texte est un message de débogage.
+#, c-format
+msgid "Writing viminfo file \"%s\""
+msgstr "Écriture du fichier viminfo \"%s\""
+
+#, c-format
+msgid "E886: Can't rename viminfo file to %s!"
+msgstr "E886: Impossible de renommer viminfo en %s"
+
+msgid "E195: Cannot open viminfo file for reading"
+msgstr "E195: Impossible d'ouvrir le viminfo en lecture"
+
 msgid "Already only one window"
 msgstr "Il n'y a déjà plus qu'une fenêtre"
 
@@ -6774,6 +6876,9 @@ msgstr "E92: Le tampon %ld n'existe pas"
 msgid "E441: There is no preview window"
 msgstr "E441: Il n'y a pas de fenêtre de prévisualisation"
 
+msgid "E242: Can't split a window while closing another"
+msgstr "E242: Impossible de partager une fenêtre et fermer une autre"
+
 msgid "E442: Can't split topleft and botright at the same time"
 msgstr "E442: Impossible de partager topleft et botright en même temps"
 
@@ -6783,8 +6888,8 @@ msgstr "E443: Rotation impossible quand une autre fenêtre est partagée"
 msgid "E444: Cannot close last window"
 msgstr "E444: Impossible de fermer la dernière fenêtre"
 
-msgid "E813: Cannot close autocmd window"
-msgstr "E813: Impossible de fermer la fenêtre des autocommandes"
+msgid "E813: Cannot close autocmd or popup window"
+msgstr "E813: Impossible de fermer la fenêtre des autocommandes ou contextuelle"
 
 msgid "E814: Cannot close window, only autocmd window would remain"
 msgstr ""
@@ -6794,32 +6899,6 @@ msgstr ""
 msgid "E445: Other window contains changes"
 msgstr "E445: Les modifications de l'autre fenêtre n'ont pas été enregistrées"
 
-msgid "E446: No file name under cursor"
-msgstr "E446: Aucun nom de fichier sous le curseur"
-
-#, c-format
-msgid "E447: Can't find file \"%s\" in path"
-msgstr "E447: Le fichier \"%s\" est introuvable dans 'path'"
-
-#, c-format
-msgid "E799: Invalid ID: %d (must be greater than or equal to 1)"
-msgstr "E799: ID invalide : %d (doit être plus grand ou égal à 1)"
-
-#, c-format
-msgid "E801: ID already taken: %d"
-msgstr "E801: ID déjà pris: %d"
-
-msgid "List or number required"
-msgstr "Liste ou nombre requis"
-
-#, c-format
-msgid "E802: Invalid ID: %d (must be greater than or equal to 1)"
-msgstr "E802: ID invalide : %d (doit être plus grand ou égal à 1)"
-
-#, c-format
-msgid "E803: ID not found: %d"
-msgstr "E803: ID introuvable : %d"
-
 #, c-format
 msgid "E370: Could not load library %s"
 msgstr "E370: Impossible de charger la bibliothèque %s"
@@ -6933,9 +7012,6 @@ msgstr "E685: Erreur interne : %s"
 msgid "Interrupted"
 msgstr "Interrompu"
 
-msgid "E14: Invalid address"
-msgstr "E14: Adresse invalide"
-
 msgid "E474: Invalid argument"
 msgstr "E474: Argument invalide"
 
@@ -6944,6 +7020,10 @@ msgid "E475: Invalid argument: %s"
 msgstr "E475: Argument invalide : %s"
 
 #, c-format
+msgid "E983: Duplicate argument: %s"
+msgstr "E983: Argument dupliqué : %s"
+
+#, c-format
 msgid "E475: Invalid value for argument %s"
 msgstr "E475: Valeur d'argument invalide : %s"
 
@@ -7003,8 +7083,8 @@ msgstr "E25: L'interface graphique n'a pas été compilée dans cette version"
 msgid "E26: Hebrew cannot be used: Not enabled at compile time\n"
 msgstr "E26: Le support de l'hébreu n'a pas été compilé dans cette version\n"
 
-msgid "E27: Farsi cannot be used: Not enabled at compile time\n"
-msgstr "E27: Le support du farsi n'a pas été compilé dans cette version\n"
+msgid "E27: Farsi support has been removed\n"
+msgstr "E27: support du farsi a été supprimé\n"
 
 msgid "E800: Arabic cannot be used: Not enabled at compile time\n"
 msgstr "E800: Le support de l'arabe n'a pas été compilé dans cette version\n"
@@ -7112,6 +7192,21 @@ msgid "E45: 'readonly' option is set (ad
 msgstr "E45: L'option 'readonly' est activée (ajoutez ! pour passer outre)"
 
 #, c-format
+msgid "E121: Undefined variable: %s"
+msgstr "E121: Variable non définie : %s"
+
+#, c-format
+msgid "E734: Wrong variable type for %s="
+msgstr "E734: Type de variable erroné avec %s="
+
+#, c-format
+msgid "E461: Illegal variable name: %s"
+msgstr "E461: Nom de variable invalide : %s"
+
+msgid "E995: Cannot modify existing variable"
+msgstr "E995: Impossible de modifier une variable existante"
+
+#, c-format
 msgid "E46: Cannot change read-only variable \"%s\""
 msgstr "E46: La variable \"%s\" est en lecture seule"
 
@@ -7120,6 +7215,9 @@ msgid "E794: Cannot set variable in the 
 msgstr ""
 "E794: Impossible de modifier une variable depuis le bac à sable : \"%s\""
 
+msgid "E928: String required"
+msgstr "E928: Chaîne requis"
+
 msgid "E713: Cannot use empty key for Dictionary"
 msgstr "E713: Impossible d'utiliser une clé vide dans un Dictionnaire"
 
@@ -7223,6 +7321,10 @@ msgstr "E939: Quantificateur positif req
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: <SID> utilisé en dehors d'un script"
 
+#, c-format
+msgid "E107: Missing parentheses: %s"
+msgstr "E107: Parenthèses manquantes : %s"
+
 msgid "E449: Invalid expression received"
 msgstr "E449: Expression invalide reçue"
 
@@ -7268,6 +7370,13 @@ msgstr "E952: Une autocommande a causé une récursivité"
 msgid "E328: Menu only exists in another mode"
 msgstr "E328: Le menu n'existe que dans un autre mode"
 
+msgid "E957: Invalid window number"
+msgstr "E957: numéro de fenêtre invalide"
+
+#, c-format
+msgid "E686: Argument of %s must be a List"
+msgstr "E686: L'argument de %s doit être une Liste"
+
 msgid "search hit TOP, continuing at BOTTOM"
 msgstr "La recherche a atteint le HAUT, et continue en BAS"
 
@@ -7586,3 +7695,21 @@ msgstr ""
 "Source C (*.c, *.h)\t*.c;*.h\n"
 "Source C++ (*.cpp, *.hpp)\t*.cpp;*.hpp\n"
 "Fichiers Vim (*.vim, _vimrc, _gvimrc)\t*.vim;_vimrc;_gvimrc\n"
+
+msgid "GVim"
+msgstr "GVim"
+
+msgid "Text Editor"
+msgstr "Éditeur de texte"
+
+msgid "Edit text files"
+msgstr "Éditer des fichiers texte"
+
+msgid "Text;editor;"
+msgstr "Texte;éditeur;"
+
+msgid "gvim"
+msgstr "gvim"
+
+msgid "Vim"
+msgstr "Vim"
--- a/src/po/gvim.desktop.in
+++ b/src/po/gvim.desktop.in
@@ -10,7 +10,6 @@ Comment=Edit text files
 # The translations should come from the po file. Leave them here for now, they will
 # be overwritten by the po file when generating the desktop.file!
 GenericName[da]=Teksteditor
-GenericName[fr]=Éditeur de texte
 GenericName[pl]=Edytor tekstu
 GenericName[is]=Ritvinnsluforrit
 Comment[af]=Redigeer tekslêers
@@ -33,7 +32,6 @@ Comment[et]=Redigeeri tekstifaile
 Comment[eu]=Editatu testu-fitxategiak
 Comment[fa]=ویرایش پرونده‌های متنی
 Comment[fi]=Muokkaa tekstitiedostoja
-Comment[fr]=Éditer des fichiers textes
 Comment[ga]=Eagar comhad Téacs
 Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
 Comment[he]=ערוך קבצי טקסט
--- a/src/po/vim.desktop.in
+++ b/src/po/vim.desktop.in
@@ -32,7 +32,6 @@ Comment[et]=Redigeeri tekstifaile
 Comment[eu]=Editatu testu-fitxategiak
 Comment[fa]=ویرایش پرونده‌های متنی
 Comment[fi]=Muokkaa tekstitiedostoja
-Comment[fr]=Édite des fichiers texte
 Comment[ga]=Eagar comhad Téacs
 Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
 Comment[he]=ערוך קבצי טקסט