Commits

David Jean Louis  committed 5aaed9a

* polib is now `fully documented <http://polib.rtfd.org>`_,
* switched from doctests to unit tests to keep the polib.py file clean,
* fixed issue #7 (wrapping issues, thanks @jezdez),
* added a __eq__ method to _BaseFile (thanks @kost BebiX),
* handle msgctxt correctly when compiling mo files,
* compiled mo files are now exactly the same as those compiled by msgfmt without using hash tables.

  • Participants
  • Parent commits 62dd61c
  • Branches doc-and-unittests-refactoring

Comments (0)

Files changed (8)

 Changelog
 =========
 
+Version 0.6.0 (2011/02/02)
+--------------------------
+ - polib is now `fully documented <http://polib.rtfd.org>`_,
+ - switched from doctests to unit tests to keep the polib.py file clean,
+ - fixed issue #7 (wrapping issues, thanks @jezdez),
+ - added a __eq__ method to _BaseFile (thanks @kost BebiX),
+ - handle msgctxt correctly when compiling mo files,
+ - compiled mo files are now exactly the same as those compiled by msgfmt without using hash tables.
+
 Version 0.5.5 (2010/10/30)
 --------------------------
  - Removed multiline handling code, it was a mess and was the source of potential bugs like issue #11,
 """
 
 __author__    = 'David Jean Louis <izimobil@gmail.com>'
-__version__   = '1.0.0-RC1'
+__version__   = '0.6.0'
 __all__       = ['pofile', 'POFile', 'POEntry', 'mofile', 'MOFile', 'MOEntry',
                  'detect_encoding', 'escape', 'unescape', 'detect_encoding',]
 
     Arguments:
 
     ``pofile``
-        string, full or relative path to the po/pot file or its content to
-        parse.
+        string, full or relative path to the po/pot file or its content (data).
 
     ``wrapwidth``
         integer, the wrap width, only useful when the ``-w`` option was passed
     Arguments:
 
     ``mofile``
-        string, full or relative path to the mo file to parse.
+        string, full or relative path to the mo file or its content (data).
 
     ``wrapwidth``
         integer, the wrap width, only useful when the ``-w`` option was passed
             an instance of :class:`~polib._BaseEntry`.
         """
         return self.find(entry.msgid, by='msgid') is not None
+    
+    def __eq__(self, other):
+        return unicode(self) == unicode(other)
 
     def append(self, entry):
         """
                 contents = contents.decode(self.encoding)
         fhandle.write(contents)
         fhandle.close()
+        # set the file path if not set
+        if self.fpath is None and fpath:
+            self.fpath = fpath
 
     def find(self, st, by='msgid', include_obsolete_entries=False,
              msgctxt=False):
             string, allows to specify a specific message context for the
             search.
         """
-        for e in self:
+        if include_obsolete_entries:
+            entries = self[:]
+        else:
+            entries = [e for e in self if not e.obsolete]
+        for e in entries:
             if getattr(e, by) == st:
                 if msgctxt and e.msgctxt != msgctxt:
                     continue
                 return e
-        if include_obsolete_entries:
-            for e in self.obsolete_entries():
-                if getattr(e, by) == st:
-                    return e
         return None
 
     def ordered_metadata(self):
                 ordered_data.append((data, value))
             except KeyError:
                 pass
-        # the rest of the metadata won't be ordered there are no specs for this
+        # the rest of the metadata will be alphabetically ordered since there
+        # are no specs for this AFAIK
         keys = metadata.keys()
-        list(keys).sort()
+        keys.sort()
         for data in keys:
             value = metadata[data]
             ordered_data.append((data, value))
         entries = self.translated_entries()
         # the keys are sorted in the .mo file
         def cmp(_self, other):
-            if _self.msgid > other.msgid:
+            # msgfmt compares entries with msgctxt if it exists
+            self_msgid = _self.msgctxt and _self.msgctxt or _self.msgid
+            other_msgid = other.msgctxt and other.msgctxt or other.msgid
+            if self_msgid > other_msgid:
                 return 1
-            elif _self.msgid < other.msgid:
+            elif self_msgid < other_msgid:
                 return -1
             else:
                 return 0
         # add metadata entry
         entries.sort(cmp)
         mentry = self.metadata_as_entry()
-        mentry.msgstr = mentry.msgstr.replace('\\n', '').lstrip()
+        #mentry.msgstr = mentry.msgstr.replace('\\n', '').lstrip()
         entries = [mentry] + entries
         entries_len = len(entries)
         ids, strs = '', ''
         for e in entries:
             # For each string, we need size and file offset.  Each string is
             # NUL terminated; the NUL does not count into the size.
+            msgid = ''
+            if e.msgctxt:
+                # Contexts are stored by storing the concatenation of the
+                # context, a <EOT> byte, and the original string
+                msgid = self._encode(e.msgctxt + '\4')
             if e.msgid_plural:
                 indexes = e.msgstr_plural.keys()
                 indexes.sort()
                 msgstr = []
                 for index in indexes:
                     msgstr.append(e.msgstr_plural[index])
-                msgid = self._encode(e.msgid + '\0' + e.msgid_plural)
+                msgid += self._encode(e.msgid + '\0' + e.msgid_plural)
                 msgstr = self._encode('\0'.join(msgstr))
             else:
-                msgid = self._encode(e.msgid)
+                msgid += self._encode(e.msgid)
                 msgstr = self._encode(e.msgstr)
             offsets.append((len(ids), len(msgid), len(strs), len(msgstr)))
             ids  += msgid  + '\0'
             strs += msgstr + '\0'
+
         # The header is 7 32-bit unsigned integers.
         keystart = 7*4+16*entries_len
         # and the values start after the keys
             koffsets += [l1, o1+keystart]
             voffsets += [l2, o2+valuestart]
         offsets = koffsets + voffsets
-        output  = struct.pack("IIIIIII",
-                             0x950412de,        # Magic number
-                             0,                 # Version
-                             entries_len,       # # of entries
-                             7*4,               # start of key index
-                             7*4+entries_len*8, # start of value index
-                             0, keystart)       # size and offset of hash table
-        output += array.array("I", offsets).tostring()
+        # check endianness for magic number
+        if struct.pack('@h', 1) == struct.pack('<h', 1):
+            magic_number = MOFile.LITTLE_ENDIAN
+        else:
+            magic_number = MOFile.BIG_ENDIAN
+
+        output = struct.pack(
+            "Iiiiiii",
+            magic_number,      # Magic number
+            0,                 # Version
+            entries_len,       # # of entries
+            7*4,               # start of key index
+            7*4+entries_len*8, # start of value index
+            0, keystart        # size and offset of hash table
+                               # Important: we don't use hash tables
+        )              
+        output += array.array("i", offsets).tostring()
         output += ids
         output += strs
         return output
 
     def merge(self, refpot):
         """
-        FIXME: this could not work if encodings are different, needs thinking
-        and general refactoring of how polib handles encoding...
-
         Convenience method that merges the current pofile with the pot file
         provided. It behaves exactly as the gettext msgmerge utility:
 
     This class inherits the :class:`~polib._BaseFile` class and, by
     extension, the python ``list`` type.
     """
+    BIG_ENDIAN    = 0xde120495
+    LITTLE_ENDIAN = 0x950412de
 
     def __init__(self, *args, **kwargs):
         """
-        Constructor, accepts the following keyword arguments:
-
-        ``magic_number``
-            the magic_number of the binary file.
-
-        ``version``
-            the version of the mo file specification.
+        Constructor, accepts all keywords arguments accepted by 
+        :class:`~polib._BaseFile` class.
         """
         _BaseFile.__init__(self, *args, **kwargs)
         self.magic_number = None
         ret = []
         # write the msgctxt if any
         if self.msgctxt is not None:
-            ret += self._str_field("msgctxt", delflag, "", self.msgctxt)
+            ret += self._str_field("msgctxt", delflag, "", self.msgctxt, wrapwidth)
         # write the msgid
-        ret += self._str_field("msgid", delflag, "", self.msgid)
+        ret += self._str_field("msgid", delflag, "", self.msgid, wrapwidth)
         # write the msgid_plural if any
         if self.msgid_plural:
-            ret += self._str_field("msgid_plural", delflag, "", self.msgid_plural)
+            ret += self._str_field("msgid_plural", delflag, "", self.msgid_plural, wrapwidth)
         if self.msgstr_plural:
             # write the msgstr_plural if any
             msgstrs = self.msgstr_plural
             for index in keys:
                 msgstr = msgstrs[index]
                 plural_index = '[%s]' % index
-                ret += self._str_field("msgstr", delflag, plural_index, msgstr)
+                ret += self._str_field("msgstr", delflag, plural_index, msgstr, wrapwidth)
         else:
             # otherwise write the msgstr
-            ret += self._str_field("msgstr", delflag, "", self.msgstr)
+            ret += self._str_field("msgstr", delflag, "", self.msgstr, wrapwidth)
         ret.append('')
         ret = '\n'.join(ret)
 
         Returns the string representation of the entry.
         """
         return unicode(self).encode(self.encoding)
+    
+    def __eq__(self, other):
+        return unicode(self) == unicode(other)
 
-    def _str_field(self, fieldname, delflag, plural_index, field):
+    def _str_field(self, fieldname, delflag, plural_index, field, wrapwidth=78):
         lines = field.splitlines(True)
         if len(lines) > 1:
             lines = ['']+lines # start with initial empty line
         else:
-            lines = [field] # needed for the empty string case
+            if wrapwidth > 0 and len(field) > wrapwidth-(len(fieldname)+2):
+                 # Wrap the line but take field name into account
+                lines = ['']+ textwrap.wrap(field,
+                                            wrapwidth-(len(fieldname)+2),
+                                            drop_whitespace=False,
+                                            break_long_words=False)
+            else:
+                lines = [field] # needed for the empty string case
+            #lines = [field] # needed for the empty string case
         if fieldname.startswith('previous_'):
             # quick and dirty trick to get the real field name
             fieldname = fieldname[9:]
         Returns the unicode representation of the entry.
         """
         if self.obsolete:
-            return _BaseEntry.__unicode__(self)
+            return _BaseEntry.__unicode__(self, wrapwidth)
         ret = []
         # comment first, if any (with text wrapping as xgettext does)
         if self.comment != '':
         # previous context and previous msgid/msgid_plural
         if self.previous_msgctxt:
             ret += self._str_field("previous_msgctxt", "#| ", "",
-                                   self.previous_msgctxt)
+                                   self.previous_msgctxt, wrapwidth)
         if self.previous_msgid:
             ret += self._str_field("previous_msgid", "#| ", "", 
-                                   self.previous_msgid)
+                                   self.previous_msgid, wrapwidth)
         if self.previous_msgid_plural:
             ret += self._str_field("previous_msgid_plural", "#| ", "", 
-                                   self.previous_msgid_plural)
+                                   self.previous_msgid_plural, wrapwidth)
 
-        ret.append(_BaseEntry.__unicode__(self))
+        ret.append(_BaseEntry.__unicode__(self, wrapwidth))
         ret = '\n'.join(ret)
 
         if type(ret) != types.UnicodeType:
     """
     A class to parse binary mo files.
     """
-    BIG_ENDIAN    = 0xde120495
-    LITTLE_ENDIAN = 0x950412de
 
     def __init__(self, mofile, *args, **kwargs):
         """
             check_for_duplicates=kwargs.get('check_for_duplicates', False)
         )
 
-    def parse_magicnumber(self):
-        """
-        Parse the magic number and raise an exception if not valid.
-        """
-
     def parse(self):
         """
         Build the instance with the file handle provided in the
         constructor.
         """
+        # parse magic number
         magic_number = self._readbinary('<I', 4)
-        if magic_number == self.LITTLE_ENDIAN:
+        if magic_number == MOFile.LITTLE_ENDIAN:
             ii = '<II'
-        elif magic_number == self.BIG_ENDIAN:
+        elif magic_number == MOFile.BIG_ENDIAN:
             ii = '>II'
         else:
             raise IOError('Invalid mo file, magic number is incorrect !')
 #!/bin/sh
-
-/usr/bin/env python tests/tests.py
+if which coverage > /dev/null; then
+    coverage run tests/tests.py
+    coverage report
+else
+    /usr/bin/env python tests/tests.py
+fi

File tests/test_iso-8859-15.po

-# French Translation for Vim
-# 
-# Do ":help uganda"  in Vim to read copying and usage conditions.
-# Do ":help credits" in Vim to see a list of people who contributed.
-# 
-#  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
-# 
-# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
-# 
-# Ce fichier est perfectible ! Le gros du travail a �t� fait, mais la touche
-# finale reste � apporter.
-# 
-# Consultez http://version.francaise.free.fr/ pour les mises � jour de ce
-# fichier, ainsi que pour les versions fran�aises des menus et du tutoriel.
-# 
-# Si vous avez des remarques � faire sur ce fichier, �crivez �
-# version.francaise@free.fr. Cette adresse est consult�e r�guli�rement.
-# 
-# En cas d'erreur technique au niveau de version.francaise@free.fr, ou si vous
-# ne recevez aucune r�ponse plusieurs jours apr�s votre envoi, v�rifiez si un
-# message n'a pas �t� post� sur le site web. Si cette option se r�v�le
-# infructueuse, essayez de me contacter � mes autres adresses, chez free.fr ou
-# chez yahoo.com. Mon nom d'utilisateur est la concat�nation de mon pr�nom et
-# de mon nom.
-# 
-# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
-# 
-# This file still needs work! The rough work has been done, some polishing
-# needs to be applied.
-# 
-# Go to http://version.francaise.free.fr/ for updates to this file, and to the
-# French versions of the menus and the tutor.
-# 
-# Send your comments about this file by email, to version.francaise@free.fr.
-# This address is checked regularly.
-# 
-# In case of technical error at version.francaise@free.fr, or if you don't get
-# any answer several days after writing, check if there is a message at
-# http://version.francaise.free.fr/. If this option fails to work, try to
-# write to my other addresses at free.fr and yahoo.com. Concatene my first and
-# last name to get my username.
-# 
-# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
-# 
-# ChangeLog:
-# 
-# 2002-03-04	AB	Bulk translation (done in 16 hours!)
-# 			  - That's 1.35 msg/min for ya
-# 2002-03-23	AB	Initial release (ships with Vim 6.1)
-# 			  - Much cleaner than the first version :)
-# 2002-09-30	AB	Patch #200 update (released on web site)
-# 			  - Five new messages
-# 			  - Corrected three typos in printf()-style expressions
-# 			    (thanks Mik)
-# 2003-05-09	AB	Patch #474 update (unreleased)
-# 			  - Polishing done on three more files (the three first
-# 			    ones have been reworked, too)
-# 			  - Many comments have been added in the polished
-# 			    section
-# 2003-05-29	AB	Vim 6.2 pending release
-# 			  - Finish work on Vim 6.1.474 (quickly!)
-# 			  - Thirty-three new messages (rough translation)
-# 			  - Some of the English messages have been altered
-# 			    (fuzzy entries), deal with it
-# 2003-05-29	AB	Vim 6.2 release candidate (sent to Bram Moolenaar)
-# 			  - Update to Vim 6.2f.014 (quickly, too)
-# 			  - Fifty-nine new messages (rough translation)
-# 			  - Hundreds of error messages numbers added (wow)
-# 2006-04-15    DB      Vim 7.0 first draft, based on fr.po 7.0c03
-#                         - 285 new messages.
-# 2006-04-17    DB      VIM 7.0 second draft, still 7.0c03
-#                         - (check.vim) Fixed 2 wrong translated messages.
-# 2006-04-19    DB      VIM 7.0e02
-#                         - 15 new messages.
-# 2006-04-19    DB      VIM 7.0e03
-#                         - (check.vim) Fixed wrong messages.
-# 2006-05-01    DB      VIM 7.0g
-#                         - 1 message fixed, 2 messages translated.
-# 2006-05-02    DB      VIM 7.0g
-#                         - 3 message fixed.
-# 
-# Translated:	 1694/1694 (100.00%)
-# 
-# Polishing done on:
-#  buffer.c
-#  diff.c
-#  digraph.c
-#  edit.c
-#  eval.c
-#  ex_cmds.c
-# 
-# Other files still to do.
-# 
-# Notations used in the comments of the unpolished part of this file:
-# TODO		There's work to do there, and it's important
-# todo		There's work to do there, but it's less important
-# (no comment)	Perhaps there's work to do there?
-# 
+# test in ISO-8859-15 charset
 msgid ""
 msgstr ""
 "Project-Id-Version: Vim(Fran�ais)\n"
 "Content-Type: text/plain; charset=ISO_8859-15\n"
 "Content-Transfer-Encoding: 8bit\n"
 
+#. Added for wrapping test, this is a long extracted comment that should be
+#. wrapped by polib, blah, blah, foobar
+# Added for wrapping test, this is a long translated comment that should be
+# wrapped by polib, blah, blah, foobar
+#: /foo/bar/baz/spam.py:710
+#: /foo/bar/baz/spam-ham-foo-bar-baz-spam-something-bar.py
+msgid "Test wrapping"
+msgstr "Test wrapping"
+
 # Added for previous msgid/msgid_plural/msgctxt testing
 #| msgctxt "@previous_context"
 #| msgid "previous untranslated entry"
 #      explicite.
 msgid "E83: Cannot allocate buffer, using other one..."
 msgstr ""
-"E83: L'allocation du tampon a �chou� : arr�tez Vim, lib�rez de la m�moire"
-
-msgid "E515: No buffers were unloaded"
-msgstr "E515: Aucun tampon n'a �t� d�charg�"
-
-msgid "E516: No buffers were deleted"
-msgstr "E516: Aucun tampon n'a �t� effac�"
-
-msgid "E517: No buffers were wiped out"
-msgstr "E517: Aucun tampon n'a �t� d�truit"
-
-msgid "1 buffer unloaded"
-msgstr "1 tampon a �t� d�charg�"
-
-#, c-format
-msgid "%d buffers unloaded"
-msgstr "%d tampons ont �t� d�charg�s"
-
-msgid "1 buffer deleted"
-msgstr "1 tampon a �t� effac�"
-
-#, c-format
-msgid "%d buffers deleted"
-msgstr "%d tampons ont �t� effac�s"
-
-msgid "1 buffer wiped out"
-msgstr "1 tampon a �t� d�truit"
-
-#, c-format
-msgid "%d buffers wiped out"
-msgstr "%d tampons ont �t� d�truits"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "E84: No modified buffer found"
-msgstr "E84: Aucun tampon n'est modifi�"
-
-#. back where we started, didn't find anything.
-msgid "E85: There is no listed buffer"
-msgstr "E85: Aucun tampon n'est list�"
-
-#, c-format
-msgid "E86: Buffer %ld does not exist"
-msgstr "E86: Le tampon %ld n'existe pas"
-
-# AB - Je ne suis pas s�r que l'on puisse obtenir ce message.
-msgid "E87: Cannot go beyond last buffer"
-msgstr "E87: Impossible d'aller apr�s le dernier tampon"
-
-# AB - Je ne suis pas s�r que l'on puisse obtenir ce message.
-msgid "E88: Cannot go before first buffer"
-msgstr "E88: Impossible d'aller avant le premier tampon"
-
-#, c-format
-msgid "E89: No write since last change for buffer %ld (add ! to override)"
-msgstr ""
-"E89: Le tampon %ld n'a pas �t� enregistr� (ajoutez ! pour passer outre)"
-
-msgid "E90: Cannot unload last buffer"
-msgstr "E90: Impossible de d�charger le dernier tampon"
-
-msgid "W14: Warning: List of file names overflow"
-msgstr "W14: Alerte: La liste des noms de fichier d�borde"
-
-# AB - Vu le code source, la version fran�aise est meilleure que la
-#      version anglaise. Ce message est similaire au message E86.
-#, c-format
-msgid "E92: Buffer %ld not found"
-msgstr "E92: Le tampon %ld n'existe pas"
-
-# AB - Il faut respecter l'esprit plus que la lettre.
-#, c-format
-msgid "E93: More than one match for %s"
-msgstr "E93: Plusieurs tampons correspondent � %s"
-
-#, c-format
-msgid "E94: No matching buffer for %s"
-msgstr "E94: Aucun tampon ne correspond � %s"
-
-#, c-format
-msgid "line %ld"
-msgstr "ligne %ld"
-
-msgid "E95: Buffer with this name already exists"
-msgstr "E95: Un tampon porte d�j� ce nom"
-
-msgid " [Modified]"
-msgstr "[Modifi�]"
-
-# AB - "[In�dit�]" est plus correct, mais sonne faux.
-msgid "[Not edited]"
-msgstr "[Non �dit�]"
-
-msgid "[New file]"
-msgstr "[Nouveau fichier]"
-
-msgid "[Read errors]"
-msgstr "[Erreurs de lecture]"
-
-# AB - La version courte, "[RO]", devrait-elle �tre traduite par "[LS]" ?
-#      Il faudrait faire un sondage aupr�s des utilisateurs francophones.
-msgid "[readonly]"
-msgstr "[lecture-seule]"
+"E83: L'allocation du tampon a �chou� : arr�tez Vim, lib�rez de la "
+"m�moire"
 
 #, c-format
 msgid "1 line --%d%%--"
 msgstr "1 ligne --%d%%--"
 
-#, c-format
-msgid "%ld lines --%d%%--"
-msgstr "%ld lignes --%d%%--"
-
-# AB - Faut-il remplacer "sur" par "de" ?
-# DB - Mon avis : oui.
-#, c-format
-msgid "line %ld of %ld --%d%%-- col "
-msgstr "ligne %ld sur %ld --%d%%-- col "
-
-# DB - Je trouvais [Aucun fichier] (VO : [No file]) plus naturel
-#      lors du lancement de Vim en mode graphique (ce message
-#      appara�t notamment dans le titre de la fen�tre).
-msgid "[No Name]"
-msgstr "[Aucun nom]"
-
-#. must be a help buffer
-msgid "help"
-msgstr "aide"
-
-msgid "[Help]"
-msgstr "[Aide]"
-
-# AB - "Pr�visualisation" prend beaucoup de place. "Pr�vision" est une
-#      traduction litt�rale et br�ve, mais qui risque fort d'�tre mal
-# comprise.
-#      J'ai finalement choisi d'utiliser une abr�viation, mais cela ne me
-#      satisfait pas.
-msgid "[Preview]"
-msgstr "[Pr�visu]"
-
-msgid "All"
-msgstr "Tout"
-
-msgid "Bot"
-msgstr "Bas"
-
-# AB - Attention, on passe de trois � quatre lettres.
-msgid "Top"
-msgstr "Haut"
-
-#, c-format
-msgid ""
-"\n"
-"# Buffer list:\n"
-msgstr ""
-"\n"
-"# Liste des tampons :\n"
-
-# DB - TODO : Trouver une traduction valable et attest�e pour "location".
-msgid "[Location List]"
-msgstr "[Liste des emplacements]"
-
-msgid "[Quickfix List]"
-msgstr "[Liste Quickfix]"
-
-msgid ""
-"\n"
-"--- Signs ---"
-msgstr ""
-"\n"
-"--- Symboles ---"
-
-#, c-format
-msgid "Signs for %s:"
-msgstr "Symboles dans %s :"
-
-#, c-format
-msgid "    line=%ld  id=%d  name=%s"
-msgstr "    ligne=%ld  id=%d  nom=%s"
-
-# AB - Je n'ai pas trouv� de traduction satisfaisante au verbe "diff". Comme
-#      Vim fait en pratique appel au programme "diff" pour evaluer les
-#      diff�rences entre fichiers, "to diff" a �t� traduit par "utiliser diff"
-#      et d'autres expressions appropri�es.
-#, c-format
-msgid "E96: Can not diff more than %ld buffers"
-msgstr "E96: Impossible d'utiliser diff sur plus de %ld tampons"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "E97: Cannot create diffs"
-msgstr "E97: diff ne fonctionne pas"
-
-# AB - Ceci est un titre de bo�te de dialogue.
-msgid "Patch file"
-msgstr "S�lectionner un patch - Vim"
-
-# AB - La version fran�aise est correcte, mais trop technique.
-# AB - "output" est difficile � traduire clairement.
-msgid "E98: Cannot read diff output"
-msgstr "E98: Le fichier interm�diaire produit par diff n'a pu �tre lu"
-
-msgid "E99: Current buffer is not in diff mode"
-msgstr "E99: Le tampon courant n'est pas en mode diff"
-
-msgid "E100: No other buffer in diff mode"
-msgstr "E100: Aucun autre tampon n'est en mode diff"
-
-# AB - La version fran�aise est meilleure que la version anglaise, mais elle
-#      peut �tre am�lior�e.
-msgid "E101: More than two buffers in diff mode, don't know which one to use"
-msgstr "E101: Plus de deux tampons sont en mode diff, soyez plus pr�cis"
-
-#, c-format
-msgid "E102: Can't find buffer \"%s\""
-msgstr "E102: Le tampon %s est introuvable"
-
-#, c-format
-msgid "E103: Buffer \"%s\" is not in diff mode"
-msgstr "E103: Le tampon %s n'est pas en mode diff"
-
-msgid "E787: Buffer changed unexpectedly"
-msgstr "E787: Le tampon a �t� modifi� inopin�ment"
-
-# AB - Je cherche une traduction plus concise pour "escape".
-msgid "E104: Escape not allowed in digraph"
-msgstr "E104: Un digraphe ne peut contenir le caract�re d'�chappement"
-
-# AB - La version fran�aise est trop verbeuse.
-msgid "E544: Keymap file not found"
-msgstr "E544: Le fichier descripteur de clavier est introuvable"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "E105: Using :loadkeymap not in a sourced file"
-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)"
-
 #. ctrl_x_mode == 0, ^P/^N compl.
 # 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 "'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"
-
-#, c-format
-msgid "Scanning tags."
-msgstr "Examen des marqueurs."
-
-# 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"
-
-#. showmode might reset the internal line pointers, so it must
-#. * be called before line = ml_get(), or when this address is no
-#. * longer needed.  -- Acevedo.
-#. 
-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 "E684: list index out of range: %ld"
-msgstr "E684: index de Liste hors limites : %ld au-del� de la fin"
-
-#, c-format
-msgid "E121: Undefined variable: %s"
-msgstr "E121: Variable non d�finie : %s"
-
-msgid "E111: Missing ']'"
-msgstr "E111: ']' manquant"
-
-#, c-format
-msgid "E686: Argument of %s must be a List"
-msgstr "E686: L'argument de %s doit �tre une Liste"
-
-#, c-format
-msgid "E712: Argument of %s must be a List or Dictionary"
-msgstr "E712: L'argument de %s doit �tre une Liste ou un Dictionnaire"
-
-msgid "E713: Cannot use empty key for Dictionary"
-msgstr "E713: Impossible d'utiliser une cl� vide dans un Dictionnaire"
-
-msgid "E714: List required"
-msgstr "E714: Liste requise"
-
-msgid "E715: Dictionary required"
-msgstr "E715: Dictionnaire requis"
-
-# DB : Suggestion
-#, c-format
-msgid "E118: Too many arguments for function: %s"
-msgstr "E118: La fonction %s a re�u trop d'arguments"
-
-#, c-format
-msgid "E716: Key not present in Dictionary: %s"
-msgstr "E716: La cl� %s n'existe pas dans le Dictionnaire"
-
-#, c-format
-msgid "E122: Function %s already exists, add ! to replace it"
-msgstr "E122: La fonction %s existe d�j� (ajoutez ! pour la remplacer)"
-
-msgid "E717: Dictionary entry already exists"
-msgstr "E717: Une entr�e du Dictionnaire porte d�j� ce nom"
-
-msgid "E718: Funcref required"
-msgstr "E718: R�f�rence de fonction (Funcref) requise"
-
-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 "E130: Unknown function: %s"
-msgstr "E130: Fonction inconnue : %s"
-
-#, c-format
-msgid "E461: Illegal variable name: %s"
-msgstr "E461: Nom de variable invalide : %s"
-
-# 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 "E689: Can only index a List or Dictionary"
-msgstr "E689: Seul une Liste ou un Dictionnaire peut �tre index�"
-
-msgid "E708: [:] must come last"
-msgstr "E709: [:] ne peut �tre sp�cifi� qu'en dernier"
-
-msgid "E709: [:] requires a List value"
-msgstr "E709: [:] requiert une Liste"
-
-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 "E690: Missing \"in\" after :for"
-msgstr "E690: \"in\" manquant apr�s :for"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-# AB - Je suis partag� entre la concision d'une traduction assez litt�rale et
-#      la lourdeur d'une traduction plus correcte.
-#, c-format
-msgid "E107: Missing braces: %s"
-msgstr "E107: Il manque '(' apr�s %s"
-
-#, c-format
-msgid "E108: No such variable: \"%s\""
-msgstr "E108: Variable inexistante : %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 '?'"
-msgstr "E109: Il manque ':' apr�s '?'"
-
-msgid "E691: Can only compare List with List"
-msgstr "E691: Une Liste ne peut �tre compar�e qu'avec une Liste"
-
-msgid "E692: Invalid operation for Lists"
-msgstr "E692: Op�ration invalide avec les Listes"
-
-msgid "E735: Can only compare Dictionary with Dictionary"
-msgstr "E735: Un Dictionnaire ne peut �tre compar� qu'avec un Dictionnaire"
-
-msgid "E736: Invalid operation for Dictionary"
-msgstr "E736: Op�ration invalide avec les Dictionnaires"
-
-# DB - todo : Traduction valable (et courte) pour Funcref ?
-msgid "E693: Can only compare Funcref with Funcref"
-msgstr "E693: Une Funcref ne peut �tre compar�e qu'� une Funcref"
-
-msgid "E694: Invalid operation for Funcrefs"
-msgstr "E694: Op�ration invalide avec les Funcrefs"
-
-msgid "E110: Missing ')'"
-msgstr "E110: ')' manquant"
-
-msgid "E695: Cannot index a Funcref"
-msgstr "E695: Impossible d'indexer une Funcref"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-#, c-format
-msgid "E112: Option name missing: %s"
-msgstr "E112: Il manque un nom d'option apr�s %s"
-
-#, c-format
-msgid "E113: Unknown option: %s"
-msgstr "E113: Option inconnue : %s"
-
-# AB - La version fran�aise est meilleure que la version anglaise, qui est
-#      erron�e, d'ailleurs : il s'agit d'une "double quote" et non d'une
-#      "quote".
-#, c-format
-msgid "E114: Missing quote: %s"
-msgstr "E114: Il manque \" � la fin de %s"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-#, c-format
-msgid "E115: Missing quote: %s"
-msgstr "E115: Il manque ' � la fin de %s"
-
-#, c-format
-msgid "E696: Missing comma in List: %s"
-msgstr "E696: Il manque une virgule dans la Liste %s"
-
-#, c-format
-msgid "E697: Missing end of List ']': %s"
-msgstr "E697: Il manque ']' � la fin de la Liste %s"
-
-#, c-format
-msgid "E720: Missing colon in Dictionary: %s"
-msgstr "E720: Il manque ':' dans le Dictionnaire %s"
-
-#, c-format
-msgid "E721: Duplicate key in Dictionary: \"%s\""
-msgstr "E721: Cl� \"%s\" dupliqu�e dans le Dictionnaire"
-
-#, c-format
-msgid "E722: Missing comma in Dictionary: %s"
-msgstr "E722: Il manque une virgule dans le Dictionnaire %s"
-
-#, c-format
-msgid "E723: Missing end of Dictionary '}': %s"
-msgstr "E723: Il manque '}' � la fin du Dictionnaire %s"
-
-msgid "E724: variable nested too deep for displaying"
-msgstr "E724: variable trop imbriqu�e pour �tre afficher"
-
-#, c-format
-msgid "E117: Unknown function: %s"
-msgstr "E117: Fonction inconnue : %s"
-
-#, c-format
-msgid "E119: Not enough arguments for function: %s"
-msgstr "E119: La fonction %s n'a pas re�u assez d'arguments"
-
-#, c-format
-msgid "E120: Using <SID> not in a script context: %s"
-msgstr "E120: <SID> utilis� en dehors d'un script : %s"
-
-#, c-format
-msgid "E725: Calling dict function without Dictionary: %s"
-msgstr "E725: Appel d'une fonction � dict � sans Dictionnaire : %s"
-
-msgid "E699: Too many arguments"
-msgstr "E699: Trop d'arguments"
-
-msgid "E785: complete() can only be used in Insert mode"
-msgstr "E785: complete() n'est utilisable que dans le mode Insertion"
-
-#. * Yes this is ugly, I don't particularly like it either.  But doing it
-#. * this way has the compelling advantage that translations need not to
-#. * be touched at all.  See below what 'ok' and 'ync' are used for.
-#. 
-# AB - Texte par d�faut du bouton de la bo�te de dialogue affich�e par la
-#      fonction confirm().
-msgid "&Ok"
-msgstr "&Ok"
-
-#, c-format
-msgid "E737: Key already exists: %s"
-msgstr "E737: un mappage existe d�j� pour %s"
-
-#, c-format
-msgid "+-%s%3ld lines: "
-msgstr "+-%s%3ld lignes : "
-
-#, c-format
-msgid "E700: Unknown function: %s"
-msgstr "E700: Fonction inconnue : %s"
-
-# AB - Textes des boutons de la bo�te de dialogue affich�e par inputdialog().
-msgid ""
-"&OK\n"
-"&Cancel"
-msgstr ""
-"&Ok\n"
-"&Annuler"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "called inputrestore() more often than inputsave()"
-msgstr "inputrestore() a �t� appel� plus de fois qu'inputsave()"
-
-msgid "E786: Range not allowed"
-msgstr "E786: Les plages ne sont pas autoris�s"
-
-msgid "E701: Invalid type for len()"
-msgstr "E701: Type invalide avec len()"
-
-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>"
-
-# AB - � mon avis, la version anglaise est erron�e.
-# DB : V�rifier
-msgid "E240: No connection to Vim server"
-msgstr "E240: Pas de connexion au serveur X"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-#, c-format
-msgid "E241: Unable to send to %s"
-msgstr "E241: L'envoi au serveur %s � �chou�"
-
-msgid "E277: Unable to read a server reply"
-msgstr "E277: Impossible de lire la r�ponse du serveur"
-
-msgid "E655: Too many symbolic links (cycle?)"
-msgstr "E655: Trop de liens symboliques (cycle ?)"
-
-# 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"
-
-msgid "E702: Sort compare function failed"
-msgstr "E702: La fonction de comparaison de sort() a �chou�"
-
-msgid "(Invalid)"
-msgstr "(Invalide)"
-
-msgid "E677: Error writing temp file"
-msgstr "E677: Erreur lors de l'�criture du fichier temporaire"
-
-msgid "E703: Using a Funcref as a number"
-msgstr "E703: Utilisation d'une Funcref comme un Nombre"
-
-msgid "E745: Using a List as a number"
-msgstr "E745: Utilisation d'une Liste comme un Nombre"
-
-msgid "E728: Using a Dictionary as a number"
-msgstr "E728: Utilisation d'un Dictionnaire comme un Nombre"
-
-msgid "E729: using Funcref as a String"
-msgstr "E729: Utilisation d'une Funcref comme une Cha�ne"
-
-msgid "E730: using List as a String"
-msgstr "E730: Utilisation d'une Liste comme une Cha�ne"
-
-msgid "E731: using Dictionary as a String"
-msgstr "E731: Utilisation d'un Dictionnaire comme une Cha�ne"
-
-#, 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"
-
-# DB : On doit pouvoir trouver nettement mieux que �a.
-#, c-format
-msgid "E706: Variable type mismatch for: %s"
-msgstr "E706: Type de variable incoh�rent pour %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 plus consistante que la version anglaise.
-# AB - Je suis partag� entre la concision d'une traduction assez litt�rale et
-#      la lourdeur d'une traduction plus correcte.
-#, c-format
-msgid "E124: Missing '(': %s"
-msgstr "E124: Il manque '(' apr�s %s"
-
-#, c-format
-msgid "E125: Illegal argument: %s"
-msgstr "E125: Argument invalide : %s"
-
-msgid "E126: Missing :endfunction"
-msgstr "E126: Il manque :endfunction"
-
-# DB - Le contenu du "c-format" est le nom de la fonction.
-#, c-format
-msgid "E746: Function name does not match script file name: %s"
-msgstr "E746: Le nom de la fonction %s ne correspond pas le nom du script"
-
-msgid "E129: Function name required"
-msgstr "E129: Nom de fonction requis"
-
-#, c-format
-msgid "E128: Function name must start with a capital or contain a colon: %s"
-msgstr "E128: La fonction %s ne commence pas par une majuscule ou contient ':'"
-
-# AB - Il est difficile de cr�er une version fran�aise qui fasse moins de 80
-#      caract�res de long, nom de la fonction compris : "It is in use" est une
-#      expression tr�s dense. Traductions possibles : "elle est utilis�e",
-#      "elle s'ex�cute" ou "elle est occup�e".
-#, c-format
-msgid "E131: Cannot delete function %s: It is in use"
-msgstr "E131: Impossible d'effacer %s : cette fonction est utilis�e"
-
-# AB - V�rifier dans la litt�rature technique s'il n'existe pas une meilleure
-#      traduction pour "function call depth".
-msgid "E132: Function call depth is higher than 'maxfuncdepth'"
-msgstr ""
-"E132: La profondeur d'appel de fonction est sup�rieure � 'maxfuncdepth'"
-
-# AB - Ce texte fait partie d'un message de d�bogage.
-#, c-format
-msgid "calling %s"
-msgstr "appel de %s"
-
-# AB - V�rifier.
-#, c-format
-msgid "%s aborted"
-msgstr "%s annul�e"
-
-# AB - Ce texte fait partie d'un message de d�bogage.
-#, c-format
-msgid "%s returning #%ld"
-msgstr "%s a retourn� #%ld"
-
-# AB - Ce texte fait partie d'un message de d�bogage.
-#, c-format
-msgid "%s returning %s"
-msgstr "%s a retourn� \"%s\""
-
-# AB - Ce texte fait partie d'un message de d�bogage.
-#, c-format
-msgid "continuing in %s"
-msgstr "de retour dans %s"
-
-msgid "E133: :return not inside a function"
-msgstr "E133: :return en dehors d'une fonction"
-
-# AB - La version fran�aise est capitalis�e pour �tre en accord avec les
-# autres
-#      commentaires enregistr�s dans le fichier viminfo.
-#, c-format
-msgid ""
-"\n"
-"# global variables:\n"
-msgstr ""
-"\n"
-"# Variables globales:\n"
-
-# DB - Plus pr�cis ("la derni�re fois") ?
-msgid ""
-"\n"
-"\tLast set from "
-msgstr ""
-"\n"
-"\tModifi� la derni�re fois dans "
-
-# 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 "line %ld: %s"
-msgstr "ligne %ld : %s"
-
-#, c-format
-msgid "cmd: %s"
-msgstr "cmde : %s"
-
-#, 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"
-
-msgid "E750: First use :profile start <fname>"
-msgstr "E750: Utilisez d'abord :profile start <nomfichier>"
-
-# 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.
-msgid "Save As"
-msgstr "Enregistrer sous - Vim"
-
-# AB - "changes to" est redondant et a �t� omis de la version fran�aise.
-#, c-format
-msgid "Save changes to \"%s\"?"
-msgstr "Enregistrer \"%s\" ?"
-
-# AB - Si les parenth�ses posent probl�me, il faudra remettre les guillements
-#      ci-dessus.
-msgid "Untitled"
-msgstr "(sans titre)"
-
-# AB - Il faut respecter l'esprit plus que la lettre.
-# AB - Ce message est similaire au message E89.
-#, c-format
-msgid "E162: No write since last change for buffer \"%s\""
-msgstr "E162: Le tampon %s n'a pas �t� enregistr�"
-
-msgid "Warning: Entered other buffer unexpectedly (check autocommands)"
-msgstr "Alerte: Entr�e inattendue dans un autre tampon (v�rifier autocmdes)"
-
-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 "E432: 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 'runtimepath': \"%s\""
-msgstr "introuvable dans 'runtimepath' : \"%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"
-
-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
-msgid "Current %slanguage: \"%s\""
-msgstr "Langue courante pour %s: \"%s\""
-
-#, c-format
-msgid "E197: Cannot set language to \"%s\""
-msgstr "E197: Impossible de choisir la langue \"%s\""
-
-#, c-format
-msgid "<%s>%s%s  %d,  Hex %02x,  Octal %03o"
-msgstr "<%s>%s%s  %d,  Hexa %02x,  Octal %03o"
-
-#, c-format
-msgid "> %d, Hex %04x, Octal %o"
-msgstr "> %d, Hexa %04x, Octal %o"
-
-#, c-format
-msgid "> %d, Hex %08x, Octal %o"
-msgstr "> %d, Hexa %08x, Octal %o"
-
-# AB - La version anglaise est tr�s mauvaise, ce qui m'oblige a inventer une
-#      version fran�aise.
-msgid "E134: Move lines into themselves"
-msgstr "E134: La destination est dans la plage d'origine"
-
-msgid "1 line moved"
-msgstr "1 ligne d�plac�e"
-
-#, c-format
-msgid "%ld lines moved"
-msgstr "%ld lignes d�plac�es"
-
-#, c-format
-msgid "%ld lines filtered"
-msgstr "%ld lignes filtr�es"
-
-# AB - J'ai volontairement omis l'ast�risque initiale car je pense que le
-#      motif "Filter*" d�crit plus clairement les quatre autocommandes li�es
-#      au filtrage (FilterReadPre, FilterReadPost, FilterWritePre et
-#      FilterWritePost) que "*Filter*" que l'on confond avec une tentative de
-#      mise en valeur.
-msgid "E135: *Filter* Autocommands must not change current buffer"
-msgstr ""
-"E135: Les autocommandes Filter* ne doivent pas changer le tampon courant"
-
-# AB - Il faut respecter l'esprit plus que la lettre. Dans le cas pr�sent,
-#      nettement plus.
-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"
-
-# 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"
-
-# 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\""
-
-#. Write the info:
-#, 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.
-#, c-format
-msgid ""
-"# You may edit it if you're careful!\n"
-"\n"
-msgstr ""
-"# Vous pouvez l'�diter, mais soyez prudent.\n"
-"\n"
-
-#, c-format
-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"
-
-# AB - Ceci est un contenu de bo�te de dialogue (�ventuellement en mode
-# texte).
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "Write partial file?"
-msgstr "Perdre une partie du fichier ?"
-
-# AB - La version fran�aise est nettement meilleure que la version anglaise.
-msgid "E140: Use ! to write partial buffer"
-msgstr ""
-"E140: Une partie du fichier serait perdue (ajoutez ! pour passer outre)"
-
-#, c-format
-msgid "Overwrite existing file \"%s\"?"
-msgstr "�craser le fichier %s existant ?"
-
-#, c-format
-msgid "Swap file \"%s\" exists, overwrite anyway?"
-msgstr "Le fichier d'�change \"%s\" existe d�j�, l'�craser ?"
-
-# DB - Un peu long � mon avis.
-#, c-format
-msgid "E768: Swap file exists: %s (:silent! overrides)"
-msgstr "E768: Le fichier d'�change %s existe d�j� (:silent! pour passer outre)"
-
-#, c-format
-msgid "E141: No file name for buffer %ld"
-msgstr "E141: Pas de nom de fichier pour le tampon %ld"
-
-# AB - Il faut respecter l'esprit plus que la lettre.
-msgid "E142: File not written: Writing is disabled by 'write' option"
-msgstr ""
-"E142: L'option 'nowrite' est activ�e et emp�che toute �criture du fichier"
-
-# AB - Ceci est un contenu de bo�te de dialogue (�ventuellement en mode
-# texte).
-# AB - "activ�e pour" n'est pas une formulation tr�s heureuse.
-#, c-format
-msgid ""
-"'readonly' option is set for \"%s\".\n"
-"Do you wish to write anyway?"
-msgstr ""
-"L'option 'readonly' est activ�e pour \"%s\".\n"
-"Voulez-vous tout de m�me enregistrer ?"
-
-# AB - Ceci est un titre de bo�te de dialogue.
-msgid "Edit File"
-msgstr "Ouvrir un fichier - Vim"
-
-# AB - Il faut respecter l'esprit plus que la lettre.
-# AB - J'h�site � ajouter "� sa cr�ation" apr�s le nom du tampon. Ce message
-#      devrait n'�tre affich� qu'apr�s une tentative d'ouverture de fichier,
-#      la version actuelle devrait donc suffire.
-# DB - Suggestion : "nouveau tampon" ?
-#, c-format
-msgid "E143: Autocommands unexpectedly deleted new buffer %s"
-msgstr "E143: Une autocommande a effac� le nouveau tampon %s"
-
-msgid "E144: non-numeric argument to :z"
-msgstr "E144: L'argument de :z n'est pas num�rique"
-
-# AB - La version fran�aise fera peut-�tre mieux passer l'am�re pillule.
-#      La consultation de l'aide donnera l'explication compl�te � ceux qui
-#      ne comprendraient pas � quoi ce message est d�.
-msgid "E145: Shell commands not allowed in rvim"
-msgstr "E145: Les commandes externes sont indisponibles dans rvim"
-
-msgid "E146: Regular expressions can't be delimited by letters"
-msgstr ""
-"E146: Les expressions r�guli�res ne peuvent pas �tre d�limit�es par des "
-"lettres"
-
-#, c-format
-msgid "replace with %s (y/n/a/q/l/^E/^Y)?"
-msgstr "remplacer par %s (y/n/a/q/l/^E/^Y)?"
-
-msgid "(Interrupted) "
-msgstr "(Interrompu) "
-
-msgid "1 match"
-msgstr "1 correspondance"
-
-msgid "1 substitution"
-msgstr "1 substitution"
-
-#, c-format
-msgid "%ld matches"
-msgstr "%ld correspondances"
-
-#, c-format
-msgid "%ld substitutions"
-msgstr "%ld substitutions"
-
-msgid " on 1 line"
-msgstr " sur 1 ligne"
-
-#, c-format
-msgid " on %ld lines"
-msgstr " sur %ld lignes"
-
-# AB - Il faut respecter l'esprit plus que la lettre.
-# AB - Ce message devrait contenir une r�f�rence � :vglobal.
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global ne peut pas ex�cuter :global"
-
-# AB - Ce message devrait contenir une r�f�rence � :vglobal.
-msgid "E148: Regular expression missing from global"
-msgstr "E148: :global doit �tre suivi par une expression r�guli�re"
-
-# AB - Ce message est utilis� lorsque :vglobal ne trouve rien. Lorsque :global
-#      ne trouve rien, c'est "Pattern not found: %s" / "Motif introuvable: %s"
-#      qui est utilis�.
-#, c-format
-msgid "Pattern found in every line: %s"
-msgstr "Motif trouv� dans toutes les ligne : %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 ?
-#, c-format
-msgid ""
-"\n"
-"# Last Substitute String:\n"
-"$"
-msgstr ""
-"\n"
-"# Derni�res cha�nes de substitution :\n"
-"$"
-
-# This message should *so* be E42!
-msgid "E478: Don't panic!"
-msgstr "E478: Pas de panique !"
-
-#, c-format
-msgid "E661: Sorry, no '%s' help for %s"
-msgstr "E661: D�sol�, aucune aide en langue '%s' pour %s"
-
-#, c-format
-msgid "E149: Sorry, no help for %s"
-msgstr "E149: D�sol�, aucune aide pour %s"
-
-#, c-format
-msgid "Sorry, help file \"%s\" not found"
-msgstr "D�sol�, le fichier d'aide \"%s\" est introuvable"
-
-#, c-format
-msgid "E150: Not a directory: %s"
-msgstr "E150: %s n'est pas un r�pertoire"
-
-# AB - La version anglaise est plus pr�cise, mais trop technique.
-#, c-format
-msgid "E152: Cannot open %s for writing"
-msgstr "E152: Impossible d'�crire %s"
-
-# AB - La version anglaise est plus pr�cise, mais trop technique.
-#, c-format
-msgid "E153: Unable to open %s for reading"
-msgstr "E153: Impossible de lire %s"
-
-#, c-format
-msgid "E670: Mix of help file encodings within a language: %s"
-msgstr "E670: Encodages diff�rents dans les fichiers d'aide en langue %s"
-
-# AB - L'�tiquette la plus longue fait 27 caract�res. Le nom de fichier le
-# plus
-#      long fait 12 caract�res. Il faudrait donc id�alement faire une
-#      traduction de 40 caract�res ou moins. Ce qui est loin d'�tre le cas
-#      pr�sent.
-# DB - Suggestion.
-#, c-format
-msgid "E154: Duplicate tag \"%s\" in file %s/%s"
-msgstr "E154: Marqueur \"%s\" dupliqu� dans le fichier %s/%s"
-
-# AB - Il faut respecter l'esprit plus que la lettre.
-#, c-format
-msgid "E160: Unknown sign command: %s"
-msgstr "E160: Commande inconnue : :sign %s"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "E156: Missing sign name"
-msgstr "E156: Il manque le nom du symbole"
-
-msgid "E612: Too many signs defined"
-msgstr "E612: Trop de symboles sont d�finis"
-
-# AB - Cette traduction ne me satisfait pas.
-# DB - Suggestion.
-#, c-format
-msgid "E239: Invalid sign text: %s"
-msgstr "E239: Le texte du symbole est invalide : %s"
-
-#, c-format
-msgid "E155: Unknown sign: %s"
-msgstr "E155: Symbole inconnu : %s"
-
-# AB - La version fran�aise est meilleure que la version anglaise.
-msgid "E159: Missing sign number"
-msgstr "E159: Il manque l'ID du symbole"
-
-# 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"
-
-# AB - Vu le code source, la version fran�aise est meilleure que la
-#      version anglaise.
-#, c-format
-msgid "E157: Invalid sign ID: %ld"
-msgstr "E157: Le symbole %ld est introuvable"
-
-msgid " (NOT FOUND)"
-msgstr "  (INTROUVABLE)"
-
-msgid " (not supported)"
-msgstr " (non support�)"
-
-msgid "[Deleted]"
-msgstr "[Effac�]"
-
-msgid "Entering Ex mode.  Type \"visual\" to go to Normal mode."
-msgstr "Mode Ex activ�. Tapez \"visual\" pour passer en mode Normal."
-
-msgid "E501: At end-of-file"
-msgstr "E501: � la fin du fichier"
-
-msgid "E169: Command too recursive"
-msgstr "E169: Commande trop r�cursive"
-
-#, c-format
-msgid "E605: Exception not caught: %s"
-msgstr "E605: Exception non intercept�e : %s"
-
-msgid "End of sourced file"
-msgstr "Fin du fichier sourc�"
-
-msgid "End of function"
-msgstr "Fin de la fonction"
-
-msgid "E464: Ambiguous use of user-defined command"
-msgstr "E464: Utilisation ambig�e d'une commande d�finie par l'utilisateur"
-
-msgid "E492: Not an editor command"
-msgstr "E492: Commande inconnue"
-
-msgid "E493: Backwards range given"
-msgstr "E493: La plage sp�cifi�e est invers�e"
-
-msgid "Backwards range given, OK to swap"
-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 "E319: Sorry, the command is not available in this version"
-msgstr "E319: D�sol�, cette commande n'est pas disponible dans cette version"
-
-msgid "E172: Only one file name allowed"
-msgstr "E172: Un seul nom de fichier autoris�"
-
-msgid "1 more file to edit.  Quit anyway?"
-msgstr "Encore 1 fichier � �diter. Quitter tout de m�me ?"
-
-#, c-format
-msgid "%d more files to edit.  Quit anyway?"
-msgstr "Encore %d fichiers � �diter. Quitter tout de m�me ?"
-
-msgid "E173: 1 more file to edit"
-msgstr "E173: encore 1 fichier � �diter"
-
-#, c-format
-msgid "E173: %ld more files to edit"
-msgstr "E173: encore %ld fichiers � �diter"
-
-msgid "E174: Command already exists: add ! to replace it"
-msgstr "E174: La commande existe d�j� : ajoutez ! pour la red�finir"
-
-msgid ""
-"\n"
-"    Name        Args Range Complete  Definition"
-msgstr ""
-"\n"
-"    Nom         Args Plage Compl�t.  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"
-
-#, 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"
-
-#, 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 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� requiert une fonction en argument"
-
-#, c-format
-msgid "E185: Cannot find color scheme %s"
-msgstr "E185: Impossible de trouver le jeu de couleurs %s"
-
-msgid "Greetings, Vim user!"
-msgstr "Bienvenue, utilisateur de Vim !"
-
-msgid "E784: Cannot close last tab page"
-msgstr "E784: Impossible de fermer le dernier onglet"
-
-msgid "Already only one tab page"
-msgstr "Il ne reste d�j� plus qu'un seul onglet"
-
-msgid "Edit File in new window"
-msgstr "Ouvrir un fichier dans une nouvelle fen�tre - Vim"
-
-#, c-format
-msgid "Tab page %d"
-msgstr "Onglet %d"
-
-msgid "No swap file"
-msgstr "Pas de fichier d'�change"
-
-msgid "Append File"
-msgstr "Ajouter fichier"
-
-msgid "E747: Cannot change directory, buffer is modifed (add ! to override)"
-msgstr ""
-"E747: Tampon modifi� : impossible de changer de r�pertoire (ajoutez ! pour "
-"passer outre)"
-
-msgid "E186: No previous directory"
-msgstr "E186: Pas de r�pertoire pr�c�dent"
-
-msgid "E187: Unknown"
-msgstr "E187: Inconnu"
-
-msgid "E465: :winsize requires two number arguments"
-msgstr "E465: :winsize requiert deux arguments num�riques"
-
-#, c-format
-msgid "Window position: X %d, Y %d"
-msgstr "Position de la fen�tre : X %d, Y %d"
-
-# DB : Suggestion, sans doute perfectible.
-msgid "E188: Obtaining window position not implemented for this platform"
-msgstr ""
-"E188: R�cup�rer la position de la fen�tre non impl�ment� dans cette version"
-
-msgid "E466: :winpos requires two number arguments"
-msgstr "E466: :winpos requiert deux arguments num�riques"
-
-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\""
-
-#, c-format
-msgid "E189: \"%s\" exists (add ! to override)"
-msgstr "E189: \"%s\" existe (ajoutez ! pour passer outre)"
-
-#, c-format
-msgid "E190: Cannot open \"%s\" for writing"
-msgstr "E190: Impossible d'ouvrir \"%s\" pour y �crire"
-
-#. set mark
-msgid "E191: Argument must be a letter or forward/backward quote"
-msgstr "E191: L'argument doit �tre une lettre ou une (contre-)apostrophe"
-
-msgid "E192: Recursive use of :normal too deep"
-msgstr "E192: Appel r�cursif de :normal trop important"
-
-msgid "E194: No alternate file name to substitute for '#'"
-msgstr "E194: Aucun nom de fichier alternatif � substituer � '#'"
-
-msgid "E495: no autocommand file name to substitute for \"<afile>\""
-msgstr "E495: Aucun nom de ficher d'autocommmande � substituer � \"<afile>\""
-
-msgid "E496: no autocommand buffer number to substitute for \"<abuf>\""
-msgstr "E496: Aucun num�ro de tampon d'autocommande � substituer � \"<abuf>\""
-
-msgid "E497: no autocommand match name to substitute for \"<amatch>\""
-msgstr "E497: Aucune correspondance d'autocommande � substituer � \"<amatch>\""
-
-msgid "E498: no :source file name to substitute for \"<sfile>\""
-msgstr "E498: Aucun nom de fichier :source � substituer � \"<sfile>\""
-
-#, no-c-format
-msgid "E499: Empty file name for '%' or '#', only works with \":p:h\""
-msgstr "E499: Nom de fichier vide pour '%' ou '#', ne marche qu'avec \":p:h\""
-
-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"
-
-msgid "E196: No digraphs in this version"
-msgstr "E196: Pas de digraphes dans cette version"
-
-msgid "E608: Cannot :throw exceptions with 'Vim' prefix"
-msgstr "E608: Impossible d'�mettre des exceptions avec 'Vim' comme pr�fixe"
-
-#. always scroll up, don't overwrite
-#, c-format
-msgid "Exception thrown: %s"
-msgstr "Exception �mise : %s"
-
-#, c-format
-msgid "Exception finished: %s"
-msgstr "Exception termin�e : %s"
-
-#, c-format
-msgid "Exception discarded: %s"
-msgstr "Exception �limin�e : %s"
-
-#, c-format
-msgid "%s, line %ld"
-msgstr "%s, ligne %ld"
-
-#. always scroll up, don't overwrite
-#, c-format
-msgid "Exception caught: %s"
-msgstr "Exception intercept�e : %s"
-
-# DB - Le c-format est f�minin, singulier ou pluriel (cf. 3 messages plus
-# bas).
-#, c-format
-msgid "%s made pending"
-msgstr "%s mise(s) en attente"
-
-#, c-format
-msgid "%s resumed"
-msgstr "%s r�-�mise(s)"
-
-#, c-format
-msgid "%s discarded"
-msgstr "%s �limin�e(s)"
-
-msgid "Exception"
-msgstr "Exception"
-
-msgid "Error and interrupt"
-msgstr "Erreur et interruption"
-
-msgid "Error"
-msgstr "Erreur"
-
-#. if (pending & CSTP_INTERRUPT)
-msgid "Interrupt"
-msgstr "Interruption"
-
-msgid "E579: :if nesting too deep"
-msgstr "E579: Imbrication de :if trop importante"
-
-msgid "E580: :endif without :if"
-msgstr "E580: :endif sans :if"
-
-msgid "E581: :else without :if"
-msgstr "E581: :else sans :if"
-
-msgid "E582: :elseif without :if"
-msgstr "E582: :elseif sans :if"
-
-msgid "E583: multiple :else"
-msgstr "E583: Il ne peut y avoir qu'un seul :else"
-
-msgid "E584: :elseif after :else"
-msgstr "E584: :elseif apr�s :else"
-
-msgid "E585: :while/:for nesting too deep"
-msgstr "E585: Imbrication de :while ou :for trop importante"
-
-msgid "E586: :continue without :while or :for"
-msgstr "E586: :continue sans :while ou :for"
-
-msgid "E587: :break without :while or :for"
-msgstr "E587: :break sans :while ou :for"
-
-msgid "E732: Using :endfor with :while"
-msgstr "E732: Utilisation de :endfor avec :while"
-
-msgid "E733: Using :endwhile with :for"
-msgstr "E733: Utilisation de :endwhile avec :for"
-
-msgid "E601: :try nesting too deep"
-msgstr "E601: Imbrication de :try trop importante"
-
-msgid "E603: :catch without :try"
-msgstr "E603: :catch sans :try"
-
-#. Give up for a ":catch" after ":finally" and ignore it.
-#. * Just parse.
-msgid "E604: :catch after :finally"
-msgstr "E604: :catch apr�s :finally"
-
-msgid "E606: :finally without :try"
-msgstr "E606: :finally sans :try"
-
-#. Give up for a multiple ":finally" and ignore it.
-msgid "E607: multiple :finally"
-msgstr "E607: Il ne peut y avoir qu'un seul :finally"
-
-msgid "E602: :endtry without :try"
-msgstr "E602: :endtry sans :try"
-
-msgid "E193: :endfunction not inside a function"
-msgstr "E193: :endfunction en dehors d'une fonction"
-
-msgid "E788: Not allowed to edit another buffer now"
-msgstr "E788: L'�dition d'un autre tampon n'est plus permise"
-
-# 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"
-