[Zope3-checkins] SVN: Zope3/branches/jim-index/ Merged changes of revisions 25351:25370 from the trunk.

Gintautas Miliauskas gintas at pov.lt
Sat Jun 12 03:58:30 EDT 2004


Log message for revision 25371:
Merged changes of revisions 25351:25370 from the trunk.



-=-
Modified: Zope3/branches/jim-index/doc/CHANGES.txt
===================================================================
--- Zope3/branches/jim-index/doc/CHANGES.txt	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/doc/CHANGES.txt	2004-06-12 07:58:27 UTC (rev 25371)
@@ -10,6 +10,15 @@
 
     New features
 
+      - Added ++debug++ traversal adapter that allows you to turn on debugging
+        flags in request.debug.  Currently there is only one flag named
+        "source" that adds HTML comments to rendered page templates showing
+        where each code snippet came from.  Try
+
+          http://localhost:8080/++debug++source/@@contents.html
+
+        and view the source of the resulting page.
+
     Bug fixes
 
       - Fixed bug in TypeRegistry for
@@ -32,11 +41,13 @@
 
     Restructuring
 
+      - Templated Pages are now called ZPT Pages.
+
     Much thanks to everyone who contributed to this release:
 
       Jim Fulton, Marius Gedminas, Fred Drake, Philipp von Weitershausen,
       Stephan Richter, Dmitry Vasiliev, Scott Pascoe, Bjorn Tillenius,
-      Eckart Hertzler, Roger Ineichen, Stuart Bishop
+      Eckart Hertzler, Roger Ineichen, Stuart Bishop, Viktorija Zaksiene
 
       Note: If you are not listed and contributed, please add yourself. This
       note will be deleted before the release.
@@ -709,7 +720,7 @@
     - Major fixes to the TAL I18n-Namespace support. Almost all fixes were
       backported to Zope 2.7 as well.
 
-    - Templated Pages support for a <script> tag, that allows inline Python
+    - ZPT Pages support for a <script> tag, that allows inline Python
       code. The <script> tag can be used in other TAL sources as well, but is
       turned off by default.
 

Modified: Zope3/branches/jim-index/src/zope/app/apidoc/classmodule/__init__.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/apidoc/classmodule/__init__.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/apidoc/classmodule/__init__.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -537,7 +537,7 @@
     def __init__(self):
         """Initialize object."""
         super(ClassModule, self).__init__(None, '', None, False)
-        self.__setup()
+        self.__isSetup = False
 
     def __setup(self):
         """Setup module and class tree."""
@@ -556,7 +556,21 @@
         """See Module class."""
         return ''
 
+    def get(self, key, default=None):
+        """See zope.app.container.interfaces.IReadContainer."""
+        if self.__isSetup is False:
+            self.__setup()
+            self.__isSetup = True
+        return super(ClassModule, self).get(key, default)
 
+    def items(self):
+        """See zope.app.container.interfaces.IReadContainer."""
+        if self.__isSetup is False:
+            self.__setup()
+            self.__isSetup = True
+        return super(ClassModule, self).items()
+
+
 class ClassRegistry(dict):
     """A simple registry for classes.
 

Modified: Zope3/branches/jim-index/src/zope/app/pagetemplate/tests/test_binding.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/pagetemplate/tests/test_binding.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/pagetemplate/tests/test_binding.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -36,7 +36,8 @@
         ztapi.provideAdapter(None, ITraversable, DefaultTraversable)
 
     def test_binding(self):
-        comp = PTComponent(Content())
+        from zope.publisher.browser import TestRequest
+        comp = PTComponent(Content(), TestRequest())
         self.assertEqual(comp.index(), "42\n")
         self.assertEqual(comp.nothing(), "\n")
         self.assertEqual(comp.default(), "<span>42</span>\n")

Modified: Zope3/branches/jim-index/src/zope/app/pagetemplate/tests/test_simpleviewclass.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/pagetemplate/tests/test_simpleviewclass.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/pagetemplate/tests/test_simpleviewclass.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -23,9 +23,11 @@
 
     def test_simple(self):
         from zope.app.pagetemplate.tests.simpletestview import SimpleTestView
+        from zope.publisher.browser import TestRequest
 
         ob = data()
-        view = SimpleTestView(ob, None)
+        request = TestRequest()
+        view = SimpleTestView(ob, request)
         macro = view['test']
         out = view()
         self.assertEqual(out,
@@ -36,6 +38,7 @@
 
     def test_WBases(self):
         from zope.app.pagetemplate.simpleviewclass import SimpleViewClass
+        from zope.publisher.browser import TestRequest
 
         class C: pass
 
@@ -44,7 +47,8 @@
         self.failUnless(issubclass(SimpleTestView, C))
 
         ob = data()
-        view = SimpleTestView(ob, None)
+        request = TestRequest()
+        view = SimpleTestView(ob, request)
         macro = view['test']
         out = view()
         self.assertEqual(out,

Modified: Zope3/branches/jim-index/src/zope/app/pagetemplate/viewpagetemplatefile.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/pagetemplate/viewpagetemplatefile.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/pagetemplate/viewpagetemplatefile.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -45,7 +45,8 @@
         namespace = self.pt_getContext(
             request=instance.request,
             instance=instance, args=args, options=keywords)
-        return self.pt_render(namespace)
+        return self.pt_render(namespace,
+                    sourceAnnotations=instance.request.debug.sourceAnnotations)
 
     def __get__(self, instance, type=None):
         return BoundPageTemplate(self, instance)

Modified: Zope3/branches/jim-index/src/zope/app/publication/tests/test_browserpublication.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/publication/tests/test_browserpublication.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/publication/tests/test_browserpublication.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -287,6 +287,7 @@
             'Status: 200 Ok\r\n'
             'Content-Length: 4\r\n'
             'Content-Type: text/plain;charset=utf-8\r\n'
+            'X-Content-Type-Warning: guessed from content\r\n'
             'X-Powered-By: Zope (www.zope.org), Python (www.python.org)\r\n'
             '\r\nspam'
             )
@@ -304,6 +305,7 @@
             'Status: 200 Ok\r\n'
             'Content-Length: 0\r\n'
             'Content-Type: text/plain;charset=utf-8\r\n'
+            'X-Content-Type-Warning: guessed from content\r\n'
             'X-Powered-By: Zope (www.zope.org), Python (www.python.org)\r\n'
             '\r\n'
             )
@@ -319,6 +321,7 @@
             'Status: 200 Ok\r\n'
             'Content-Length: 8\r\n'
             'Content-Type: text/plain;charset=utf-8\r\n'
+            'X-Content-Type-Warning: guessed from content\r\n'
             'X-Powered-By: Zope (www.zope.org), Python (www.python.org)\r\n'
             '\r\n\xd1\x82\xd0\xb5\xd1\x81\xd1\x82')
 

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/de/LC_MESSAGES/zope.mo
===================================================================
(Binary files differ)

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/de/LC_MESSAGES/zope.po
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/de/LC_MESSAGES/zope.po	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/de/LC_MESSAGES/zope.po	2004-06-12 07:58:27 UTC (rev 25371)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: zope\n"
 "POT-Creation-Date: Wed Jun  9 12:49:12 2004\n"
-"PO-Revision-Date: 2004-06-02 06:40-0400\n"
+"PO-Revision-Date: 2004-06-11 16:39-0400\n"
 "Last-Translator: Stephan Richter <stephan.richter at tufts.edu>\n"
 "Language-Team: German <zope3-dev at zope.org>\n"
 "MIME-Version: 1.0\n"
@@ -528,8 +528,7 @@
 msgstr "Unterdirektiven"
 
 #: src/zope/app/apidoc/zcmlmodule/menu.pt:4
-msgid ""
-"Namespaces that are not full URLs start with \"http://namespaces.zope.org\"."
+msgid "Namespaces that are not full URLs start with \"http://namespaces.zope.org\"."
 msgstr ""
 "Namensräume, die nicht als volle URIs angegeben sind, starten mit \"http://"
 "namespaces.zope.org\"."
@@ -603,8 +602,7 @@
 msgstr "Sekunden"
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:13
-msgid ""
-"If you specify a time of 0 seconds, then the server will do a hard shutdown."
+msgid "If you specify a time of 0 seconds, then the server will do a hard shutdown."
 msgstr ""
 "Wenn Sie eine Zeit von 0 Sekunden eingeben, dann wird der Server sofort "
 "angehalten (hard shutdown)."
@@ -724,16 +722,14 @@
 
 #: src/zope/app/bundle/browser/bundle.pt:123
 msgid "Click \"Activate bundle\" to perform the above actions."
-msgstr ""
-"Klicken Sie auf \"Bündel aktivieren\" um die o.a. Aktionen durchzuführen."
+msgstr "Klicken Sie auf \"Bündel aktivieren\" um die o.a. Aktionen durchzuführen."
 
 #: src/zope/app/bundle/browser/bundle.pt:127
 msgid "activate-bundle-button"
 msgstr "Aktivieren"
 
 #: src/zope/app/bundle/browser/bundle.pt:137
-msgid ""
-"Click \"Deactivate bundle\" to unregister all registrations in this bundle."
+msgid "Click \"Deactivate bundle\" to unregister all registrations in this bundle."
 msgstr ""
 "Klicken Sie auf \"Bündel deaktivieren\", um alle Registrierungen in diesem "
 "Bündel nichtig zu machen."
@@ -837,8 +833,7 @@
 
 #: src/zope/app/cache/browser/cacheableedit.pt:5
 msgid "This edit form allows you to associate a cache with this object."
-msgstr ""
-"Dieses Formular erlaubt Ihnen, einen Cache für dieses Objekt zu definieren."
+msgstr "Dieses Formular erlaubt Ihnen, einen Cache für dieses Objekt zu definieren."
 
 #: src/zope/app/cache/browser/cacheableedit.pt:9
 msgid "Currently there is no cache associated with the object."
@@ -1087,8 +1082,7 @@
 msgstr "Fehlermeldedienst für Logging Fehler"
 
 #: src/zope/app/errorservice/browser/error.pt:10
-msgid ""
-"This page lists the exceptions that have occurred in this site recently."
+msgid "This page lists the exceptions that have occurred in this site recently."
 msgstr ""
 "Diese Seite listet die Ausnahmen auf, die kürzlich in dieser Webseite "
 "aufgetreten sind."
@@ -1501,8 +1495,7 @@
 msgstr "Datenbanken-Schemas"
 
 #: src/zope/app/generations/browser/managers.pt:18
-msgid ""
-"The database was updated to generation ${generation} for ${application}."
+msgid "The database was updated to generation ${generation} for ${application}."
 msgstr ""
 "Die Datenbank wurde auf Generation ${generation} für ${application} "
 "aktualisiert."
@@ -1598,8 +1591,7 @@
 
 #: src/zope/app/i18n/browser/synchronize.pt:122
 msgid "No connection could be made to remote data source."
-msgstr ""
-"Es konnte keine Verbindung mit der Fremddatenquelle hergestellt werden."
+msgstr "Es konnte keine Verbindung mit der Fremddatenquelle hergestellt werden."
 
 #: src/zope/app/i18n/browser/synchronize.pt:26
 msgid "Server URL"
@@ -1749,16 +1741,13 @@
 msgstr "Bearbeitungsformular"
 
 #: src/zope/app/i18nfile/browser/i18nfile.py:46
-#, fuzzy
-msgid ""
-"This edit form allows you to make changes to the properties of this file."
+msgid "This edit form allows you to make changes to the properties of this file."
 msgstr ""
 "Dieses Berarbeitungsformular erlaubt es Ihnen, Änderungen an den "
-"Einstellungen ihres Bildes vorzunehmen."
+"Einstellungen ihrer Datei vorzunehmen."
 
 #: src/zope/app/i18nfile/browser/i18nimage.py:28
-msgid ""
-"This edit form allows you to make changes to the properties of this image."
+msgid "This edit form allows you to make changes to the properties of this image."
 msgstr ""
 "Dieses Berarbeitungsformular erlaubt es Ihnen, Änderungen an den "
 "Einstellungen ihres Bildes vorzunehmen."
@@ -1928,8 +1917,7 @@
 msgstr "Browsermenü hinzufügen (Registrierung)"
 
 #: src/zope/app/menu/browser/configure.zcml:5
-msgid ""
-"Browser Menu tools are used to build menus for Web user        interfaces."
+msgid "Browser Menu tools are used to build menus for Web user        interfaces."
 msgstr ""
 "Browsermenü-Werkzeuge werden benutzt, um Menüs für Web-Benutzeroberflächen "
 "zu erstellen."
@@ -2041,8 +2029,7 @@
 
 #: src/zope/app/menus.zcml:17
 msgid "Menu of objects to be added to content folders"
-msgstr ""
-"Menü von Objekten die als Inhalt zu dem Ordner hinzugefügt werden können"
+msgstr "Menü von Objekten die als Inhalt zu dem Ordner hinzugefügt werden können"
 
 #: src/zope/app/menus.zcml:21
 msgid "Menu for objects to be added according to containment constraints"
@@ -2052,8 +2039,7 @@
 
 #: src/zope/app/menus.zcml:26
 msgid "Menu of objects to be added to site management folders"
-msgstr ""
-"Menü von Objekten die Webseitenverwaltungs-Ordnern hinzugefügt werden können"
+msgstr "Menü von Objekten die Webseitenverwaltungs-Ordnern hinzugefügt werden können"
 
 #: src/zope/app/menus.zcml:30
 msgid "Menu of database connections to be added"
@@ -2293,8 +2279,7 @@
 
 #: src/zope/app/pluggableauth/interfaces.py:31
 msgid "The Login/Username of the user. This value can change."
-msgstr ""
-"Eine Anmeldung (Benutzername) fuer den Nutzer. Dieser Wert kann sich ändern."
+msgstr "Eine Anmeldung (Benutzername) fuer den Nutzer. Dieser Wert kann sich ändern."
 
 #: src/zope/app/pluggableauth/interfaces.py:37
 msgid "The password for the user."
@@ -2313,8 +2298,7 @@
 msgstr "Präsentationsdienst"
 
 #: src/zope/app/presentation/browser/configure.zcml:3
-msgid ""
-"A Presentation Service allows you to register views, resources and skins"
+msgid "A Presentation Service allows you to register views, resources and skins"
 msgstr ""
 "Ein Präsentationsdienst erlaubt es Ihnen, Ansichten, Ressourcen und Themen "
 "zu registrieren."
@@ -2467,8 +2451,7 @@
 
 #: src/zope/app/publisher/interfaces/browser.py:39
 msgid "The url is relative to the object the menu is being displayed for."
-msgstr ""
-"DIe URL ist relativ zu dem Objekt für das der Menüeintrag angezeigt wird."
+msgstr "DIe URL ist relativ zu dem Objekt für das der Menüeintrag angezeigt wird."
 
 #: src/zope/app/publisher/interfaces/browser.py:45
 msgid "The text to be displayed for the menu item"
@@ -2593,8 +2576,7 @@
 msgstr "Datenbankverbindungs-Registrierung hinzufügen"
 
 #: src/zope/app/rdb/browser/configure.zcml:5
-msgid ""
-"Database Adapters are used to connect to external       relational databases."
+msgid "Database Adapters are used to connect to external       relational databases."
 msgstr ""
 "Datenbankadapter werde benutzt, um Verbindungen zu externen relationalen "
 "Datenbanken herzustellen."
@@ -2646,8 +2628,7 @@
 
 #: src/zope/app/rdb/browser/rdbtestsql.pt:13
 msgid "Here you can enter an SQL statement, so you can test the connection."
-msgstr ""
-"Sie können hier eine SQL-Abfrage eingeben, um die Verbindung zu testen."
+msgstr "Sie können hier eine SQL-Abfrage eingeben, um die Verbindung zu testen."
 
 #: src/zope/app/rdb/browser/rdbtestsql.pt:18
 msgid "Query"
@@ -3241,8 +3222,7 @@
 msgstr "Login fehlgeschlagen!"
 
 #: src/zope/app/security/browser/login_failed.pt:9
-msgid ""
-"You cancelled the login procedure. <a href=\"\"> Click here to return. </a>"
+msgid "You cancelled the login procedure. <a href=\"\"> Click here to return. </a>"
 msgstr ""
 "Sie haben den Loginprozess abgebrochen. <a href=\"\"> Bitte hier klicken um "
 "zurückzukehren. </a>"
@@ -3418,8 +3398,7 @@
 
 #: src/zope/app/securitypolicy/browser/manage_roleform.pt:9
 msgid "Helpful message explaining about how to set specific roles"
-msgstr ""
-"Hilfreiche Nachricht die erklärt wie man spezifische Rollen setzen kann."
+msgstr "Hilfreiche Nachricht die erklärt wie man spezifische Rollen setzen kann."
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:12
 msgid "Permission Settings"
@@ -3544,8 +3523,7 @@
 msgstr "Abfrageintervall"
 
 #: src/zope/app/session/interfaces.py:110
-msgid ""
-"How often stale data is purged in seconds. Higer values improve performance."
+msgid "How often stale data is purged in seconds. Higer values improve performance."
 msgstr ""
 "Wie oft verfallene Daten gelöscht werden, in Sekunden. Höhere Werte "
 "verbessern die Geschwindigkeit."
@@ -4314,8 +4292,7 @@
 msgstr "Aktualisieren"
 
 #: src/zope/app/utility/browser/configureutility.pt:9
-msgid ""
-"Utility registrations for interface ${interface} with name ${utility_name}"
+msgid "Utility registrations for interface ${interface} with name ${utility_name}"
 msgstr ""
 "Werkzeugregistrierung für Interface ${interface} mit dem Namen "
 "${utility_name}"
@@ -4535,14 +4512,12 @@
 msgstr "Minimale Wikiseiten-Behälter-Implementation"
 
 #: src/zope/app/wiki/interfaces.py:150
-#, fuzzy
 msgid "Previous Source Text"
-msgstr "Quelltext"
+msgstr "Vorheriger Quelltext"
 
 #: src/zope/app/wiki/interfaces.py:151
-#, fuzzy
 msgid "Previous source text of the Wiki Page."
-msgstr "Darstellbarer Quelltext der Wiki Page."
+msgstr "Vorheriger Quelltext der Wiki Page."
 
 #: src/zope/app/wiki/interfaces.py:40
 msgid "Comment Title"
@@ -4809,9 +4784,8 @@
 msgstr "Arbeitsablauf-relevante Daten"
 
 #: src/zope/app/workflow/stateful/interfaces.py:100
-#, fuzzy
 msgid "Name of the source state."
-msgstr "Name der übergeordneten Wiki Seite."
+msgstr "Name des Ursprungsstatus."
 
 #: src/zope/app/workflow/stateful/interfaces.py:105
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:29
@@ -4819,9 +4793,8 @@
 msgstr "Ziel-Zustand"
 
 #: src/zope/app/workflow/stateful/interfaces.py:106
-#, fuzzy
 msgid "Name of the destination state."
-msgstr "Name der übergeordneten Wiki Seite."
+msgstr "Name des Zielstatus."
 
 #: src/zope/app/workflow/stateful/interfaces.py:111
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:39
@@ -4832,43 +4805,39 @@
 msgid ""
 "The condition that is evaluated to decide if the\n"
 "                        transition can be fired or not."
-msgstr ""
+msgstr "Die Kondition die evaluiert wird um zu entscheiden ob ein Übergang möglich ist oder nicht."
 
 #: src/zope/app/workflow/stateful/interfaces.py:117
-#, fuzzy
 msgid "Script"
-msgstr "SQL-Skript"
+msgstr "Skript"
 
 #: src/zope/app/workflow/stateful/interfaces.py:118
 msgid ""
 "The script that is evaluated to decide if the\n"
 "                        transition can be fired or not."
-msgstr ""
+msgstr "Das Skript das evaluiert wird um zu entscheiden ob ein Übergang möglich ist oder nicht."
 
 #: src/zope/app/workflow/stateful/interfaces.py:123
-#, fuzzy
 msgid "The permission needed to fire the Transition."
-msgstr "Die Berechtigung, die zur Verwendung der Komponente benötigt wird"
+msgstr "Die Berechtigung, die zum Ausführen des Überganges benötigt wird."
 
 #: src/zope/app/workflow/stateful/interfaces.py:130
 msgid "Trigger Mode"
-msgstr ""
+msgstr "Auslösemodus"
 
 #: src/zope/app/workflow/stateful/interfaces.py:131
 msgid "How the Transition is triggered (Automatic/Manual)"
-msgstr ""
+msgstr "Wie der Übergang ausgelöst wird (Automatisch/Manuell)"
 
 #: src/zope/app/workflow/stateful/interfaces.py:147
-#, fuzzy
 msgid "Workflow-Relevant Data Schema"
-msgstr "Arbeitsablauf-relevantes Datenschema bestimmen"
+msgstr "Arbeitsablauf-relevantes Datenschema"
 
 #: src/zope/app/workflow/stateful/interfaces.py:148
-#, fuzzy
 msgid ""
 "Specifies the schema that characterizes the workflow relevant data of a "
 "process instance, found in pd.data."
-msgstr "Gibt das Schema an, welches das Dokument charakterisiert."
+msgstr "Gibt das Schema an, welches die Arbeitsablauf-relevanten Daten einer Prozessinstanz charakterisiert."
 
 #: src/zope/app/workflow/stateful/interfaces.py:99
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:19
@@ -4931,10 +4900,6 @@
 msgid "Root Folder"
 msgstr "Wurzelordner"
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr "Dynamische Seite"
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
 msgid "Add a ZPT Page"
 msgstr "Eine ZPT Seite hinzufügen"
@@ -4978,6 +4943,7 @@
 msgid "There are ${num_errors} input errors."
 msgstr "Es gab ${num_errors} Eingabefehler."
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
 msgstr "ZPT-Seite"
@@ -5022,8 +4988,7 @@
 #: src/zope/exceptions/unauthorized.py:69
 #: src/zope/exceptions/unauthorized.py:72
 msgid "You are not allowed to access ${name} in this context"
-msgstr ""
-"Es ist Ihnen nicht gestattet auf ${name} in diesem Kontext zuzugreifen."
+msgstr "Es ist Ihnen nicht gestattet auf ${name} in diesem Kontext zuzugreifen."
 
 #: src/zope/exceptions/unauthorized.py:74
 msgid "You are not authorized"
@@ -5108,8 +5073,7 @@
 msgid ""
 "The field default value may be None or a legal\n"
 "                        field value"
-msgstr ""
-"Der \"default\" Wert des Feldes kann None oder ein legaler Feldwert sein"
+msgstr "Der \"default\" Wert des Feldes kann None oder ein legaler Feldwert sein"
 
 #: src/zope/schema/interfaces.py:132
 msgid "Missing Value"
@@ -5193,8 +5157,7 @@
 msgstr "Werttyp"
 
 #: src/zope/schema/interfaces.py:385
-msgid ""
-"Field value items must conform to the given type, expressed via a Field."
+msgid "Field value items must conform to the given type, expressed via a Field."
 msgstr "Feldwerte müssen sich auf den Typen in diesem Feld anpassen."
 
 #: src/zope/schema/interfaces.py:389
@@ -5266,3 +5229,4 @@
 #: src/zope/schema/tests/test_objectfield.py:45
 msgid "Bar description"
 msgstr "Bar Beschreibung"
+

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/es/LC_MESSAGES/zope.po
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/es/LC_MESSAGES/zope.po	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/es/LC_MESSAGES/zope.po	2004-06-12 07:58:27 UTC (rev 25371)
@@ -4735,10 +4735,6 @@
 msgid "Root Folder"
 msgstr ""
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr "Página plantillada"
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
 msgid "Add a ZPT Page"
 msgstr "Añadir una Pagina ZPT"
@@ -4773,6 +4769,7 @@
 msgid "There are ${num_errors} input errors."
 msgstr ""
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
 msgstr "Página ZPT"

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/fr/LC_MESSAGES/zope.mo
===================================================================
(Binary files differ)

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/fr/LC_MESSAGES/zope.po
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/fr/LC_MESSAGES/zope.po	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/fr/LC_MESSAGES/zope.po	2004-06-12 07:58:27 UTC (rev 25371)
@@ -6,30 +6,30 @@
 msgstr ""
 "Project-Id-Version: Zope X3 Pre-M4\n"
 "POT-Creation-Date: Wed Jun  9 12:49:12 2004\n"
-"PO-Revision-Date: 2003-08-07 19:51-0400\n"
-"Last-Translator: Godefroid Chapelle <gotcha at swing.be>\n"
+"PO-Revision-Date: 2004-06-05 19:42+0100\n"
+"Last-Translator: Thierry Goyvaerts <Thierry.Goyvaerts at skynet.be>\n"
 "Language-Team: Zope 3 Developers <zope3-dev at zope3.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: src/zope/app/adapter/adapter.py:283
 #: src/zope/app/presentation/pagefolder.py:54
 #: src/zope/app/presentation/presentation.py:290
 msgid "For interface"
-msgstr ""
+msgstr "Pour l'interface"
 
 #: src/zope/app/adapter/adapter.py:284
 msgid "The interface of the objects being adapted"
-msgstr ""
+msgstr "L'interface des objets adaptée"
 
 #: src/zope/app/adapter/adapter.py:289 src/zope/app/utility/interfaces.py:48
 msgid "Provided interface"
-msgstr ""
+msgstr "Interface fournie"
 
 #: src/zope/app/adapter/adapter.py:290
 msgid "The interface provided"
-msgstr ""
+msgstr "L'interface fournie"
 
 #: src/zope/app/adapter/adapter.py:296 src/zope/app/site/interfaces.py:162
 #: src/zope/app/site/browser/tool.pt:40
@@ -39,39 +39,39 @@
 #: src/zope/app/container/browser/contents.pt:32
 #: src/zope/app/container/browser/index.pt:26
 msgid "Name"
-msgstr ""
+msgstr "Nom"
 
 #: src/zope/app/adapter/adapter.py:302
 msgid "The dotted name of a factory for creating the adapter"
-msgstr ""
+msgstr "Le nom web d'une usine afin de créer un Adaptateur"
 
 #: src/zope/app/adapter/adapter.py:308
 msgid "The permission required for use"
-msgstr ""
+msgstr "La permission requise pour l'utilisation"
 
 #: src/zope/app/adapter/adapter.py:315
 msgid "Factory to be called to construct the component"
-msgstr ""
+msgstr "L'usine à appeler pour construire le composant"
 
 #: src/zope/app/adapter/browser/configure.zcml:14
 msgid "Change adapter"
-msgstr ""
+msgstr "Changer l'Adaptateur"
 
 #: src/zope/app/adapter/browser/configure.zcml:22
 msgid "Register an adapter"
-msgstr ""
+msgstr "Enregistrer un Adaptateur"
 
 #: src/zope/app/adapter/browser/configure.zcml:22
 msgid "Adapter Registration"
-msgstr ""
+msgstr "Enregistrement de l'Adaptateur"
 
 #: src/zope/app/adapter/browser/configure.zcml:7
 msgid "Adapter Service"
-msgstr ""
+msgstr "Service de l'Adaptateur"
 
 #: src/zope/app/adapter/browser/configure.zcml:7
 msgid "Allows the registration of Adapters in this site"
-msgstr ""
+msgstr "Dans ce site autoriser l'enregistrement d'Adapteurs"
 
 #: src/zope/app/apidoc/browser/contents.pt:14
 msgid ""
@@ -83,8 +83,9 @@
 
 #: src/zope/app/apidoc/browser/contents.pt:4
 #: src/zope/app/apidoc/browser/index.pt:3
+#, fuzzy
 msgid "Zope 3 API Documentation"
-msgstr ""
+msgstr "Documentation"
 
 #: src/zope/app/apidoc/browser/contents.pt:6
 msgid ""
@@ -105,21 +106,23 @@
 #: src/zope/app/apidoc/browser/details_macros.pt:10
 #: src/zope/app/rotterdam/dialog_macros.pt:11
 msgid "Z3 UI"
-msgstr ""
+msgstr "Z3 IU"
 
 #: src/zope/app/apidoc/browser/menu_macros.pt:34
+#, fuzzy
 msgid "Menu"
-msgstr ""
+msgstr "Identificateur De Menu"
 
 #: src/zope/app/apidoc/browser/modules.pt:6
 msgid "Zope 3 API Docs"
 msgstr ""
 
+# Default: "Bases"
 #: src/zope/app/apidoc/classmodule/__init__.py:511
 #: src/zope/app/apidoc/ifacemodule/index.pt:264
 #, fuzzy
 msgid "Classes"
-msgstr "Misses"
+msgstr "Bases de classe"
 
 #: src/zope/app/apidoc/classmodule/__init__.py:549
 msgid "Zope 3 root."
@@ -128,17 +131,18 @@
 #: src/zope/app/apidoc/classmodule/browser.py:410
 #: src/zope/app/rotterdam/template.pt:104
 msgid "[top]"
-msgstr ""
+msgstr "[dessus]"
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:140
 #, fuzzy
 msgid "There are no methods in this class."
-msgstr "Il y a ${num_errors} erreurs d'encodage"
+msgstr "Il y a ${num_errors} erreurs d'encodage."
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:16
 #: src/zope/app/apidoc/ifacemodule/index.pt:26
+#, fuzzy
 msgid "Bases"
-msgstr ""
+msgstr "Tâches"
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:30
 #: src/zope/app/apidoc/ifacemodule/index.pt:40
@@ -146,13 +150,13 @@
 msgstr ""
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:35
+#, fuzzy
 msgid "Implemented Interfaces"
-msgstr ""
+msgstr "Supprimer Interfaces:"
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:50
-#, fuzzy
 msgid "There are no implemented interfaces."
-msgstr "Utiliser 'rafraîchir' pour encoder plus d'interfaces"
+msgstr ""
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:56
 msgid "Attributes/Properties"
@@ -162,7 +166,7 @@
 #: src/zope/app/apidoc/classmodule/class_index.pt:131
 #, fuzzy
 msgid "(read)"
-msgstr "Créé"
+msgstr "Créé"
 
 #: src/zope/app/apidoc/classmodule/class_index.pt:91
 #: src/zope/app/apidoc/classmodule/class_index.pt:133
@@ -174,12 +178,15 @@
 msgstr ""
 
 #: src/zope/app/apidoc/classmodule/function_index.pt:18
+#, fuzzy
 msgid "Documentation String"
-msgstr ""
+msgstr "Documentation"
 
+# Default: "Attributes"
 #: src/zope/app/apidoc/classmodule/function_index.pt:31
+#, fuzzy
 msgid "Attributes"
-msgstr ""
+msgstr "Attributs de classe"
 
 #: src/zope/app/apidoc/classmodule/function_index.pt:40
 #: src/zope/app/apidoc/classmodule/function_index.pt:44
@@ -195,13 +202,14 @@
 msgstr "Valeur"
 
 #: src/zope/app/apidoc/classmodule/function_index.pt:9
+#, fuzzy
 msgid "Signature"
-msgstr ""
+msgstr "Signature de Méthode"
 
 #: src/zope/app/apidoc/classmodule/menu.pt:18
 #, fuzzy
 msgid "Class Finder:"
-msgstr "Misses"
+msgstr "Navigateur De Classe"
 
 #: src/zope/app/apidoc/classmodule/menu.pt:19
 msgid "(Enter partial Python path)"
@@ -213,32 +221,38 @@
 msgstr "Chercher"
 
 #: src/zope/app/apidoc/classmodule/menu.pt:28
+#, fuzzy
 msgid "Browse Zope Source"
-msgstr ""
+msgstr "Service De Menu De Navigation"
 
 #: src/zope/app/apidoc/classmodule/module_index.pt:4
+#, fuzzy
 msgid "Zope 3 Class Browser"
-msgstr ""
+msgstr "Navigateur De Classe"
 
 #: src/zope/app/apidoc/ifacemodule/__init__.py:73
+#, fuzzy
 msgid "Interfaces"
-msgstr ""
+msgstr "Ajouter Interfaces:"
 
 #: src/zope/app/apidoc/ifacemodule/browser.py:158
+#, fuzzy
 msgid "required"
-msgstr ""
+msgstr "Requis"
 
 #: src/zope/app/apidoc/ifacemodule/browser.py:160
+#, fuzzy
 msgid "optional"
-msgstr ""
+msgstr "Valeur de l'Exception"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:100
 msgid "There are no methods specified."
 msgstr ""
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:107
+#, fuzzy
 msgid "Adapters"
-msgstr ""
+msgstr "Service de l'Adaptateur"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:113
 msgid "Adapters where this interface is required:"
@@ -246,28 +260,32 @@
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:126
 #: src/zope/app/apidoc/ifacemodule/index.pt:167
+#, fuzzy
 msgid "name:"
-msgstr ""
+msgstr "Nom"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:131
 msgid "provides:"
 msgstr ""
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:137
+#, fuzzy
 msgid "also required:"
-msgstr ""
+msgstr "Requis"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:154
 msgid "Adapters that provide this interface:"
 msgstr ""
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:171
+#, fuzzy
 msgid "requires:"
-msgstr ""
+msgstr "Requis"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:178
+#, fuzzy
 msgid "No interface required."
-msgstr ""
+msgstr "L'interface fournie"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:189
 msgid "There are no adapters registered for this interface."
@@ -276,12 +294,12 @@
 #: src/zope/app/apidoc/ifacemodule/index.pt:199
 #, fuzzy
 msgid "Other Information"
-msgstr "Information Runtime"
+msgstr "Editer des Informations dUtilisateur"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:204
 #, fuzzy
 msgid "Factories"
-msgstr "Entrées"
+msgstr "Actif"
 
 #: src/zope/app/apidoc/ifacemodule/index.pt:206
 msgid "A list of factories that create objects implement this interface."
@@ -308,28 +326,31 @@
 msgstr ""
 
 #: src/zope/app/apidoc/ifacemodule/menu.pt:4
+#, fuzzy
 msgid ""
 "Note: These are only interfaces that are registered with the Interface "
 "Service."
-msgstr ""
+msgstr "Interfaces enregistrées avec le Service Utilitaire"
 
 #: src/zope/app/apidoc/servicemodule/__init__.py:73
 #: src/zope/app/site/browser/configure.zcml:87
 #: src/zope/app/zopetop/widget_macros.pt:34
 msgid "Services"
-msgstr ""
+msgstr "Services"
 
 #: src/zope/app/apidoc/servicemodule/index.pt:17
 #: src/zope/app/apidoc/classmodule/class_index.pt:79
 #: src/zope/app/apidoc/classmodule/class_index.pt:120
+#, fuzzy
 msgid "Interface:"
-msgstr ""
+msgstr "Ajouter Interfaces:"
 
 #: src/zope/app/apidoc/servicemodule/index.pt:26
 #: src/zope/app/apidoc/utilitymodule/index.pt:30
 #: src/zope/app/apidoc/ifacemodule/index.pt:46
+#, fuzzy
 msgid "Attributes/Fields"
-msgstr ""
+msgstr "Un Champ de type Datetime"
 
 #: src/zope/app/apidoc/servicemodule/index.pt:55
 #: src/zope/app/apidoc/utilitymodule/index.pt:61
@@ -337,12 +358,14 @@
 msgid "There are no attributes or fields specified."
 msgstr ""
 
+# Default: "Methods"
 #: src/zope/app/apidoc/servicemodule/index.pt:62
 #: src/zope/app/apidoc/utilitymodule/index.pt:68
 #: src/zope/app/apidoc/classmodule/class_index.pt:104
 #: src/zope/app/apidoc/ifacemodule/index.pt:84
+#, fuzzy
 msgid "Methods"
-msgstr ""
+msgstr "Méthodes"
 
 #: src/zope/app/apidoc/servicemodule/index.pt:79
 #: src/zope/app/apidoc/utilitymodule/index.pt:85
@@ -350,8 +373,9 @@
 msgstr ""
 
 #: src/zope/app/apidoc/servicemodule/index.pt:86
+#, fuzzy
 msgid "Implementations"
-msgstr ""
+msgstr "Résumé d'Implémentation"
 
 #: src/zope/app/apidoc/servicemodule/menu.pt:4
 msgid "This is a list of all available services by name."
@@ -360,41 +384,44 @@
 #: src/zope/app/apidoc/utilities.py:254 src/zope/app/apidoc/utilities.py:256
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.py:55
 msgid "n/a"
-msgstr ""
+msgstr "non disponible"
 
 #: src/zope/app/apidoc/utilitymodule/__init__.py:132
 #: src/zope/app/utility/browser/configure.zcml:31
 #: src/zope/app/apidoc/ifacemodule/index.pt:222
 msgid "Utilities"
-msgstr ""
+msgstr "Utilitaire"
 
 #: src/zope/app/apidoc/utilitymodule/index.pt:17
 #, fuzzy
 msgid "Component:"
-msgstr "Contenu"
+msgstr "Chemin De Composant"
 
 #: src/zope/app/apidoc/utilitymodule/index.pt:41
 #: src/zope/app/apidoc/ifacemodule/index.pt:57
+#, fuzzy
 msgid "(Attribute)"
-msgstr ""
+msgstr "Attribut de classe"
 
 #: src/zope/app/apidoc/viewmodule/__init__.py:200
 #: src/zope/app/apidoc/viewmodule/__init__.py:262
 msgid "$file (line $line)"
-msgstr ""
+msgstr "$file (ligne $line)"
 
 #: src/zope/app/apidoc/viewmodule/__init__.py:64
 #, fuzzy
 msgid "Presentations"
-msgstr "Reset"
+msgstr "Service De Présentation"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:28
+#, fuzzy
 msgid "required:"
-msgstr ""
+msgstr "Requis"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:36
+#, fuzzy
 msgid "presentation type:"
-msgstr ""
+msgstr "Service De Présentation"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:43
 msgid "factory path:"
@@ -407,29 +434,33 @@
 #: src/zope/app/apidoc/viewmodule/index.pt:63
 #, fuzzy
 msgid "template:"
-msgstr "Page dynamique"
+msgstr "Format de page"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:68
+#, fuzzy
 msgid "resource:"
-msgstr ""
+msgstr "Source"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:7
+#, fuzzy
 msgid "views for"
-msgstr ""
+msgstr "Vue De Dossier"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:77
 #: src/zope/app/apidoc/classmodule/class_index.pt:87
 #: src/zope/app/apidoc/classmodule/class_index.pt:129
+#, fuzzy
 msgid "Permissions:"
-msgstr ""
+msgstr "Permission"
 
 #: src/zope/app/apidoc/viewmodule/index.pt:90
 msgid "There are no views for this interface and presentation type."
 msgstr ""
 
 #: src/zope/app/apidoc/viewmodule/menu.pt:18
+#, fuzzy
 msgid "Presentation Type:"
-msgstr ""
+msgstr "Service De Présentation"
 
 #: src/zope/app/apidoc/viewmodule/menu.pt:28
 msgid "Show all views:"
@@ -440,8 +471,9 @@
 msgstr ""
 
 #: src/zope/app/apidoc/viewmodule/menu.pt:8
+#, fuzzy
 msgid "Enter the interface name:"
-msgstr ""
+msgstr "Interface ${iface_name}"
 
 #: src/zope/app/apidoc/viewmodule/skin_layer.pt:15
 msgid "Skin-Layer Tree"
@@ -471,7 +503,7 @@
 #: src/zope/app/apidoc/zcmlmodule/index.pt:13
 #, fuzzy
 msgid "File:"
-msgstr "Fichiers"
+msgstr "Fichier"
 
 #: src/zope/app/apidoc/zcmlmodule/index.pt:19
 msgid ""
@@ -485,19 +517,20 @@
 
 #: src/zope/app/apidoc/zcmlmodule/index.pt:32
 #: src/zope/app/apidoc/zcmlmodule/index.pt:96
+#, fuzzy
 msgid "Handler:"
-msgstr ""
+msgstr "Entête"
 
 #: src/zope/app/apidoc/zcmlmodule/index.pt:40
 #, fuzzy
 msgid "Schema"
-msgstr "Formulaire d'édition"
+msgstr "Editer un Schéma"
 
 #: src/zope/app/apidoc/zcmlmodule/index.pt:68
 #: src/zope/app/apidoc/ifacemodule/index.pt:69
 #, fuzzy
 msgid "default"
-msgstr "Langue par défaut"
+msgstr "Valeur par défaut"
 
 #: src/zope/app/apidoc/zcmlmodule/index.pt:76
 #: src/zope/app/apidoc/zcmlmodule/index.pt:138
@@ -515,109 +548,100 @@
 
 #: src/zope/app/applicationcontrol/browser/configure.zcml:10
 msgid "Server Control"
-msgstr "Contrôle du serveur"
+msgstr "Contrôle du serveur"
 
 #: src/zope/app/applicationcontrol/browser/configure.zcml:15
 msgid "Runtime Information"
-msgstr "Information Runtime"
+msgstr "Information Temps D'Exécution"
 
 #: src/zope/app/applicationcontrol/browser/configure.zcml:24
 msgid "ZODB Control"
-msgstr "Contrôle de la ZODB"
+msgstr "Contrôle de la ZODB"
 
 #: src/zope/app/applicationcontrol/browser/configure.zcml:41
 msgid "Manage Process"
-msgstr "Gérer le processus"
+msgstr "Gérer le processus"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:10
-#, fuzzy
 msgid "Zope version"
-msgstr "Version Zope:"
+msgstr "Version Zope"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:14
-#, fuzzy
 msgid "Python version"
-msgstr "Version Python:"
+msgstr "Version Python"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:18
-#, fuzzy
 msgid "System platform"
-msgstr "Plateforme système:"
+msgstr "Plateforme système"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:22
 msgid "Preferred encoding"
-msgstr ""
+msgstr "Codage préféré"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:26
 msgid "FileSytem encoding"
-msgstr ""
+msgstr "Codage du système de fichier"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:3
 msgid "Zope Runtime Information"
-msgstr "Information Runtime de Zope"
+msgstr "Information Temps D'Exécution De Zope"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:30
-#, fuzzy
 msgid "Command line"
-msgstr "Ligne de commande:"
+msgstr "Ligne de commande"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:34
-#, fuzzy
 msgid "Process id"
-msgstr "Numéro de processus:"
+msgstr "Identification de processus"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:38
-#, fuzzy
 msgid "Uptime"
-msgstr "Temps depuis la mise en route:"
+msgstr "Temps depuis la mise en route"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.pt:42
-#, fuzzy
 msgid "Python path"
-msgstr "PYTHONPATH:"
+msgstr "PYTHONPATH"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.py:44
 msgid "${days} day(s) ${hours}:${minutes}:${seconds}"
-msgstr "${days} jour(s) ${hours} h ${minutes} min ${seconds} s"
+msgstr "${days} jour(s) ${hours}:${minutes}:${seconds}"
 
 #: src/zope/app/applicationcontrol/browser/runtimeinfo.py:65
-#, fuzzy
 msgid "Could not retrieve runtime information."
-msgstr "Information Runtime de Zope"
+msgstr "Information temps d'exécution indisponible."
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:11
 msgid "seconds"
-msgstr ""
+msgstr "secondes"
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:13
 msgid ""
 "If you specify a time of 0 seconds, then the server will do a hard shutdown."
-msgstr ""
+msgstr "Si vous spécifiez 0 seconde alors le serveur effectuera un arrêt dur."
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:18
 msgid "Restart server"
-msgstr "Redémarrer le serveur"
+msgstr "Redémarrer le serveur"
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:21
 msgid "Shutdown server"
-msgstr "Arrêter le serveur"
+msgstr "Arrêter le serveur"
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:3
 msgid "Zope Stub Server Controller"
-msgstr "Controleur du serveur Zope Stub"
+msgstr "Controleur De Serveur Zope Stub"
 
 #: src/zope/app/applicationcontrol/browser/server-control.pt:9
-#, fuzzy
 msgid "Shutdown time:"
-msgstr "Arrêter le serveur"
+msgstr "Arrêter le serveur:"
 
 #: src/zope/app/applicationcontrol/browser/servercontrol.py:32
 msgid "You restarted the server."
-msgstr "Vous avez redémarré le serveur."
+msgstr "Vous avez redémarré le serveur."
 
 #: src/zope/app/applicationcontrol/browser/servercontrol.py:35
 msgid "You shut down the server."
-msgstr "Vous avez arrêté le serveur."
+msgstr "Vous avez arrêté le serveur."
 
 #: src/zope/app/applicationcontrol/browser/translationdomaincontrol.pt:15
 msgid "Domain"
@@ -628,23 +652,20 @@
 msgstr "Fichiers"
 
 #: src/zope/app/applicationcontrol/browser/translationdomaincontrol.pt:29
-#, fuzzy
 msgid "reload-button"
 msgstr "Charger"
 
 #: src/zope/app/applicationcontrol/browser/translationdomaincontrol.py:49
-#, fuzzy
 msgid "Message Catalog successfully reloaded."
-msgstr "Le catalogue de traduction a été rechargé."
+msgstr "Le Catalogue De Message a été rechargé."
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.pt:14
-#, fuzzy
 msgid "Size of database: ${size}"
-msgstr "Taille du fichier: ${size}"
+msgstr "Taille de la base de données: ${size}"
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.pt:24
 msgid "Keep up to:"
-msgstr "Garder jusqu'à:"
+msgstr "Garder jusqu'à:"
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.pt:28
 msgid "days"
@@ -652,7 +673,7 @@
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.pt:3
 msgid "ZODB Controller"
-msgstr "Controleur ZODB"
+msgstr "Contrôleur ZODB"
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.pt:33
 msgid "pack-button"
@@ -660,7 +681,7 @@
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.pt:9
 msgid "Name of database: ${name}"
-msgstr ""
+msgstr "Nom de la base de données: ${name}"
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.py:31
 #: src/zope/app/size/__init__.py:52
@@ -673,139 +694,142 @@
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.py:37
 msgid "${size} Bytes"
-msgstr "${size} Bytes"
+msgstr "${size} Octets"
 
 #: src/zope/app/applicationcontrol/browser/zodbcontrol.py:50
 msgid "ZODB successfully packed."
-msgstr "Nettoyage de la ZODB réussi."
+msgstr "Nettoyage de la ZODB réussi."
 
 #: src/zope/app/basicskin/view_macros.pt:35
 msgid "User: ${user_title}"
-msgstr ""
+msgstr "Utilisateur: ${user_title}"
 
 #: src/zope/app/broken/browser.zcml:5
 msgid "Broken object"
-msgstr ""
+msgstr "Objet non lié"
 
 #: src/zope/app/bundle/browser/__init__.py:112
 msgid "Activated: ${activated}.\n"
-msgstr ""
+msgstr "Activé: ${activated}.\n"
 
 #: src/zope/app/bundle/browser/__init__.py:115
 msgid "Registered: ${registered}.\n"
-msgstr ""
+msgstr "Enregistré: ${registered}.\n"
 
 #: src/zope/app/bundle/browser/__init__.py:85
 msgid "unregistered ${count} registrations"
-msgstr ""
+msgstr "enregistrements ${count} non validés"
 
 #: src/zope/app/bundle/browser/bundle.pt:11
 msgid "Services needed by this bundle"
-msgstr ""
+msgstr "Services nécessaires à ce Paquet"
 
 #: src/zope/app/bundle/browser/bundle.pt:110
 msgid "(is: ${active_status})"
-msgstr ""
+msgstr "(est: ${active_status})"
 
 #: src/zope/app/bundle/browser/bundle.pt:119
 msgid "No registrations are provided by this bundle."
-msgstr ""
+msgstr "Aucun enregistrement n'est fourni par ce Paquet."
 
 #: src/zope/app/bundle/browser/bundle.pt:123
 msgid "Click \"Activate bundle\" to perform the above actions."
 msgstr ""
+"Sélectionner \"Activer le paquet\" afin d'effectuer les actions ci-dessus."
 
 #: src/zope/app/bundle/browser/bundle.pt:127
 msgid "activate-bundle-button"
-msgstr ""
+msgstr "Activer Le Paquet"
 
 #: src/zope/app/bundle/browser/bundle.pt:137
 msgid ""
 "Click \"Deactivate bundle\" to unregister all registrations in this bundle."
 msgstr ""
+"Sélectionner \"Désactiver Le Paquet\" afin de supprimer tous les "
+"enregistrements de ce Paquet."
 
 #: src/zope/app/bundle/browser/bundle.pt:140
 msgid "deactivate-bundle-button"
-msgstr ""
+msgstr "Désactiver Le Paquet"
 
 #: src/zope/app/bundle/browser/bundle.pt:16
 msgid "${service_name} service"
-msgstr ""
+msgstr "Service ${service_name}"
 
 #: src/zope/app/bundle/browser/bundle.pt:20
 msgid "present in site at ${path}"
-msgstr ""
+msgstr "présent dans le site à ${path}"
 
 #: src/zope/app/bundle/browser/bundle.pt:26
 msgid "registered in bundle at ${path}"
-msgstr ""
+msgstr "enregistré dans le Paquet à ${path}"
 
 #: src/zope/app/bundle/browser/bundle.pt:3
 #: src/zope/app/bundle/browser/bundle.pt:8
 msgid "Bundle Information"
-msgstr ""
+msgstr "Information Paquet"
 
 #: src/zope/app/bundle/browser/bundle.pt:31
 msgid "UNFULFILLED DEPENDENCY"
-msgstr ""
+msgstr "DÉPENDANCE NON ATTEINTE"
 
 #: src/zope/app/bundle/browser/bundle.pt:36
 msgid ""
 "(You must <a href=\"../default/AddService\">add a ${service_name} service to "
 "this site</a> before you can activate this bundle)"
 msgstr ""
+"Vous devez <a href=\"../default/AddService\">ajouter un Service "
+"${service_name} à ce site</a> avant de pouvoir activer ce Paquet)"
 
 #: src/zope/app/bundle/browser/bundle.pt:43
 msgid "No services are required by this bundle."
-msgstr ""
+msgstr "Aucun Service n'est exigé par ce Paquet."
 
 #: src/zope/app/bundle/browser/bundle.pt:47
 msgid "Registrations in this bundle"
-msgstr ""
+msgstr "Enregistrement dans ce Paquet"
 
 #: src/zope/app/bundle/browser/bundle.pt:63
 msgid "For ${service_name} service"
-msgstr ""
+msgstr "Pour le Service ${service_name}"
 
 #: src/zope/app/bundle/browser/bundle.pt:73
 msgid "${usage_summary} implemented by ${impl_summary}"
-msgstr ""
+msgstr "${usage_summary} implémenté par ${impl_summary}"
 
 #: src/zope/app/bundle/browser/bundle.pt:78
 msgid "Conflicts with"
-msgstr ""
+msgstr "Conflits avec"
 
 #: src/zope/app/bundle/browser/bundle.pt:82
 msgid "Overrides"
-msgstr ""
+msgstr "Surcharge"
 
 #: src/zope/app/bundle/browser/bundle.pt:92
 #: src/zope/app/bundle/browser/bundle.pt:103
 msgid "Register only"
-msgstr ""
+msgstr "Seulement enregistré"
 
 #: src/zope/app/bundle/browser/bundle.pt:96
 #: src/zope/app/bundle/browser/bundle.pt:107
 msgid "Register and activate"
-msgstr ""
+msgstr "Enregistrer et activer"
 
 #: src/zope/app/bundle/browser/configure.zcml:19
 msgid "Bundle"
-msgstr ""
+msgstr "Paquet"
 
 #: src/zope/app/cache/browser/cacheable.py:57
-#, fuzzy
 msgid "cache-invalidated"
-msgstr "Cache invalidé."
+msgstr "Cache invalidé"
 
 #: src/zope/app/cache/browser/cacheable.py:59
-#, fuzzy
 msgid "no-cache-associated"
-msgstr "Il n'y a pas de cache associé à l'objet."
+msgstr "Il n'y a pas de cache associé"
 
 #: src/zope/app/cache/browser/cacheable.py:71
 msgid "Saved changes."
-msgstr "Changements enregistrés."
+msgstr "Changements enregistrés."
 
 #: src/zope/app/cache/browser/cacheableedit.pt:15
 msgid "Currently the object uses ${cache_id_or_url}."
@@ -817,31 +841,31 @@
 
 #: src/zope/app/cache/browser/cacheableedit.pt:47
 msgid "invalidate-cache-button"
-msgstr "Invalider"
+msgstr "Invalider Le Cache"
 
 #: src/zope/app/cache/browser/cacheableedit.pt:5
 msgid "This edit form allows you to associate a cache with this object."
-msgstr "Ce formulaire vous permet d'associer un cahe à cet objet."
+msgstr "Ce formulaire vous permet d'associer un cache à cet objet."
 
 #: src/zope/app/cache/browser/cacheableedit.pt:9
 msgid "Currently there is no cache associated with the object."
-msgstr "Actuellement, il n'y a pas de cache associé à cet objet."
+msgstr "Actuellement, il n'y a pas de cache associé à cet objet."
 
 #: src/zope/app/cache/browser/ramedit.pt:20
 msgid "Maximum cached entries"
-msgstr "Nombre maximum d'entrées dans le cache"
+msgstr "Nombre maximum d'entrées dans le cache"
 
 #: src/zope/app/cache/browser/ramedit.pt:30
 msgid "Maximum age of cached entries"
-msgstr "Age maximum des entrées dans le cache"
+msgstr "Age maximum des entrées dans le cache"
 
 #: src/zope/app/cache/browser/ramedit.pt:40
 msgid "Time between cache cleanups"
-msgstr "Temps entre les nettoyage du cache"
+msgstr "Temps entre les nettoyages du cache"
 
 #: src/zope/app/cache/browser/ramedit.pt:5
 msgid "You can configure the RAM Cache here."
-msgstr "Vous pouvez configurer le cache RAM ici."
+msgstr "Vous pouvez configurer le cache de RAM ici."
 
 #: src/zope/app/cache/browser/ramstats.pt:20
 msgid "Path"
@@ -849,28 +873,27 @@
 
 #: src/zope/app/cache/browser/ramstats.pt:21
 msgid "Hits"
-msgstr "Hits"
+msgstr "Succès"
 
 #: src/zope/app/cache/browser/ramstats.pt:22
 msgid "Misses"
-msgstr "Misses"
+msgstr "Echecs"
 
 #: src/zope/app/cache/browser/ramstats.pt:23
 msgid "Size, bytes"
-msgstr "Taille (bytes)"
+msgstr "Taille, octets"
 
 #: src/zope/app/cache/browser/ramstats.pt:24
 msgid "Entries"
-msgstr "Entrées"
+msgstr "Entrées"
 
 #: src/zope/app/cache/browser/ramstats.pt:6
-#, fuzzy
 msgid "RAMCache statistics"
-msgstr "Statistiques"
+msgstr "Statistiques RAMCache"
 
 #: src/zope/app/container/browser/adding.py:117
 msgid "You must select the type of object to add."
-msgstr "Vous devez sélectionner le type de l'objet à ajouter."
+msgstr "Vous devez sélectionner le type de l'objet à ajouter."
 
 #: src/zope/app/container/browser/configure.zcml:18
 msgid "Find"
@@ -878,43 +901,43 @@
 
 #: src/zope/app/container/browser/contents.pt:119
 msgid "container-rename-button"
-msgstr "Renommer"
+msgstr "Renommer Le Conteneur"
 
 #: src/zope/app/container/browser/contents.pt:123
 msgid "container-cut-button"
-msgstr "Couper"
+msgstr "Couper Le Conteneur"
 
 #: src/zope/app/container/browser/contents.pt:127
 msgid "container-copy-button"
-msgstr "Copier"
+msgstr "Copier Le Conteneur"
 
 #: src/zope/app/container/browser/contents.pt:131
 msgid "container-paste-button"
-msgstr "Coller"
+msgstr "Coller Le Conteneur"
 
 #: src/zope/app/container/browser/contents.pt:162
 msgid "container-apply-button"
-msgstr "Appliquer"
+msgstr "Appliquer Le Conteneur"
 
 #: src/zope/app/container/browser/contents.pt:165
 msgid "container-cancel-button"
-msgstr "Annuler"
+msgstr "Annuler Le Conteneur"
 
 #: src/zope/app/container/browser/contents.py:232
 msgid "You didn't specify any ids to remove."
-msgstr "Vous n'avez pas spécifié d'objets à effacer."
+msgstr "Vous n'avez pas spécifié d'identificateurs à effacer."
 
 #: src/zope/app/container/browser/contents.py:244
 msgid "You didn't specify any ids to copy."
-msgstr "Vous n'avez pas spécifié d'objets à copier"
+msgstr "Vous n'avez pas spécifié d'identificateurs à copier"
 
 #: src/zope/app/container/browser/contents.py:264
 msgid "You didn't specify any ids to cut."
-msgstr "Vous n'avez pas spécifié d'objets à couper"
+msgstr "Vous n'avez pas spécifié d'identificateurs à couper"
 
 #: src/zope/app/container/browser/contents.py:61
 msgid "You didn't specify any ids to rename."
-msgstr "Vous n'avez pas spécifié d'objets à renommer"
+msgstr "Vous n'avez pas spécifié d'identificateurs à renommer"
 
 #: src/zope/app/container/browser/metaconfigure.py:63
 #: src/zope/app/folder/browser/configure.zcml:20
@@ -937,121 +960,119 @@
 
 #: src/zope/app/container/constraints.py:187
 msgid "Container is not a valid Zope container."
-msgstr ""
+msgstr "Le Conteneur n'est pas un Conteneur Zope valide."
 
 #: src/zope/app/container/contained.py:688
 msgid "An empty name was provided. Names cannot be empty."
-msgstr ""
+msgstr "Un nom doit être spécifié."
 
 #: src/zope/app/container/contained.py:698
 msgid "Names cannot begin with '+' or '@' or contain '/'"
-msgstr ""
+msgstr "Les noms ne peuvent pas commencer par '+' ou '@' ou contenir '/'"
 
 #: src/zope/app/container/contained.py:703
 msgid "The given name is already being used"
-msgstr ""
+msgstr "Le nom spécifié est déjà utilisé"
 
 #: src/zope/app/container/size.py:40
 msgid "1 item"
-msgstr ""
+msgstr "1 élément"
 
 #: src/zope/app/container/size.py:41
 msgid "${items} items"
-msgstr ""
+msgstr "${items} éléments"
 
 #: src/zope/app/debugskin/error_debug.pt:12
 msgid "Error object: ${error_object}"
-msgstr ""
+msgstr "Objet erreur: ${error_object}"
 
 #: src/zope/app/debugskin/error_debug.pt:7
 msgid "Error type: ${error_type}"
-msgstr ""
+msgstr "Type de l'erreur: ${error_type}"
 
 #: src/zope/app/debugskin/unauthorized.pt:7
 #: src/zope/app/exception/browser/unauthorized.pt:8
 msgid "Unauthorized"
-msgstr "Pas autorisé"
+msgstr "Pas autorisé"
 
 #: src/zope/app/debugskin/unauthorized.pt:8
 msgid "You're not allowed in here."
-msgstr ""
+msgstr "Vous n'êtes pas autorisé ici."
 
 #: src/zope/app/demo/insensitivefolder/configure.zcml:30
 msgid "Case insensitive Folder"
-msgstr ""
+msgstr "Dossier insensible à la case"
 
 #: src/zope/app/demo/insensitivefolder/configure.zcml:30
-#, fuzzy
 msgid "A simple case insensitive Folder."
-msgstr "Un dossier"
+msgstr "Un simple Dossier insensible à la case."
 
 #: src/zope/app/demo/passwdauth/interfaces.py:27
 msgid "File Name"
-msgstr ""
+msgstr "Nom de fichier"
 
 #: src/zope/app/demo/passwdauth/interfaces.py:28
 msgid "File name of the data file."
-msgstr ""
+msgstr "Nom de fichier du fichier de données."
 
 #: src/zope/app/dtmlpage/configure.zcml:13
 msgid "A simple, content-based DTML Page"
-msgstr ""
+msgstr "Une simple Page DTML de contenu"
 
 #: src/zope/app/dtmlpage/configure.zcml:13
 #: src/zope/app/dtmlpage/configure.zcml:81
 msgid "DTML Page"
-msgstr ""
+msgstr "Page DTML"
 
 #: src/zope/app/dtmlpage/configure.zcml:59
 msgid "Edit a DTML page"
-msgstr "Editer une page DTML"
+msgstr "Editer une Page DTML"
 
 #: src/zope/app/dtmlpage/configure.zcml:73
-#, fuzzy
 msgid "Add a DTML Page"
-msgstr "Editer une page DTML"
+msgstr "Ajouter une Page DTML"
 
 #: src/zope/app/dtmlpage/configure.zcml:81
 msgid "A simple, content-based DTML page"
-msgstr ""
+msgstr "A simple, content-based DTML Page"
 
 #: src/zope/app/dtmlpage/interfaces.py:31
 #: src/zope/app/pythonpage/__init__.py:39
 #: src/zope/app/sqlscript/interfaces.py:44
 #: src/zope/app/zptpage/interfaces.py:36
 msgid "Source"
-msgstr ""
+msgstr "Source"
 
 #: src/zope/app/dtmlpage/interfaces.py:32
 msgid "The source of the dtml page."
-msgstr ""
+msgstr "La source de la Page DTML."
 
 #: src/zope/app/dublincore/browser/configure.zcml:10
 #: src/zope/app/zopetop/widget_macros.pt:166
 msgid "Metadata"
-msgstr "Metadonnées"
+msgstr "Metadonnées"
 
 #: src/zope/app/dublincore/browser/edit.pt:43
 msgid "Content Last Modified"
-msgstr "Contenu modifié"
+msgstr "Contenu Modifié Récemment"
 
 #: src/zope/app/dublincore/browser/edit.pt:47
 msgid "Creator"
-msgstr "Créateur"
+msgstr "Créateur"
 
 #: src/zope/app/dublincore/browser/metadataedit.py:38
 msgid "Changed data ${datetime}"
-msgstr "Données changées le ${datetime}"
+msgstr "Données changées le ${datetime}"
 
 # Default: "View Dublin-Core Meta Data"
 #: src/zope/app/dublincore/configure.zcml:3
 msgid "zope.app.dublincore.view-permission"
-msgstr ""
+msgstr "Afficher Des Meta Données Dublin-Core"
 
 # Default: "Change Dublin-Core Meta Data"
 #: src/zope/app/dublincore/configure.zcml:9
 msgid "zope.app.dublincore.change-permission"
-msgstr ""
+msgstr "Modifier Des Meta Données Dublin-Core"
 
 #: src/zope/app/errorservice/browser/configure.zcml:13
 #: src/zope/app/errorservice/browser/configure.zcml:26
@@ -1059,134 +1080,137 @@
 #: src/zope/app/cache/browser/ramstats.pt:10
 #: src/zope/app/cache/browser/ramedit.pt:9
 msgid "Errors"
-msgstr ""
+msgstr "Erreurs"
 
 #: src/zope/app/errorservice/browser/configure.zcml:28
 msgid "Configure"
-msgstr ""
+msgstr "Configurer"
 
 #: src/zope/app/errorservice/browser/configure.zcml:35
 msgid "Error Logging Service"
-msgstr ""
+msgstr "Service D'Enregistrement D'Erreurs"
 
 #: src/zope/app/errorservice/browser/configure.zcml:35
 msgid "Error Reporting Service for Logging Errors"
-msgstr ""
+msgstr "Service De Rapport D'Erreur Pour Liste D'Erreur D'Enregistrement"
 
 #: src/zope/app/errorservice/browser/error.pt:10
 msgid ""
 "This page lists the exceptions that have occurred in this site recently."
 msgstr ""
+"Cette page liste les exceptions qui se sont produites récemment dans ce site."
 
 #: src/zope/app/errorservice/browser/error.pt:15
 msgid "No exceptions logged."
-msgstr ""
+msgstr "Pas d'exceptions enregistrées."
 
 #: src/zope/app/errorservice/browser/error.pt:21
 #: src/zope/app/errorservice/browser/errorentry.pt:20
 msgid "Time"
-msgstr ""
+msgstr "Temps"
 
 #: src/zope/app/errorservice/browser/error.pt:22
 #: src/zope/app/errorservice/browser/errorentry.pt:25
 msgid "User"
-msgstr ""
+msgstr "Utilisateur"
 
 #: src/zope/app/errorservice/browser/error.pt:23
 msgid "Exception"
-msgstr ""
+msgstr "Exception"
 
 #: src/zope/app/errorservice/browser/error.pt:3
 #: src/zope/app/errorservice/browser/errorentry.pt:3
 msgid "View Error Log Report"
-msgstr ""
+msgstr "Visualiser Rapport D'Enregistrement D'Erreur"
 
 #: src/zope/app/errorservice/browser/error.pt:8
 msgid "Exception Log (most recent first)"
-msgstr ""
+msgstr "Fichier D'Enregistrement Des Exceptions (les plus récentes en premier)"
 
 #: src/zope/app/errorservice/browser/error_config.pt:18
 msgid "Number of exceptions to keep"
-msgstr ""
+msgstr "Nombre d'exception à conserver"
 
 #: src/zope/app/errorservice/browser/error_config.pt:26
 msgid "Copy exceptions to the event log"
-msgstr ""
+msgstr "Copier les exceptions dans le fichier d'enregistrement d'événement"
 
 #: src/zope/app/errorservice/browser/error_config.pt:3
 msgid "Configure Error Log"
-msgstr ""
+msgstr "Configurer Fichier D'Enregistrement D'Erreur"
 
 #: src/zope/app/errorservice/browser/error_config.pt:36
 msgid "Ignored exception types"
-msgstr ""
+msgstr "Types d'exceptions ignorés"
 
 #: src/zope/app/errorservice/browser/error_config.pt:8
 msgid ""
 "You can configure how many exceptions should be kept and whether the "
 "exceptions should be copied to Zope's event log file(s)."
 msgstr ""
+"Vous pouvez configurer le nombre d'exceptions à conserver et définir si les "
+"exceptions doivent être copiées dans le(s) fichier(s) d'enregistrement "
+"d'événement Zope."
 
 #: src/zope/app/errorservice/browser/errorentry.pt:11
 msgid "Exception traceback"
-msgstr ""
+msgstr "Trace de l'exception"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:30
 msgid "Request URL"
-msgstr ""
+msgstr "Requête URL"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:35
 msgid "Exception Type"
-msgstr ""
+msgstr "Type d'exception"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:40
 msgid "Exception Value"
-msgstr ""
+msgstr "Valeur de l'Exception"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:45
 msgid "Traceback"
-msgstr ""
+msgstr "Trace"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:59
 msgid "Display traceback as text"
-msgstr ""
+msgstr "Afficher la trace au format texte"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:67
 msgid "REQUEST"
-msgstr ""
+msgstr "REQUEST"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:78
 msgid "return-to-log-button"
-msgstr ""
+msgstr "Retourner au fichier d'enregistrement"
 
 #: src/zope/app/errorservice/browser/errorentry.pt:9
 msgid "Header"
-msgstr ""
+msgstr "Entête"
 
 #: src/zope/app/exception/browser/notfound.pt:10
 msgid "Please note the following:"
-msgstr ""
+msgstr "Veuillez noter ce qui suit:"
 
 #: src/zope/app/exception/browser/notfound.pt:13
 msgid "You might have miss-spelled the url"
-msgstr ""
+msgstr "Vous devez avoir incorrectement orthographier l'URL"
 
 #: src/zope/app/exception/browser/notfound.pt:14
 msgid "You might be trying to access a non-existing page"
-msgstr ""
+msgstr "Vous tentez d'accéder à une page inexistante"
 
 #: src/zope/app/exception/browser/notfound.pt:6
 msgid "The page that you are trying to access is not available"
-msgstr ""
+msgstr "La page à laquelle vous tentiez d'accéder n'est pas disponible"
 
 #: src/zope/app/file/browser/configure.zcml:109
-#, fuzzy
 msgid "Add a Image"
-msgstr "Charger une image"
+msgstr "Ajouter une Image"
 
 #: src/zope/app/file/browser/configure.zcml:16
 msgid "Change a file"
-msgstr "Changer de fichier"
+msgstr "Modifier un fichier"
 
 #: src/zope/app/file/browser/configure.zcml:37
 msgid "Upload a file"
@@ -1200,13 +1224,12 @@
 msgstr "Charger"
 
 #: src/zope/app/file/browser/configure.zcml:61
-#, fuzzy
 msgid "Add a File"
-msgstr "Charger un fichier"
+msgstr "Ajouter un Fichier"
 
 #: src/zope/app/file/browser/configure.zcml:77
 msgid "Upload an image"
-msgstr "Charger une image"
+msgstr "Charger une Image"
 
 #: src/zope/app/file/browser/image_edit.pt:11
 #: src/zope/app/container/browser/contents.pt:34
@@ -1216,51 +1239,51 @@
 # Default: "Add Images"
 #: src/zope/app/file/configure.zcml:19
 msgid "add-images-permission"
-msgstr ""
+msgstr "Ajouter Images"
 
 #: src/zope/app/file/configure.zcml:28
 #: src/zope/app/file/browser/configure.zcml:53
 msgid "File"
-msgstr ""
+msgstr "Fichier"
 
 #: src/zope/app/file/configure.zcml:28
 #: src/zope/app/file/browser/configure.zcml:53
 msgid "A File"
-msgstr ""
+msgstr "Un Fichier"
 
 #: src/zope/app/file/configure.zcml:50
 #: src/zope/app/file/browser/configure.zcml:101
 msgid "An Image"
-msgstr ""
+msgstr "Une Image"
 
 #: src/zope/app/file/configure.zcml:50
 #: src/zope/app/file/browser/configure.zcml:101
 msgid "Image"
-msgstr ""
+msgstr "Image"
 
 #: src/zope/app/file/image.py:73
 msgid " ${width}x${height}"
-msgstr ""
+msgstr " ${width}x${height}"
 
 #: src/zope/app/file/interfaces.py:25 src/zope/app/pythonpage/__init__.py:44
 #: src/zope/app/i18nfile/browser/file_edit.pt:31
 #: src/zope/app/i18nfile/browser/image_edit.pt:32
 msgid "Content Type"
-msgstr ""
+msgstr "Type De Contenu"
 
 #: src/zope/app/file/interfaces.py:26
 msgid "The content type identifies the type of data."
-msgstr ""
+msgstr "Le type de contenu identifie le type de données."
 
 #: src/zope/app/file/interfaces.py:32
 #: src/zope/app/i18nfile/browser/file_edit.pt:78
 #: src/zope/app/i18nfile/browser/image_edit.pt:79
 msgid "Data"
-msgstr ""
+msgstr "Données"
 
 #: src/zope/app/file/interfaces.py:33
 msgid "The actual content of the object."
-msgstr ""
+msgstr "Le contenu de l'objet."
 
 #: src/zope/app/folder/browser/configure.zcml:40
 #: src/zope/app/dtmlpage/configure.zcml:93
@@ -1269,23 +1292,22 @@
 #: src/zope/app/pythonpage/configure.zcml:72
 #: src/zope/app/zptpage/browser/configure.zcml:70
 msgid "Preview"
-msgstr "Aperçu"
+msgstr "Aperçu"
 
 #: src/zope/app/folder/configure.zcml:12
 #: src/zope/app/folder/browser/configure.zcml:13
 msgid "Folder"
-msgstr ""
+msgstr "Dossier"
 
 #: src/zope/app/folder/configure.zcml:12
 #: src/zope/app/folder/browser/configure.zcml:13
 msgid "Minimal folder"
-msgstr ""
+msgstr "Dossier minimum"
 
 #: src/zope/app/form/browser/add.pt:55
 #: src/zope/app/wiki/browser/wiki_add.pt:34
-#, fuzzy
 msgid "Object Name"
-msgstr "Nom de l'argument"
+msgstr "Nom de l'objet"
 
 #: src/zope/app/form/browser/add.py:61
 #: src/zope/app/form/browser/editview.py:106
@@ -1293,75 +1315,75 @@
 #: src/zope/app/schema/browser/__init__.py:64
 #: src/zope/app/schema/browser/__init__.py:70
 msgid "An error occured."
-msgstr "Il y a une erreur"
+msgstr "Une erreur s'est produite."
 
 #: src/zope/app/form/browser/boolwidgets.py:84
 #: src/zope/app/form/browser/boolwidgets.py:89
 #: src/zope/app/form/browser/boolwidgets.py:96
 msgid "off"
-msgstr ""
+msgstr "désactivé"
 
 #: src/zope/app/form/browser/boolwidgets.py:84
 #: src/zope/app/form/browser/boolwidgets.py:89
 #: src/zope/app/form/browser/boolwidgets.py:96
 msgid "on"
-msgstr ""
+msgstr "activé"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:45
 msgid "sampleWidget-button-move-up"
-msgstr ""
+msgstr "Monter"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:46
 msgid "sampleWidget-button-move-down"
-msgstr ""
+msgstr "Descendre"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:47
 msgid "sampleWidget-button-remove"
-msgstr ""
+msgstr "Supprimer"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:48
 msgid "sampleWidget-button-add-done"
-msgstr ""
+msgstr "Ajout effectué"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:49
 msgid "sampleWidget-button-add-more"
-msgstr ""
+msgstr "Rajouter"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:50
 msgid "sampleWidget-button-more"
-msgstr ""
+msgstr "Suite"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:51
 msgid "sampleWidget-button-clear"
-msgstr ""
+msgstr "Vider"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:52
 msgid "sampleWidget-button-query"
-msgstr ""
+msgstr "Requête"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:53
 msgid "sampleWidget-button-select"
-msgstr ""
+msgstr "Sélectionner"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:54
 msgid "sampleWidget-button-dismiss"
-msgstr ""
+msgstr "Ecarter"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:57
 msgid "sampleWidget-label-enter-search-text"
-msgstr ""
+msgstr "Entrer le texte de recherche"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:59
 msgid "sampleWidget-label-select-content-type"
-msgstr ""
+msgstr "Sélectionner le type de contenu"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:61
 msgid "sampleWidget-label-any-content-type"
-msgstr ""
+msgstr "Tout type de contenu"
 
 #: src/zope/app/form/browser/complexsample/complexsample.py:63
 msgid "sampleWidget-label-inaccessable-object"
-msgstr ""
+msgstr "Objet inacessible"
 
 #: src/zope/app/form/browser/complexsample/interfaces.py:29
 #: src/zope/app/publisher/interfaces/browser.py:44
@@ -1377,24 +1399,24 @@
 #: src/zope/app/container/browser/contents.pt:33
 #: src/zope/app/container/browser/index.pt:27
 msgid "Title"
-msgstr ""
+msgstr "Titre"
 
 #: src/zope/app/form/browser/complexsample/widgetapi.py:56
 msgid "widget-missing-single-value"
-msgstr ""
+msgstr "Valeur simple manquante"
 
 #: src/zope/app/form/browser/complexsample/widgetapi.py:58
 msgid "widget-missing-multiple-value"
-msgstr ""
+msgstr "Valeur multiple manquante"
 
 #: src/zope/app/form/browser/editview.py:115
 msgid "Updated on ${date_time}"
-msgstr ""
+msgstr "Mis à jour le ${date_time}"
 
 #: src/zope/app/form/browser/editwizard.pt:47
 #: src/zope/app/form/browser/addwizard.pt:55
 msgid "previous-button"
-msgstr "Précédent"
+msgstr "Précédent"
 
 #: src/zope/app/form/browser/editwizard.pt:53
 #: src/zope/app/form/browser/addwizard.pt:61
@@ -1403,78 +1425,77 @@
 
 #: src/zope/app/form/browser/editwizard.py:149
 msgid "No changes to save"
-msgstr ""
+msgstr "Pas de changement à sauvegarder"
 
 #: src/zope/app/form/browser/editwizard.py:151
 msgid "Changes saved"
-msgstr ""
+msgstr "Changements sauvegardés"
 
 #: src/zope/app/form/browser/itemswidgets.py:228
 msgid "item-missing-single-value-for-display"
-msgstr ""
+msgstr "Valeur simple manquante pour l'affichage"
 
 #: src/zope/app/form/browser/itemswidgets.py:244
 msgid "vocabulary-missing-multiple-value-for-display"
-msgstr ""
+msgstr "Valeur multiple manquante pour l'affichage"
 
 #: src/zope/app/form/browser/itemswidgets.py:425
 #: src/zope/app/form/browser/itemswidgets.py:469
 msgid "vocabulary-missing-single-value-for-edit"
-msgstr ""
+msgstr "Valeur simple manquante pour l'édition"
 
 #: src/zope/app/form/browser/itemswidgets.py:543
 msgid "vocabulary-missing-multiple-value-for-edit"
-msgstr ""
+msgstr "Valeur multiple manquante pour l'édition"
 
 # Default: "Remove selected items"
 #: src/zope/app/form/browser/sequencewidget.py:84
 msgid "remove-selected-items"
-msgstr ""
+msgstr "Supprimer les éléments sélectionnés"
 
 #: src/zope/app/form/browser/sequencewidget.py:91
-#, fuzzy
 msgid "Add %s"
-msgstr "Ajouter"
+msgstr "Ajouter %s"
 
 #: src/zope/app/form/browser/vocabularyquery.py:165
 msgid "vocabulary-query-button-add-done"
-msgstr ""
+msgstr "Ajout effectué"
 
 #: src/zope/app/form/browser/vocabularyquery.py:167
 msgid "vocabulary-query-button-add-more"
-msgstr ""
+msgstr "Rajouter"
 
 #: src/zope/app/form/browser/vocabularyquery.py:169
 msgid "vocabulary-query-button-more"
-msgstr ""
+msgstr "Suite"
 
 #: src/zope/app/form/browser/vocabularyquery.py:171
 msgid "vocabulary-query-message-no-results"
-msgstr ""
+msgstr "Aucun résultat"
 
 #: src/zope/app/form/browser/vocabularyquery.py:173
 msgid "vocabulary-query-header-results"
-msgstr ""
+msgstr "Résultat"
 
 #: src/zope/app/fssync/browser/__init__.py:156
 msgid "required argument 'name' missing"
-msgstr "L'argument 'name' requis manque"
+msgstr "L'argument requis 'name' n'est pas disponible"
 
 #: src/zope/app/fssync/browser/__init__.py:215
 msgid "Up-to-date check failed:"
-msgstr "Archivage raté:"
+msgstr "Le test de mise à jour a échoué:"
 
 #: src/zope/app/fssync/browser/__init__.py:90
 msgid "Content-Type is not application/x-snarf"
-msgstr "Content-Type n'st pas application/x-snarf"
+msgstr "Type De Contenu n'est pas application/x-snarf"
 
 #: src/zope/app/fssync/browser/fromFS.pt:11
 msgid "Commit results: ${results}"
-msgstr "Résultats archivés: ${results}"
+msgstr "Résultats enregistrés: ${results}"
 
 #: src/zope/app/fssync/browser/fromFS.pt:16
 msgid "Upload a zipfile in the following form"
-msgstr "Charger un fichier zip de la forme suivante"
+msgstr "Charger un fichier zip dans le formulaire suivant"
 
 #: src/zope/app/fssync/browser/fromFS.pt:20
 msgid "upload-button"
@@ -1482,227 +1503,229 @@
 
 #: src/zope/app/fssync/browser/fromFS.pt:5
 msgid "Commit Action"
-msgstr "Approuver une action"
+msgstr "Enregistrer Action"
 
 #: src/zope/app/generations/browser/configure.zcml:6
 msgid "Database Schemas"
-msgstr ""
+msgstr "Schéma De Base De Données"
 
 #: src/zope/app/generations/browser/managers.pt:18
 msgid ""
 "The database was updated to generation ${generation} for ${application}."
 msgstr ""
+"La base de données a été mise à jour à la génération ${generation} pour "
+"${application}."
 
 #: src/zope/app/generations/browser/managers.pt:23
 msgid "The database is up to date for ${application}."
-msgstr ""
+msgstr "La base données est mise à jour pour ${application}."
 
 #: src/zope/app/generations/browser/managers.pt:32
-#, fuzzy
 msgid "Application"
-msgstr "Approuver une action"
+msgstr "Application"
 
 #: src/zope/app/generations/browser/managers.pt:33
 msgid "Minimum Generation"
-msgstr ""
+msgstr "Generation minimum"
 
 #: src/zope/app/generations/browser/managers.pt:34
-#, fuzzy
 msgid "Maximum Generation"
-msgstr "Nombre maximum d'entrées dans le cache"
+msgstr "Génération maximum"
 
 #: src/zope/app/generations/browser/managers.pt:35
 msgid "Current Database Generation"
-msgstr ""
+msgstr "Génération actuelle De Base De Données"
 
 #: src/zope/app/generations/browser/managers.pt:36
 msgid "Evolve?"
-msgstr ""
+msgstr "Evoluez?"
 
 #: src/zope/app/generations/browser/managers.pt:48
 msgid "No, up to date"
-msgstr ""
+msgstr "Non, à jour"
 
 #: src/zope/app/generations/browser/managers.pt:8
 msgid "Database generations"
-msgstr ""
+msgstr "Générations de Base De Données"
 
 #: src/zope/app/i18n/browser/configure.zcml:17
 msgid "Translate"
-msgstr ""
+msgstr "Traduire"
 
 #: src/zope/app/i18n/browser/configure.zcml:35
 #: src/zope/app/workflow/browser/configure.zcml:15
 msgid "Import/Export"
-msgstr ""
+msgstr "Importation/Exportation"
 
 #: src/zope/app/i18n/browser/configure.zcml:48
 msgid "Synchronize"
-msgstr ""
+msgstr "Synchroniser"
 
 #: src/zope/app/i18n/browser/configure.zcml:5
 msgid ""
 "Translation Domains allow you to localize your software by       providing "
 "message translations."
 msgstr ""
+"Les Domaines De Traduction vous permettent de localiser votre logiciel "
+"en        fournissant les traductions de message."
 
 #: src/zope/app/i18n/browser/configure.zcml:5
 #: src/zope/app/applicationcontrol/browser/configure.zcml:32
 #: src/zope/app/applicationcontrol/browser/translationdomaincontrol.pt:3
 msgid "Translation Domains"
-msgstr ""
+msgstr "Domaines De Traduction"
 
 #: src/zope/app/i18n/browser/configure.zcml:61
 msgid "Translation Domain"
-msgstr ""
+msgstr "Domaine De Traduction"
 
 #: src/zope/app/i18n/browser/configure.zcml:61
 msgid "A Persistent Translation Domain"
-msgstr ""
+msgstr "Un Domaine De Traduction Persistant"
 
 #: src/zope/app/i18n/browser/configure.zcml:69
 msgid "New Translation Domain Registration"
-msgstr ""
+msgstr "Enregistrement De Nouveau Domaine De Traduction"
 
 #: src/zope/app/i18n/browser/exportimport.pt:10
 msgid "Import and Export Messages"
-msgstr ""
+msgstr "Messages D'Importation et D'Exportation"
 
 #: src/zope/app/i18n/browser/exportimport.pt:12
 msgid "Here you can export and import messages from your Translation Domain."
 msgstr ""
+"Ici vous pouvez exporter et importer des messages de votre Domaine De "
+"Traduction."
 
 #: src/zope/app/i18n/browser/exportimport.pt:32
 msgid "Import File Name:"
-msgstr ""
+msgstr "Nom du Fichier D'Importation:"
 
 #: src/zope/app/i18n/browser/exportimport.pt:39
 msgid "export-button"
-msgstr ""
+msgstr "Exportater"
 
 #: src/zope/app/i18n/browser/synchronize.pt:122
 msgid "No connection could be made to remote data source."
 msgstr ""
+"Aucune connexion ne peut-être établie avec la source de données externe."
 
 #: src/zope/app/i18n/browser/synchronize.pt:26
 msgid "Server URL"
-msgstr ""
+msgstr "URL de serveur"
 
 #: src/zope/app/i18n/browser/synchronize.pt:3
 msgid "Translation Service - Synchronize"
-msgstr ""
+msgstr "Synchroniser - Service De Traduction"
 
 #: src/zope/app/i18n/browser/synchronize.pt:65
 msgid "save-settings-button"
-msgstr ""
+msgstr "Sauver paramétrage"
 
 #: src/zope/app/i18n/browser/synchronize.pt:70
 msgid "synchronize-button"
-msgstr ""
+msgstr "Synchroniser"
 
 #: src/zope/app/i18n/browser/synchronize.py:30
 msgid "Up to Date"
-msgstr ""
+msgstr "Mis à jour"
 
 #: src/zope/app/i18n/browser/synchronize.py:30
 msgid "New Remote"
-msgstr ""
+msgstr "Nouveau Externe"
 
 #: src/zope/app/i18n/browser/synchronize.py:30
 msgid "Out of Date"
-msgstr ""
+msgstr "Pas à jour"
 
 #: src/zope/app/i18n/browser/synchronize.py:31
 msgid "Does not exist"
-msgstr ""
+msgstr "N'existe pas"
 
 #: src/zope/app/i18n/browser/synchronize.py:31
 msgid "Newer Local"
-msgstr ""
+msgstr "Nouveau Locale"
 
 #: src/zope/app/i18n/browser/translate.pt:102
-#, fuzzy
 msgid "Add new messages"
-msgstr "Ajouter une nouvelle langue"
+msgstr "Ajouter De Nouveaux Messages"
 
 #: src/zope/app/i18n/browser/translate.pt:127
 msgid "Edit Messages"
-msgstr ""
+msgstr "Editer Des Messages"
 
 #: src/zope/app/i18n/browser/translate.pt:130
 msgid "Delete Messages"
-msgstr ""
+msgstr "Effacer Des Messages"
 
 #: src/zope/app/i18n/browser/translate.pt:15
 #: src/zope/app/i18n/browser/synchronize.pt:43
 #: src/zope/app/i18n/browser/exportimport.pt:20
 msgid "Select Languages:"
-msgstr ""
+msgstr "Sélectionner Des Langages:"
 
 #: src/zope/app/i18n/browser/translate.pt:3
 #: src/zope/app/i18n/browser/exportimport.pt:3
 msgid "Translation Domain - Translate"
-msgstr ""
+msgstr "Traduire - Domaine De Traduction"
 
 #: src/zope/app/i18n/browser/translate.pt:34
 #: src/zope/app/module/browser/edit_module.pt:15
 msgid "edit-button"
-msgstr ""
+msgstr "Editer"
 
 #: src/zope/app/i18n/browser/translate.pt:45
 msgid "New Language:"
-msgstr ""
+msgstr "Nouveau Langage:"
 
 #: src/zope/app/i18n/browser/translate.pt:55
 msgid "Filter (% - wildcard):"
-msgstr ""
+msgstr "Filtre (% - caratère générique):"
 
 #: src/zope/app/i18n/browser/translate.pt:62
 #: src/zope/app/securitypolicy/browser/principal_role_association.pt:31
 msgid "filter-button"
-msgstr ""
+msgstr "Filtrer"
 
 #: src/zope/app/i18n/browser/translate.pt:76
 #: src/zope/app/i18n/browser/translatemessage.pt:16
 #: src/zope/app/i18n/browser/synchronize.pt:87
 msgid "Message Id"
-msgstr ""
+msgstr "Identificateur De Message"
 
 #: src/zope/app/i18n/browser/translatemessage.pt:3
 msgid "Translation Service - Translate"
-msgstr ""
+msgstr "Traduire - Service De Traduction"
 
 #: src/zope/app/i18n/browser/translatemessage.pt:30
 msgid "Edit Message"
-msgstr ""
+msgstr "Editer Message"
 
 #: src/zope/app/i18nfile/browser/configure.zcml:39
 msgid "A file that supports multiple locales."
-msgstr ""
-"Objet de contenu fichier avec différentes versions pour différentes "
-"traductions"
+msgstr "Un fichier qui supporte de multiple locales."
 
 #: src/zope/app/i18nfile/browser/configure.zcml:81
 msgid "A multi-locale version of an Image."
-msgstr "Une version multi-locale d'une image."
+msgstr "Une version multi-locale d'une Image."
 
 #: src/zope/app/i18nfile/browser/file_edit.pt:39
 #: src/zope/app/i18nfile/browser/image_edit.pt:40
 msgid "Default Language"
-msgstr "Langue par défaut"
+msgstr "Langage par défaut"
 
 #: src/zope/app/i18nfile/browser/file_edit.pt:54
 #: src/zope/app/i18nfile/browser/image_edit.pt:55
 #: src/zope/app/applicationcontrol/browser/translationdomaincontrol.pt:16
 #: src/zope/app/i18n/browser/synchronize.pt:88
 msgid "Language"
-msgstr "Langue"
+msgstr "Langage"
 
 #: src/zope/app/i18nfile/browser/file_edit.pt:66
 #: src/zope/app/i18nfile/browser/image_edit.pt:67
 #: src/zope/app/apidoc/viewmodule/menu.pt:31
 msgid "show-button"
-msgstr "Montrer"
+msgstr "Afficher"
 
 #: src/zope/app/i18nfile/browser/file_edit.pt:68
 #: src/zope/app/i18nfile/browser/image_edit.pt:69
@@ -1710,12 +1733,12 @@
 #: src/zope/app/wiki/browser/subscriptions.pt:19
 #: src/zope/app/registration/browser/editregistration.pt:53
 msgid "remove-button"
-msgstr ""
+msgstr "Supprimer"
 
 #: src/zope/app/i18nfile/browser/file_edit.pt:71
 #: src/zope/app/i18nfile/browser/image_edit.pt:72
 msgid "Add new language"
-msgstr "Ajouter une nouvelle langue"
+msgstr "Ajouter un nouveau langage"
 
 #: src/zope/app/i18nfile/browser/file_edit.pt:87
 #: src/zope/app/i18nfile/browser/image_edit.pt:94
@@ -1727,25 +1750,25 @@
 #: src/zope/app/securitypolicy/browser/manage_roleform.pt:63
 #: src/zope/app/securitypolicy/browser/manage_permissionform.pt:86
 msgid "save-changes-button"
-msgstr "Enregistrer"
+msgstr "Enregistrer les modifications"
 
 #: src/zope/app/i18nfile/browser/i18nfile.py:45
 #: src/zope/app/i18nfile/browser/i18nimage.py:27
 msgid "Edit Form"
-msgstr "Formulaire d'édition"
+msgstr "Formulaire D'Edition"
 
 #: src/zope/app/i18nfile/browser/i18nfile.py:46
 #, fuzzy
 msgid ""
 "This edit form allows you to make changes to the properties of this file."
 msgstr ""
-"Ce formulaire d'édition vous permet de changer les propriétés de cette image."
+"Ce formulaire d'édition vous permet de changer les propriétés de cette image."
 
 #: src/zope/app/i18nfile/browser/i18nimage.py:28
 msgid ""
 "This edit form allows you to make changes to the properties of this image."
 msgstr ""
-"Ce formulaire d'édition vous permet de changer les propriétés de cette image."
+"Ce formulaire d'édition vous permet de changer les propriétés de cette image."
 
 #: src/zope/app/i18nfile/browser/image_edit.pt:85
 msgid "Dimensions"
@@ -1753,184 +1776,190 @@
 
 #: src/zope/app/i18nfile/configure.zcml:22
 msgid "An Internationalized File"
-msgstr ""
+msgstr "Un Fichier Internationalisé"
 
 #: src/zope/app/i18nfile/configure.zcml:22
 #: src/zope/app/i18nfile/browser/configure.zcml:39
 msgid "I18n File"
-msgstr ""
+msgstr "Fichier I18n"
 
 #: src/zope/app/i18nfile/configure.zcml:49
 msgid "An Internationalized Image"
-msgstr ""
+msgstr "Une Image Internationalisée"
 
 #: src/zope/app/i18nfile/configure.zcml:49
 #: src/zope/app/i18nfile/browser/configure.zcml:81
 msgid "I18n Image"
-msgstr ""
+msgstr "Image I18n"
 
 #: src/zope/app/introspector/configure.zcml:31
 msgid "Introspector"
-msgstr ""
+msgstr "Introspecteur"
 
 #: src/zope/app/introspector/introspector.pt:203
 msgid "modify-button"
-msgstr ""
+msgstr "Modifier"
 
 #: src/zope/app/introspector/introspector.pt:26
 msgid "Interface Browser"
-msgstr ""
+msgstr "Navigateur D'Interface"
 
 # Default: "Attributes"
 #: src/zope/app/introspector/introspector.pt:66
 msgid "class-attributes"
-msgstr ""
+msgstr "Attributs de classe"
 
 #: src/zope/app/introspector/marker.pt:109
 msgid "Remove Interfaces:"
-msgstr ""
+msgstr "Supprimer Interfaces:"
 
 #: src/zope/app/introspector/marker.pt:124
 msgid "Add Interfaces:"
-msgstr ""
+msgstr "Ajouter Interfaces:"
 
 #: src/zope/app/introspector/marker.pt:27
 #: src/zope/app/introspector/introspector.pt:121
 msgid "Class Browser"
-msgstr ""
+msgstr "Navigateur De Classe"
 
 # Default: "Class"
 #: src/zope/app/introspector/marker.pt:32
 #: src/zope/app/introspector/introspector.pt:126
 msgid "class-component"
-msgstr ""
+msgstr "Composant de classe"
 
 # Default: "Bases"
 #: src/zope/app/introspector/marker.pt:39
 #: src/zope/app/introspector/introspector.pt:38
 #: src/zope/app/introspector/introspector.pt:140
 msgid "class-bases"
-msgstr ""
+msgstr "Bases de classe"
 
 # Default: "Module"
 #: src/zope/app/introspector/marker.pt:56
 msgid "python-module"
-msgstr ""
+msgstr "Module Python"
 
 #: src/zope/app/introspector/marker.pt:74
 #: src/zope/app/introspector/introspector.pt:166
 msgid "Interfaces from Class"
-msgstr ""
+msgstr "Interfaces De Classe"
 
 #: src/zope/app/introspector/marker.pt:92
 #: src/zope/app/introspector/introspector.pt:185
 msgid "Interfaces from Object"
-msgstr ""
+msgstr "Interface D'Objet"
 
 # Default: "Send out mail with arbitrary from and to addresses"
 #: src/zope/app/mail/configure.zcml:7
 msgid "send-mail-permission"
-msgstr ""
+msgstr "Envoyer e-mail avec des adresses de et à arbitraires"
 
 #: src/zope/app/mail/interfaces.py:106
 msgid "Queue path"
-msgstr ""
+msgstr "Chemin de file d'attente"
 
 #: src/zope/app/mail/interfaces.py:107 src/zope/app/mail/interfaces.py:116
 msgid "Pathname of the directory used to queue mail."
 msgstr ""
+"Nom De Chemin du répertoire utiliser afin de mettre l'e-mail en file "
+"d'attente."
 
 #: src/zope/app/mail/interfaces.py:115
 msgid "Queue Path"
-msgstr ""
+msgstr "Chemin De File D'Attente"
 
 #: src/zope/app/mail/interfaces.py:119
 msgid "Polling Interval"
-msgstr ""
+msgstr "Intervalle De Sondage"
 
 #: src/zope/app/mail/interfaces.py:120
 msgid "How often the queue is checked for new messages (in milliseconds)"
 msgstr ""
+"A quelle fréquence la file d'attente est vérifiée afin de trouver de "
+"nouveaux messages (en millisecondes)"
 
 #: src/zope/app/mail/interfaces.py:152
 msgid "Hostname"
-msgstr ""
+msgstr "Nom D'Hôte"
 
 #: src/zope/app/mail/interfaces.py:153
 msgid "Name of server to be used as SMTP server."
-msgstr ""
+msgstr "Nom du serveur à utiliser comme serveur SMTP."
 
 #: src/zope/app/mail/interfaces.py:156
 msgid "Port"
-msgstr ""
+msgstr "Porte"
 
 #: src/zope/app/mail/interfaces.py:157
 msgid "Port of SMTP service"
-msgstr ""
+msgstr "Porte de Service SMTP"
 
 #: src/zope/app/mail/interfaces.py:161
 #: src/zope/app/i18n/browser/synchronize.pt:31
 msgid "Username"
-msgstr ""
+msgstr "Nom D'Utilisateur"
 
 #: src/zope/app/mail/interfaces.py:162
 msgid "Username used for optional SMTP authentication."
-msgstr ""
+msgstr "Nom D'Utilisateur pour l'authentification SMTP facultative."
 
 #: src/zope/app/mail/interfaces.py:165
 #: src/zope/app/pluggableauth/interfaces.py:36
 #: src/zope/app/i18n/browser/synchronize.pt:36
 msgid "Password"
-msgstr ""
+msgstr "Mot De Passe"
 
 #: src/zope/app/mail/interfaces.py:166
 msgid "Password used for optional SMTP authentication."
-msgstr ""
+msgstr "Mot De Passe pour l'authentification SMTP facultative."
 
 #: src/zope/app/mail/interfaces.py:173
 msgid "Command"
-msgstr ""
+msgstr "Commande"
 
 #: src/zope/app/mail/interfaces.py:174
 msgid "Command used to send email."
-msgstr ""
+msgstr "Commande utilisée pour envoyer un e-mail."
 
 #: src/zope/app/menu/browser/configure.zcml:106
 msgid "Edit Browser Menu Item"
-msgstr ""
+msgstr "Editer Des Eléments De Menu De Navigation"
 
 #: src/zope/app/menu/browser/configure.zcml:14
 msgid "A Service For Persistent Browser Menus"
-msgstr ""
+msgstr "Un Service Pour Menus De Navigation Persistants"
 
 #: src/zope/app/menu/browser/configure.zcml:21
 msgid "Overview"
-msgstr ""
+msgstr "Vue d'ensemble"
 
 #: src/zope/app/menu/browser/configure.zcml:42
 msgid "Add Browser Menu (Registration)"
-msgstr ""
+msgstr "Ajouter un Menu De Navigation"
 
 #: src/zope/app/menu/browser/configure.zcml:5
 msgid ""
 "Browser Menu tools are used to build menus for Web user        interfaces."
 msgstr ""
+"Les outils de Menu De Navigation sont utilisés pour construire les menus des "
+"interfaces web        d'utilisateur."
 
 #: src/zope/app/menu/browser/configure.zcml:55
 msgid "Add Browser Menu"
-msgstr ""
+msgstr "Ajouter Un Menu De Navigation"
 
 #: src/zope/app/menu/browser/configure.zcml:71
 msgid "Edit Browser Menu"
-msgstr ""
+msgstr "Editer Un Menu De Navigation"
 
 #: src/zope/app/menu/browser/configure.zcml:94
 msgid "Add Menu Item"
-msgstr ""
+msgstr "Ajouter Un Elément De Menu"
 
 #: src/zope/app/menu/browser/configure.zcml:99
 msgid "Add Browser Menu Item"
-msgstr ""
+msgstr "Ajouter Un Elément De Menu De Navigation"
 
 #: src/zope/app/menu/browser/menu_contents.pt:25
 #: src/zope/app/schema/browser/schema_edit.pt:30
@@ -1940,179 +1969,180 @@
 msgstr "Liste de contenu"
 
 #: src/zope/app/menu/browser/menu_contents.pt:32
-#, fuzzy
 msgid "Action"
-msgstr "Approuver une action"
+msgstr "Action"
 
 #: src/zope/app/menu/browser/menu_contents.pt:33
 #: src/zope/app/dublincore/browser/edit.pt:39
 #: src/zope/app/container/browser/contents.pt:35
 #: src/zope/app/container/browser/index.pt:28
 msgid "Created"
-msgstr "Créé"
+msgstr "Créé"
 
 #: src/zope/app/menu/browser/menu_contents.pt:34
 #: src/zope/app/container/browser/contents.pt:36
 #: src/zope/app/container/browser/index.pt:29
 msgid "Modified"
-msgstr "Modifié"
+msgstr "Modifié"
 
 #: src/zope/app/menu/browser/menu_contents.pt:78
 #: src/zope/app/container/browser/contents.pt:135
 msgid "container-delete-button"
-msgstr "Effacer"
+msgstr "Effacer Conteneur"
 
 #: src/zope/app/menu/browser/menu_overview.pt:13
 msgid "Local Items"
-msgstr ""
+msgstr "Eléments De Locale"
 
 #: src/zope/app/menu/browser/menu_overview.pt:21
 msgid "Inherited Items"
-msgstr ""
+msgstr "Eléments Hérités"
 
 #: src/zope/app/menu/browser/menu_overview.pt:3
 msgid "Menu Service"
-msgstr ""
+msgstr "Service De Menu"
 
 #: src/zope/app/menu/browser/menu_overview.pt:32
-#, fuzzy
 msgid "Inherited Menus"
-msgstr "Créé"
+msgstr "Menus Hérités"
 
 #: src/zope/app/menu/browser/menu_overview.pt:8
 msgid "Local Menus"
-msgstr ""
+msgstr "Menus De Locale"
 
 #: src/zope/app/menu/configure.zcml:21
 #: src/zope/app/menu/browser/configure.zcml:5
 #: src/zope/app/menu/browser/configure.zcml:84
 msgid "Browser Menu"
-msgstr ""
+msgstr "Menu De Navigation"
 
 #: src/zope/app/menu/configure.zcml:21
 #: src/zope/app/menu/browser/configure.zcml:84
 msgid "A Persistent Browser Menu"
-msgstr ""
+msgstr "Un Menu De Navigation Persistant"
 
 #: src/zope/app/menu/configure.zcml:49
 msgid "Browser Menu Item"
-msgstr ""
+msgstr "Elément De Menu De Navigation"
 
 #: src/zope/app/menu/configure.zcml:49
 msgid "A Persistent Browser Menu Item"
-msgstr ""
+msgstr "Un Elément Persistant De Menu De Navigation"
 
 #: src/zope/app/menu/configure.zcml:7
 msgid "A Persistent Browser Menu Service"
-msgstr ""
+msgstr "Un Service Persistant De Menu De Navigation"
 
 #: src/zope/app/menu/configure.zcml:7
 #: src/zope/app/menu/browser/configure.zcml:14
 msgid "Browser Menu Service"
-msgstr ""
+msgstr "Service De Menu De Navigation"
 
 #: src/zope/app/menu/interfaces.py:28
 msgid "Inherit Items"
-msgstr ""
+msgstr "Hériter Des Eléments"
 
 #: src/zope/app/menu/interfaces.py:29
 msgid "If true, this menu will inherit menu items from menushigher up."
 msgstr ""
+"Si la condition est vraie, ce menu héritera des éléments de menu des menus "
+"supérieurs."
 
 #: src/zope/app/menus.zcml:13
 msgid "Menu of caches to be added"
-msgstr ""
+msgstr "Menu de caches à ajouter"
 
 #: src/zope/app/menus.zcml:17
 msgid "Menu of objects to be added to content folders"
-msgstr ""
+msgstr "Menu d'objets à ajouter aux dossiers de contenus"
 
 #: src/zope/app/menus.zcml:21
 msgid "Menu for objects to be added according to containment constraints"
-msgstr ""
+msgstr "Menu  d'objets à ajouter en fonction des contraintes de contenus"
 
 #: src/zope/app/menus.zcml:26
 msgid "Menu of objects to be added to site management folders"
-msgstr ""
+msgstr "Menu d'objets à ajouter aux dossiers de gestion de site"
 
 #: src/zope/app/menus.zcml:30
 msgid "Menu of database connections to be added"
-msgstr ""
+msgstr "Menu de connexions de base de données à ajouter"
 
 #: src/zope/app/menus.zcml:34
 msgid "Menu of addable configuration objects"
-msgstr ""
+msgstr "Menu d'ajout d'objets de configuration"
 
 #: src/zope/app/menus.zcml:5
 msgid "Menu for displaying alternate representations of an object"
-msgstr ""
+msgstr "Menu d'affichage de représentations de remplacement d'un objet"
 
 #: src/zope/app/menus.zcml:9
 msgid "Menu for displaying actions to be performed"
-msgstr ""
+msgstr "Menu d'affichage d'actions à effectuer"
 
 #: src/zope/app/module/browser/__init__.py:33
 msgid "module name must be provided"
-msgstr ""
+msgstr "Le nom de module doit être spécifié"
 
 #: src/zope/app/module/browser/__init__.py:46
 msgid "The source was updated."
-msgstr ""
+msgstr "La source a été mise à jour."
 
 #: src/zope/app/module/browser/add_module.pt:12
 msgid "add-module-button"
-msgstr ""
+msgstr "Ajouter Module"
 
 #: src/zope/app/module/browser/add_module.pt:3
 msgid "Add a Module"
-msgstr ""
+msgstr "Ajouter un Module"
 
 #: src/zope/app/module/browser/add_module.pt:8
 #: src/zope/app/module/browser/edit_module.pt:8
 msgid "Enter the module source code."
-msgstr ""
+msgstr "Encoder le code source du Module."
 
 #: src/zope/app/module/browser/browse_module.pt:3
 msgid "View Module Names"
-msgstr ""
+msgstr "Vue Des Noms De Module"
 
 #: src/zope/app/module/browser/configure.zcml:24
 msgid "Browse"
-msgstr ""
+msgstr "Naviguer"
 
 #: src/zope/app/module/browser/configure.zcml:33
 msgid "Module"
-msgstr ""
+msgstr "Module"
 
 #: src/zope/app/module/browser/edit_module.pt:3
 msgid "Edit a Module"
-msgstr ""
+msgstr "Editer un Module"
 
 #: src/zope/app/onlinehelp/browser/configure.zcml:30
 #: src/zope/app/zopetop/widget_macros.pt:215
 msgid "Help"
-msgstr ""
+msgstr "Aide"
 
 #: src/zope/app/onlinehelp/browser/configure.zcml:7
 msgid "Menu for displaying help actions to be performed with popup"
-msgstr ""
+msgstr "Menu d'affichage d'actions d'aide à effectuer avec fenêtre pop-up"
 
 #: src/zope/app/onlinehelp/browser/contexthelp.pt:11
 #: src/zope/app/onlinehelp/browser/helptopic.pt:11
 msgid "Online Help - TOC"
-msgstr ""
+msgstr "Aide en ligne - Table des matières"
 
 #: src/zope/app/onlinehelp/configure.zcml:45
 msgid "Zope UI Help"
-msgstr ""
+msgstr "IU Aide De Zope "
 
 #: src/zope/app/onlinehelp/configure.zcml:52
 msgid "Welcome"
-msgstr ""
+msgstr "Bienvenue"
 
 #: src/zope/app/onlinehelp/configure.zcml:59
+#, fuzzy
 msgid "Online Help System"
-msgstr ""
+msgstr "Système d'aide en ligne"
 
 #: src/zope/app/onlinehelp/interfaces.py:142
 msgid "Path to the Resource"
@@ -2130,7 +2160,7 @@
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:12
 #: src/zope/app/workflow/stateful/browser/addstate.pt:12
 msgid "Id"
-msgstr ""
+msgstr "Identificateur"
 
 #: src/zope/app/onlinehelp/interfaces.py:47
 msgid "The Id of this Help Topic"
@@ -2139,7 +2169,7 @@
 #: src/zope/app/onlinehelp/interfaces.py:52
 #, fuzzy
 msgid "Parent Path"
-msgstr "Nom de l'argument"
+msgstr "Nom du parent"
 
 #: src/zope/app/onlinehelp/interfaces.py:53
 msgid "The Path to the Parent of this Help Topic"
@@ -2160,11 +2190,12 @@
 #: src/zope/app/onlinehelp/interfaces.py:64 src/zope/app/wiki/interfaces.py:45
 #: src/zope/app/wiki/interfaces.py:71
 msgid "Source Text"
-msgstr ""
+msgstr "Texte Source"
 
 #: src/zope/app/onlinehelp/interfaces.py:65
+#, fuzzy
 msgid "Renderable source text of the topic."
-msgstr ""
+msgstr "Texte source généré par le commentaire."
 
 #: src/zope/app/onlinehelp/interfaces.py:71
 msgid "Path to the Topic"
@@ -2177,33 +2208,35 @@
 #: src/zope/app/onlinehelp/interfaces.py:77 src/zope/app/wiki/interfaces.py:51
 #: src/zope/app/wiki/interfaces.py:77
 msgid "Source Type"
-msgstr ""
+msgstr "Type de Source"
 
 #: src/zope/app/onlinehelp/interfaces.py:78 src/zope/app/wiki/interfaces.py:52
 #: src/zope/app/wiki/interfaces.py:78
 msgid "Type of the source text, e.g. structured text"
-msgstr ""
+msgstr "Type de Texte Soruce, e.x. : Texte Structuré"
 
 #: src/zope/app/onlinehelp/interfaces.py:84
 #, fuzzy
 msgid "Object Interface"
-msgstr "Nom de l'argument"
+msgstr "Nom de l'objet"
 
 #: src/zope/app/onlinehelp/interfaces.py:85
 msgid "Interface for which this Help Topic is registered."
 msgstr ""
 
 #: src/zope/app/onlinehelp/interfaces.py:90
+#, fuzzy
 msgid "View Name"
-msgstr ""
+msgstr "Nom de fichier"
 
 #: src/zope/app/onlinehelp/interfaces.py:91
+#, fuzzy
 msgid "The View Name for which this Help Topic is registered"
-msgstr ""
+msgstr "La couche thème pour laquelle la vue est enregistrée"
 
 #: src/zope/app/pagetemplate/engine.py:102
 msgid "No interpreter named \"${lang_name}\" was found."
-msgstr ""
+msgstr "Aucun nom d'interpréteur trouvé \"${lang_name}\"."
 
 #: src/zope/app/pagetemplate/engine.py:93
 msgid ""
@@ -2211,22 +2244,25 @@
 "inline code snippets in your Page Template. Activate Inline Code Evaluation "
 "and try again."
 msgstr ""
+"L'Evaluation Du Code En Ligne est désactivée, ce qui signifie que vous ne "
+"pouvez insérer des morceaux de code en ligne dans votre Format De Page.  "
+"Activer l'Evaluation Du Code En Ligne et essayé à nouveau."
 
 #: src/zope/app/pluggableauth/browser/configure.zcml:22
 msgid "Add Principal Source"
-msgstr ""
+msgstr "Ajouter le Source du Principale"
 
 #: src/zope/app/pluggableauth/browser/configure.zcml:36
 msgid "Add Simple User with details"
-msgstr ""
+msgstr "Ajouter un Utilisateur Simple avec des détails"
 
 #: src/zope/app/pluggableauth/browser/configure.zcml:47
 msgid "Principal"
-msgstr ""
+msgstr "Principale"
 
 #: src/zope/app/pluggableauth/browser/configure.zcml:54
 msgid "Edit User Information"
-msgstr ""
+msgstr "Editer des Informations dUtilisateur"
 
 #: src/zope/app/pluggableauth/browser/configure.zcml:54
 #: src/zope/app/schema/fieldforms.zcml:21
@@ -2257,200 +2293,203 @@
 #: src/zope/app/pluggableauth/browser/configure.zcml:7
 msgid "A Pluggable Authentication uses plug-in principal sources."
 msgstr ""
+"Une Authentification Pluggable utilise les sources de plug-in de Principale."
 
 #: src/zope/app/pluggableauth/browser/configure.zcml:7
 msgid "Authentication Service"
-msgstr ""
+msgstr "Service D'Authentification"
 
 #: src/zope/app/pluggableauth/interfaces.py:30
 msgid "Login"
-msgstr ""
+msgstr "Nom de connexion"
 
 #: src/zope/app/pluggableauth/interfaces.py:31
 msgid "The Login/Username of the user. This value can change."
-msgstr ""
+msgstr "Le nom de connexion/Nom d'utilisateur. Cette valeur peut changer."
 
 #: src/zope/app/pluggableauth/interfaces.py:37
 msgid "The password for the user."
-msgstr ""
+msgstr "Le mot de passe de l'utilisateur."
 
 #: src/zope/app/presentation/browser/configure.zcml:11
 msgid "Change page"
-msgstr ""
+msgstr "Modifier la page"
 
 #: src/zope/app/presentation/browser/configure.zcml:19
 msgid "Register a view page"
-msgstr ""
+msgstr "Enregister une page vue"
 
 #: src/zope/app/presentation/browser/configure.zcml:3
 msgid "Presentation Service"
-msgstr ""
+msgstr "Service De Présentation"
 
 #: src/zope/app/presentation/browser/configure.zcml:3
 msgid ""
 "A Presentation Service allows you to register views, resources and skins"
 msgstr ""
+"Un Service De Présentation vous permet d'enregistrer des vues, des resources "
+"et des thèmes "
 
 #: src/zope/app/presentation/browser/pagefolder.zcml:14
 msgid "Default Registration"
-msgstr ""
+msgstr "Enregistrement par défaut"
 
 #: src/zope/app/presentation/browser/pagefolder.zcml:14
 #: src/zope/app/presentation/browser/pagefolder.zcml:23
 msgid "Default registration parameters"
-msgstr ""
+msgstr "Paramètres d'enregistrement par défaut"
 
 #: src/zope/app/presentation/browser/pagefolder.zcml:32
 msgid "Page Folder"
-msgstr ""
+msgstr "Page de Dossier"
 
 #: src/zope/app/presentation/browser/zpt.zcml:24
 msgid "Register a view ZPT"
-msgstr ""
+msgstr "Enregistrer une vue ZPT"
 
 #: src/zope/app/presentation/pagefolder.py:55
 #: src/zope/app/presentation/presentation.py:291
 msgid "The interface of the objects being viewed"
-msgstr ""
+msgstr "L'interface des objets visualisés"
 
 #: src/zope/app/presentation/pagefolder.py:61
 msgid "The dotted name of a factory for creating the view"
-msgstr ""
+msgstr "Le nom web d'une usine afin de créer la vue"
 
 #: src/zope/app/presentation/pagefolder.py:66
 #: src/zope/app/presentation/presentation.py:306
 #: src/zope/app/apidoc/viewmodule/index.pt:14
 msgid "Layer"
-msgstr ""
+msgstr "Couche"
 
 #: src/zope/app/presentation/pagefolder.py:67
 #: src/zope/app/presentation/presentation.py:307
 msgid "The skin layer the view is registered for"
-msgstr ""
+msgstr "La couche thème pour laquelle la vue est enregistrée"
 
 #: src/zope/app/presentation/pagefolder.py:74
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:46
 #: src/zope/app/securitypolicy/browser/manage_access.pt:28
 msgid "Permission"
-msgstr ""
+msgstr "Permission"
 
 #: src/zope/app/presentation/pagefolder.py:75
 msgid "The permission required to use the view"
-msgstr ""
+msgstr "La permission requise pour utiliser la vue"
 
 #: src/zope/app/presentation/pagefolder.py:81
 msgid "Apply changes to existing pages"
-msgstr ""
+msgstr "Intégrer les changements aux pages existantes"
 
 #: src/zope/app/presentation/pagefolder.zcml:10
 msgid "View Folder"
-msgstr ""
+msgstr "Vue De Dossier"
 
 # Default: "Anything"
 #: src/zope/app/presentation/presentation.py:257
 #: src/zope/app/presentation/presentation.py:335
 msgid "any-interface"
-msgstr ""
+msgstr "Quelque chose"
 
 #: src/zope/app/presentation/presentation.py:260
 msgid "${view_name} ${ptype} View for ${iface_name}"
-msgstr ""
+msgstr "${view_name} ${ptype} Vue pour ${iface_name}"
 
 #: src/zope/app/presentation/presentation.py:262
 msgid "${view_name} ${ptype} View for ${iface_name} in layer ${layer}"
-msgstr ""
+msgstr "${view_name} ${ptype} Vue pour ${iface_name} dans la couche ${layer}"
 
 #: src/zope/app/presentation/presentation.py:273
 msgid "Registered by ZCML"
-msgstr ""
+msgstr "Enregistré par ZCML"
 
 #: src/zope/app/presentation/presentation.py:298
 msgid "Request type"
-msgstr ""
+msgstr "Type de requête"
 
 #: src/zope/app/presentation/presentation.py:299
 msgid "The type of requests the view works with"
-msgstr ""
+msgstr "Le type de requêtes que la vue utilise"
 
 # Default: "View"
 #: src/zope/app/presentation/presentation.py:321
 msgid "view-component"
-msgstr ""
+msgstr "Vue"
 
 #: src/zope/app/presentation/presentation.py:340
 msgid "${view_name} for ${pname} ${what} ${iface_name}"
-msgstr ""
+msgstr "${view_name} de ${pname} ${what} ${iface_name}"
 
 #: src/zope/app/presentation/presentation.py:342
 msgid "${view_name} for ${pname} ${what} ${iface_name} in layer ${layer}"
-msgstr ""
+msgstr "${view_name} ${ptype} vue pour ${iface_name} dans la couche ${layer}"
 
 #: src/zope/app/presentation/presentation.py:365
 msgid "Page class"
-msgstr ""
+msgstr "Classe de page"
 
 #: src/zope/app/presentation/presentation.py:370
 msgid "Page template"
-msgstr ""
+msgstr "Format de page"
 
 #: src/zope/app/presentation/presentation.py:375
 msgid "Class attribute"
-msgstr ""
+msgstr "Attribut de classe"
 
 #: src/zope/app/presentation/presentation.py:380
 msgid "Factory to be called to construct an adapter"
-msgstr ""
+msgstr "L'usine à appeler afin de construire un Adaptateur"
 
 # Default: "Page"
 #: src/zope/app/presentation/presentation.py:396
 msgid "page-component"
-msgstr ""
+msgstr "Page"
 
 #: src/zope/app/presentation/zpt.zcml:10
 msgid "Page Template"
-msgstr ""
+msgstr "Format de page"
 
 #: src/zope/app/presentation/zpt.zcml:10
 #: src/zope/app/presentation/browser/zpt.zcml:11
 #: src/zope/app/presentation/browser/zpt.zcml:19
 msgid "ZPT Template"
-msgstr ""
+msgstr "Format ZPT"
 
 #: src/zope/app/principalannotation/configure.zcml:22
 msgid "Stores Annotations for Principals"
-msgstr ""
+msgstr "Stocke les annotations de Principales"
 
 #: src/zope/app/principalannotation/configure.zcml:22
 msgid "Principal Annotation Service"
-msgstr ""
+msgstr "Service d'Annotation de Principale"
 
 # Default: "Interface"
 #: src/zope/app/publisher/interfaces/browser.py:32
 #: src/zope/app/schemacontent/interfaces.py:38
 #: src/zope/app/introspector/introspector.pt:31
 msgid "interface-component"
-msgstr ""
+msgstr "Interface"
 
 #: src/zope/app/publisher/interfaces/browser.py:33
 #: src/zope/app/schemacontent/interfaces.py:39
 msgid "Specifies the interface this menu item is for."
-msgstr ""
+msgstr "Spécifier l'interface à laquelle est liée cet élément de menu."
 
 #: src/zope/app/publisher/interfaces/browser.py:38
 msgid "The relative url to use if the item is selected"
-msgstr ""
+msgstr "L'URL relative à utiliser si l'élément est sélectionné"
 
 #: src/zope/app/publisher/interfaces/browser.py:39
 msgid "The url is relative to the object the menu is being displayed for."
-msgstr ""
+msgstr "L'URL est relative à l'objet auquel le menu est affiché."
 
 #: src/zope/app/publisher/interfaces/browser.py:45
 msgid "The text to be displayed for the menu item"
-msgstr ""
+msgstr "Le texte à afficher avec l'élément de menu"
 
 #: src/zope/app/publisher/interfaces/browser.py:49
 msgid "A longer explanation of the menu item"
-msgstr ""
+msgstr "Une description complète de l'élément de menu"
 
 #: src/zope/app/publisher/interfaces/browser.py:50
 #: src/zope/app/publisher/interfaces/browser.py:93
@@ -2458,10 +2497,12 @@
 "A UI may display this with the item or display it when the user requests "
 "more assistance."
 msgstr ""
+"Une IU peut afficher ceci avec l'élément ou l'afficher lorsque l'utilisateur "
+"demande plus d'assistance."
 
 #: src/zope/app/publisher/interfaces/browser.py:55
 msgid "The permission needed access the item"
-msgstr ""
+msgstr "La permission requise afin d'accéder à l'élément"
 
 #: src/zope/app/publisher/interfaces/browser.py:56
 msgid ""
@@ -2470,10 +2511,15 @@
 "given in each action to determine whether the url is accessible to the "
 "current user. This can be avoided if the permission is given explicitly."
 msgstr ""
+"Cela peut-être déduit par le système, cependant, cette façon de faire "
+"nécessite beaucoup de ressources. Lorsqu'un menu est affiché, le système "
+"tente d'atteindre les URLs spécifiées dans chaque action afin de déterminer "
+"si l'URL l'utilisateur courant peut y accéder. Cela peut-être évité si la "
+"Permission est attribuée explicitement."
 
 #: src/zope/app/publisher/interfaces/browser.py:66
 msgid "A condition for displaying the menu item"
-msgstr ""
+msgstr "Une condition afin d'afficher l'élément de menu"
 
 #: src/zope/app/publisher/interfaces/browser.py:67
 msgid ""
@@ -2489,139 +2535,150 @@
 "The menu item will not be displayed if there is a \n"
 "filter and the filter evaluates to a false value."
 msgstr ""
+"La condition est déclarée comme une expression de type TALES. L'expression "
+"peut accéder aux variables:\n"
+"\n"
+"contexte -- L'objet pour lequel le menu est affiché\n"
+"\n"
+"requête -- La requête du Navigateur\n"
+"\n"
+"rien -- Aucun\n"
+"\n"
+"L'élément du menu ne sera pas affiché si il y a \n"
+"un filtre et que celui-ci retourne une valeur fausse."
 
 #: src/zope/app/publisher/interfaces/browser.py:88
 msgid "A descriptive title for documentation purposes"
-msgstr ""
+msgstr "Un titre descriptif à but documentaire"
 
 #: src/zope/app/publisher/interfaces/browser.py:92
 msgid "A longer explanation of the menu"
-msgstr ""
+msgstr "Une explication complète du menu"
 
 #: src/zope/app/pythonpage/__init__.py:40
 msgid "The source of the Python page."
-msgstr ""
+msgstr "La source de la page Python."
 
 #: src/zope/app/pythonpage/__init__.py:45
 msgid "The content type the script outputs."
-msgstr ""
+msgstr "Le type de contenu généré par le script."
 
 #: src/zope/app/pythonpage/browser.py:43
-#, fuzzy
 msgid "A syntax error occured."
-msgstr "Il y a une erreur"
+msgstr "Il y a une erreur de syntaxe."
 
 #: src/zope/app/pythonpage/configure.zcml:12
 msgid "A simple, content-based Python Page"
-msgstr ""
+msgstr "Une simple Page Python de contenu"
 
 #: src/zope/app/pythonpage/configure.zcml:12
 #: src/zope/app/pythonpage/configure.zcml:49
-#, fuzzy
 msgid "Python Page"
-msgstr "PYTHONPATH:"
+msgstr "Page Python"
 
 #: src/zope/app/pythonpage/configure.zcml:41
 msgid "Add Python Page"
-msgstr ""
+msgstr "Ajouter une Page Python"
 
 #: src/zope/app/pythonpage/configure.zcml:49
-#, fuzzy
 msgid "An Python Page"
-msgstr "N'importe lequel"
+msgstr "Une Page Python"
 
 #: src/zope/app/pythonpage/configure.zcml:57
-#, fuzzy
 msgid "Edit Python Page"
-msgstr "Editer une page ZPT"
+msgstr "Editer une Page Python"
 
 #: src/zope/app/pythonpage/edit.pt:31
 msgid "Syntax Error: ${msg}"
-msgstr ""
+msgstr "Erreur de syntaxe: ${msg}"
 
 #: src/zope/app/pythonpage/edit.pt:39
 msgid "File \"${filename}\", line ${lineno}, offset ${offset}"
-msgstr ""
+msgstr "Ficher \"${filename}\", ligne ${lineno}, décalage ${offset}"
 
 # Default: "Test"
 #: src/zope/app/rdb/browser/configure.zcml:39
 #: src/zope/app/sqlscript/browser/configure.zcml:41
 msgid "test-page-title"
-msgstr ""
+msgstr "Test"
 
 #: src/zope/app/rdb/browser/configure.zcml:49
 msgid "Add Database Connection Registration"
-msgstr ""
+msgstr "Ajouter Un Enregistrement De Connexion A Une Base De Données"
 
 #: src/zope/app/rdb/browser/configure.zcml:5
 msgid ""
 "Database Adapters are used to connect to external       relational databases."
 msgstr ""
+"Les Adaptateurs De Base De Données sont utilisés pour se connecter à des "
+"base de données relationnelles externes."
 
 #: src/zope/app/rdb/browser/configure.zcml:5
 msgid "Database Adapter"
-msgstr ""
+msgstr "Adaptateur De Base De Données"
 
 #: src/zope/app/rdb/browser/gadflyda.zcml:14
 msgid "Gadfly DA"
-msgstr ""
+msgstr "DA Gadfly"
 
 #: src/zope/app/rdb/browser/gadflyda.zcml:14
 msgid "A DA for the built-in 100% Pure Python Gadfly Database"
-msgstr ""
+msgstr "Un DA pour une Base de Données Python Gadfly 100 intégrée"
 
 #: src/zope/app/rdb/browser/gadflyda.zcml:5
 msgid "Add Gadfly Database Adapter"
-msgstr ""
+msgstr "Ajouter un Adaptateur De Base De Données Gadfly"
 
 #: src/zope/app/rdb/browser/rdbconnection.pt:14
 msgid "Connection URI:"
-msgstr ""
+msgstr "URI de connexion:"
 
 #: src/zope/app/rdb/browser/rdbconnection.pt:16
 msgid "Template: dbi://username:password@host:port/dbname;param1=value..."
 msgstr ""
+"Format: dbi://utilisateur:mot_de_passe@hôte:porte/nom_bd;param1=valeur..."
 
 #: src/zope/app/rdb/browser/rdbconnection.pt:3
 msgid "Edit Relational Database Adapter"
-msgstr ""
+msgstr "Editer L'Adaptateur De Base De Données Relationnelle"
 
 #: src/zope/app/rdb/browser/rdbconnection.pt:30
 msgid "connect-button"
-msgstr ""
+msgstr "Connexion"
 
 #: src/zope/app/rdb/browser/rdbconnection.pt:33
 msgid "disconnect-button"
-msgstr ""
+msgstr "Déconnexion"
 
 #: src/zope/app/rdb/browser/rdbtestresults.pt:11
 msgid "Executed Query:"
-msgstr ""
+msgstr "Requête exécutée:"
 
 #: src/zope/app/rdb/browser/rdbtestresults.pt:3
 #: src/zope/app/rdb/browser/rdbtestsql.pt:3
 msgid "Database Adapter - Test Connection"
-msgstr ""
+msgstr "Adaptateur De Base De Données - Connexion De Teste"
 
 #: src/zope/app/rdb/browser/rdbtestsql.pt:13
 msgid "Here you can enter an SQL statement, so you can test the connection."
 msgstr ""
+"Ici vous pouvez spécifier une instruction SQL, afin de tester la connexion."
 
 #: src/zope/app/rdb/browser/rdbtestsql.pt:18
 msgid "Query"
-msgstr ""
+msgstr "Requête"
 
 #: src/zope/app/rdb/browser/rdbtestsql.pt:27
 msgid "execute-button"
-msgstr ""
+msgstr "Executer"
 
 #: src/zope/app/rdb/gadflyda.zcml:4
 msgid "Gadfly Database Adapter"
-msgstr ""
+msgstr "Adaptateur De Base De Données Gadfly"
 
 #: src/zope/app/rdb/interfaces.py:389
 msgid "DSN"
-msgstr ""
+msgstr "DSN"
 
 #: src/zope/app/rdb/interfaces.py:390
 msgid ""
@@ -2634,487 +2691,495 @@
 "dbi://user:passwd@host:port/dbname\n"
 "dbi://user:passwd@host:port/dbname;param1=value...\n"
 msgstr ""
+"Specifier le DSN (Nom De La Source De Données) de la base de données. "
+"Exemples:\n"
+"\n"
+"ibd://nombd\n"
+"ibd://nombd;param1=valeur...\n"
+"ibd://utilisateur:motdepasse/nombd\n"
+"ibd://utilisateur:motdepasse/nombd;param1=valeur...\n"
+"ibd://utilisateur:motdepasse@hôte:porte/nombd\n"
+"ibd://utilisateur:motdepasse@hôte:porte/nombd;param1=valeur...\n"
 
 #: src/zope/app/registration/browser/__init__.py:111
 #: src/zope/app/site/browser/serviceactivation.pt:37
 msgid "Disabled"
-msgstr ""
+msgstr "Hors service"
 
 #: src/zope/app/registration/browser/__init__.py:117
 msgid "Updated"
-msgstr ""
+msgstr "Mis à jour"
 
 #: src/zope/app/registration/browser/configure.zcml:32
 #: src/zope/app/registration/browser/configure.zcml:80
 #: src/zope/app/site/browser/tool.pt:41
 #: src/zope/app/site/browser/serviceactivation.pt:27
 msgid "Registration"
-msgstr ""
+msgstr "Enregistrement"
 
 #: src/zope/app/registration/browser/editregistration.pt:22
 msgid "Summary"
-msgstr ""
+msgstr "Résumé"
 
 #: src/zope/app/registration/browser/editregistration.pt:3
 msgid "View Registration Manager"
-msgstr ""
+msgstr "Vue Du Gestionnaire D'Enregistrement"
 
 #: src/zope/app/registration/browser/editregistration.pt:37
 msgid "(disabled)"
-msgstr ""
+msgstr "(hors service)"
 
 #: src/zope/app/registration/browser/editregistration.pt:56
 msgid "top-button"
-msgstr ""
+msgstr "Dessus"
 
 #: src/zope/app/registration/browser/editregistration.pt:58
 msgid "up-button"
-msgstr ""
+msgstr "Haut"
 
 #: src/zope/app/registration/browser/editregistration.pt:60
 msgid "down-button"
-msgstr ""
+msgstr "Bas"
 
 #: src/zope/app/registration/browser/editregistration.pt:62
 msgid "bottom-button"
-msgstr ""
+msgstr "Dessous"
 
 #: src/zope/app/registration/browser/registered.pt:18
 msgid "Add a registration for this object"
-msgstr ""
+msgstr "Ajouter une enregistrement à cet objet"
 
 #: src/zope/app/registration/browser/registered.pt:5
 msgid "Registrations for this object:"
-msgstr ""
+msgstr "Enregistrements pour cet objet:"
 
 #: src/zope/app/registration/browser/registration.pt:10
 msgid "This object is registered as:"
-msgstr ""
+msgstr "Cet objet est enregistré comme:"
 
 #: src/zope/app/registration/browser/registration.pt:18
 msgid "(modify)"
-msgstr ""
+msgstr "(modifier)"
 
 #: src/zope/app/registration/browser/registration.pt:24
 msgid "This object is currently active."
-msgstr ""
+msgstr "L'objet est activé."
 
 #: src/zope/app/registration/browser/registration.pt:29
 msgid "This object is currently inactive."
-msgstr ""
+msgstr "L'objet est inactivé."
 
 #: src/zope/app/registration/browser/registration.pt:36
-#, fuzzy
 msgid "Advanced Options"
-msgstr "Avancé"
+msgstr "Options avancées"
 
 #: src/zope/app/registration/browser/registration.pt:43
 msgid "This object is not currently active."
-msgstr ""
+msgstr "L'objet n'est pas activé."
 
 #: src/zope/app/registration/browser/registration.pt:45
 msgid ""
 "This object won't actually be used unless it is registered to perform a "
 "specific function and is activated."
 msgstr ""
+"Cet objet n'est pas utilisé actuellement sauf si il est enregistré afin "
+"d'effectuer une fonction déterminée et activé."
 
 #: src/zope/app/registration/configure.zcml:23
 #: src/zope/app/registration/browser/editregistration.pt:10
 msgid "Registration Manager"
-msgstr ""
+msgstr "Gestionnaire D'Enregistrement"
 
 #: src/zope/app/registration/interfaces.py:119
 #: src/zope/app/utility/interfaces.py:56
 msgid "Component path"
-msgstr ""
+msgstr "Chemin De Composant"
 
 #: src/zope/app/registration/interfaces.py:120
 msgid ""
 "The path to the component; this may be absolute, or relative to the nearest "
 "site management folder"
 msgstr ""
+"Le chemin vers le composant; il peut être absolu ou relatif au dossier de "
+"gestion du site le plus proche"
 
 #: src/zope/app/registration/interfaces.py:125
 msgid "The permission needed to use the component"
-msgstr ""
+msgstr "La permission nécessaire à l'utilisation du composant"
 
 #: src/zope/app/registration/interfaces.py:30
 msgid "Unregistered"
-msgstr ""
+msgstr "Non validé"
 
 #: src/zope/app/registration/interfaces.py:31
 msgid "Registered"
-msgstr ""
+msgstr "Enregistré"
 
 #: src/zope/app/registration/interfaces.py:32
 msgid "Active"
-msgstr ""
+msgstr "Actif"
 
 #: src/zope/app/registration/interfaces.py:66
 msgid "Registration status"
-msgstr ""
+msgstr "Statut d'enregistrement"
 
 #: src/zope/app/renderer/configure.zcml:14
 msgid "Plain Text Source"
-msgstr ""
+msgstr "Source Text Pur"
 
 #: src/zope/app/renderer/configure.zcml:14
 msgid "Plain Text"
-msgstr ""
+msgstr "Texte Pur"
 
 #: src/zope/app/renderer/configure.zcml:28
 msgid "Structured Text (STX)"
-msgstr ""
+msgstr "Texte Structuré (STX)"
 
 #: src/zope/app/renderer/configure.zcml:28
 msgid "Structured Text (STX) Source"
-msgstr ""
+msgstr "Source Texte Structuré (STX)"
 
 #: src/zope/app/renderer/configure.zcml:42
 msgid "ReStructured Text (ReST)"
-msgstr ""
+msgstr "Texte ReStructuré (ReST)"
 
 #: src/zope/app/renderer/configure.zcml:42
 msgid "ReStructured Text (ReST) Source"
-msgstr ""
+msgstr "Source Texte ReStructuré"
 
 #: src/zope/app/rotterdam/dialog_macros.pt:135
 #: src/zope/app/rotterdam/template.pt:208
 msgid "Tip"
-msgstr ""
+msgstr "Astuce"
 
 #: src/zope/app/rotterdam/navigation_macros.pt:27
 msgid "Loading..."
-msgstr ""
+msgstr "Chargement..."
 
 #: src/zope/app/rotterdam/simpleeditingrow.pt:3
 msgid "Extended Editor"
-msgstr ""
+msgstr "Editeur Etendu"
 
 #: src/zope/app/rotterdam/template.pt:102
 msgid "Location:&nbsp;"
-msgstr ""
+msgstr "Emplacement:&nbsp;"
 
 #: src/zope/app/rotterdam/template.pt:51
 msgid "[Logout]"
-msgstr ""
+msgstr "[Déconnexion]"
 
 #: src/zope/app/rotterdam/template.pt:56
 msgid "[Login]"
-msgstr ""
+msgstr "[Connexion]"
 
 #: src/zope/app/rotterdam/template.pt:77
-#, fuzzy
 msgid "Add:"
-msgstr "Ajouter"
+msgstr "Ajouter:"
 
 #: src/zope/app/rotterdam/view_macros.pt:36
 msgid "User:"
-msgstr ""
+msgstr "Utilisateur:"
 
 #: src/zope/app/rotterdam/view_macros.pt:41
 msgid "Powered by Zope"
-msgstr ""
+msgstr "Supporté par Zope"
 
 #: src/zope/app/schema/browser/__init__.py:52
 msgid "Must select a field to delete"
-msgstr ""
+msgstr "Vous devez sélectionner un champ à effacer"
 
 #: src/zope/app/schema/browser/__init__.py:63
 msgid "Invalid field name: %s"
-msgstr ""
+msgstr "Nom de fichier invalide: %s"
 
 #: src/zope/app/schema/browser/__init__.py:69
 msgid "Invalid position: %s"
-msgstr ""
+msgstr "Position invalide: %s"
 
 #: src/zope/app/schema/browser/configure.zcml:11
 msgid "Menu of Fields to be added to a schema."
-msgstr ""
+msgstr "Champs de Menu à ajouter à un schéma."
 
 #: src/zope/app/schema/browser/configure.zcml:28
 msgid "New Mutable Schema Registration"
-msgstr ""
+msgstr "Nouveau Enregistrement De Schéma Mutable"
 
 #: src/zope/app/schema/browser/configure.zcml:5
 msgid "These are schemas that live in the ZODB and are modifiable."
-msgstr ""
+msgstr "Ce sont des Schémas qui sont stockés dans la ZODB et sont modifiables."
 
 #: src/zope/app/schema/browser/configure.zcml:5
 msgid "Persistent, Local Schemas"
-msgstr ""
+msgstr "Schémas Locales, Persistant"
 
 #: src/zope/app/schema/browser/configure.zcml:52
-#, fuzzy
 msgid "Edit Schema"
-msgstr "Formulaire d'édition"
+msgstr "Editer un Schéma"
 
 #: src/zope/app/schema/browser/schema_edit.pt:40
 msgid "Read-Only"
-msgstr ""
+msgstr "Lecture-Seule"
 
 #: src/zope/app/schema/browser/schema_edit.pt:68
-#, fuzzy
 msgid "delete-field-button"
-msgstr "Chercher"
+msgstr "Delete"
 
 #: src/zope/app/schema/browser/schema_edit.pt:9
 msgid "Schema Name: ${schema_name}"
-msgstr ""
+msgstr "Nom de Schéma: ${schema_name}"
 
 #: src/zope/app/schema/configure.zcml:5
 #: src/zope/app/schema/browser/configure.zcml:40
 msgid "Mutable Schema"
-msgstr ""
+msgstr "Schéma Mutable"
 
 #: src/zope/app/schema/configure.zcml:5
 #: src/zope/app/schema/browser/configure.zcml:40
 msgid "A Persistent Schema that can be edited through the web"
-msgstr ""
+msgstr "Un Schéma Persistant qui peut-être éditer via le web"
 
 #: src/zope/app/schema/fieldforms.zcml:111
-#, fuzzy
 msgid "A Float Field"
-msgstr "Charger un fichier"
+msgstr "Un Champ de type Float"
 
 #: src/zope/app/schema/fieldforms.zcml:111
 msgid "Add Float Field"
-msgstr ""
+msgstr "Ajouter un Champ de type Float"
 
 #: src/zope/app/schema/fieldforms.zcml:125
 msgid "Edit Float Field"
-msgstr ""
+msgstr "Editer un Champ de type Float"
 
 #: src/zope/app/schema/fieldforms.zcml:137
 msgid "Add Datetime Field"
-msgstr ""
+msgstr "Ajouter un Champ de type Datetime"
 
 #: src/zope/app/schema/fieldforms.zcml:137
 msgid "A Datetime Field"
-msgstr ""
+msgstr "Un Champ de type Datetime"
 
 #: src/zope/app/schema/fieldforms.zcml:151
 msgid "Edit Datetime Field"
-msgstr ""
+msgstr "Editer un Champ de type Datetime"
 
 #: src/zope/app/schema/fieldforms.zcml:21
 msgid "Edit Text Field"
-msgstr ""
+msgstr "Editer un Champ de type Texte"
 
 #: src/zope/app/schema/fieldforms.zcml:33
 msgid "TextLine Field"
-msgstr ""
+msgstr "Champ de type Ligne DeTexte"
 
 #: src/zope/app/schema/fieldforms.zcml:33
 msgid "A TextLine Field"
-msgstr ""
+msgstr "Un Champ de type Ligne De Texte"
 
 #: src/zope/app/schema/fieldforms.zcml:33
 msgid "Add TextLine Field"
-msgstr ""
+msgstr "Ajouter un Champ de type Ligne De Texte"
 
 #: src/zope/app/schema/fieldforms.zcml:47
 msgid "Edit TextLine Field"
-msgstr ""
+msgstr "Editer un Champ de type Ligne De Texte"
 
 #: src/zope/app/schema/fieldforms.zcml:59
 msgid "Add Boolean Field"
-msgstr ""
+msgstr "Ajouter un Champ de type Booléen"
 
 #: src/zope/app/schema/fieldforms.zcml:59
 msgid "A Boolean Field"
-msgstr ""
+msgstr "Un Champ de type Booléen"
 
 #: src/zope/app/schema/fieldforms.zcml:7
 msgid "A Text Field"
-msgstr ""
+msgstr "Un Champ de type Texte"
 
 #: src/zope/app/schema/fieldforms.zcml:7
 msgid "Add Text Field"
-msgstr ""
+msgstr "Ajouter un Champ de type Texte"
 
 #: src/zope/app/schema/fieldforms.zcml:73
 msgid "Edit Boolean Field"
-msgstr ""
+msgstr "Editer un Champ de type Booléen"
 
 #: src/zope/app/schema/fieldforms.zcml:85
 msgid "Add Integer Field"
-msgstr ""
+msgstr "Ajouter un Champ de type Entier"
 
 #: src/zope/app/schema/fieldforms.zcml:85
 msgid "An Integer Field"
-msgstr ""
+msgstr "Un Champ de type Entier"
 
 #: src/zope/app/schema/fieldforms.zcml:99
 msgid "Edit Integer Field"
-msgstr ""
+msgstr "Editer un Champ de type Entier"
 
 #: src/zope/app/schema/fields.zcml:102
 msgid "BytesLine Field"
-msgstr ""
+msgstr "Champ de type Ligne D'Octets"
 
 #: src/zope/app/schema/fields.zcml:114 src/zope/app/schema/fieldforms.zcml:7
 msgid "Text Field"
-msgstr ""
+msgstr "Champ de type Texte"
 
 #: src/zope/app/schema/fields.zcml:128
 msgid "Text Line Field"
-msgstr ""
+msgstr "Champ de type Ligne De Texte"
 
 #: src/zope/app/schema/fields.zcml:140 src/zope/app/schema/fieldforms.zcml:59
 msgid "Boolean Field"
-msgstr ""
+msgstr "Champ de type Booléen"
 
 #: src/zope/app/schema/fields.zcml:151 src/zope/app/schema/fieldforms.zcml:85
 msgid "Integer Field"
-msgstr ""
+msgstr "Champ de type Entier"
 
 #: src/zope/app/schema/fields.zcml:163 src/zope/app/schema/fieldforms.zcml:111
 msgid "Float Field"
-msgstr ""
+msgstr "Champ de type Float"
 
 #: src/zope/app/schema/fields.zcml:175
 msgid "Tuple Field"
-msgstr ""
+msgstr "Champ de type Tuple"
 
 #: src/zope/app/schema/fields.zcml:186
 msgid "List Field"
-msgstr ""
+msgstr "Champ de type Liste"
 
 #: src/zope/app/schema/fields.zcml:197
-#, fuzzy
 msgid "Set Field"
-msgstr "Charger un fichier"
+msgstr "Définir le champ"
 
 #: src/zope/app/schema/fields.zcml:208
 msgid "Password Field"
-msgstr ""
+msgstr "Champ de type Mot De Passe"
 
 #: src/zope/app/schema/fields.zcml:220
 msgid "Dict Field"
-msgstr ""
+msgstr "Champ de type Dictionnaire"
 
 #: src/zope/app/schema/fields.zcml:232 src/zope/app/schema/fieldforms.zcml:137
 msgid "Datetime Field"
-msgstr ""
+msgstr "Champ de type Datetime"
 
 #: src/zope/app/schema/fields.zcml:244
 msgid "SourceText Field"
-msgstr ""
+msgstr "Champ de type Texte Source"
 
 #: src/zope/app/schema/fields.zcml:256
 msgid "Object Field"
-msgstr ""
+msgstr "Champ de type Objet"
 
 #: src/zope/app/schema/fields.zcml:269
 msgid "URI Field"
-msgstr ""
+msgstr "Champ de type URI"
 
 #: src/zope/app/schema/fields.zcml:281
 msgid "Id Field"
-msgstr ""
+msgstr "Champ de type Identificateur"
 
 #: src/zope/app/schema/fields.zcml:293
 msgid "Interface Field"
-msgstr ""
+msgstr "Champ de type Interface"
 
 #: src/zope/app/schema/fields.zcml:38
 msgid "Container Field"
-msgstr ""
+msgstr "Champ de type Conteneur"
 
 #: src/zope/app/schema/fields.zcml:49
 msgid "Iterable Field"
-msgstr ""
+msgstr "Champ de type Iterable"
 
 #: src/zope/app/schema/fields.zcml:5
 msgid "Basic Field"
-msgstr ""
+msgstr "Champ de type Base"
 
 #: src/zope/app/schema/fields.zcml:60
 msgid "Orderable Field"
-msgstr ""
+msgstr "Champ Ordonnable"
 
 #: src/zope/app/schema/fields.zcml:75
 msgid "MinMaxLen Field"
-msgstr ""
+msgstr "Champ de type MinMaxLongueur"
 
 #: src/zope/app/schema/fields.zcml:90
 msgid "Bytes Field"
-msgstr ""
+msgstr "Champ de type Octets"
 
 #: src/zope/app/schemacontent/browser/configure.zcml:106
 msgid "Schema-based Content Component Instance"
-msgstr ""
+msgstr "Basé-Schema Instanciation Composant De Contenu"
 
 #: src/zope/app/schemacontent/browser/configure.zcml:106
 msgid "Schema-based Content"
-msgstr ""
+msgstr "Contenu Basé-Schema"
 
 #: src/zope/app/schemacontent/browser/configure.zcml:14
 msgid "Content Component Definition Registration"
-msgstr ""
+msgstr "Enregistrement Définition Composant De Contenu"
 
 #: src/zope/app/schemacontent/browser/configure.zcml:5
 msgid ""
 "Content Component Definitions are used to declare       schema-based content "
 "objects."
 msgstr ""
+"Les Définitions de Composant De Contenu sont utilisées pour déclarer des "
+"objets de contenu Basés-Schema."
 
 #: src/zope/app/schemacontent/browser/configure.zcml:55
 msgid "Define Permissions"
-msgstr ""
+msgstr "Définir Des Permissions"
 
 #: src/zope/app/schemacontent/browser/configure.zcml:65
 msgid "Menu Item"
-msgstr ""
+msgstr "Elément de Menu"
 
 #: src/zope/app/schemacontent/browser/configure.zcml:97
 msgid "New Content Component Instance"
-msgstr ""
+msgstr "Nouvelle Instanciation Composant De Contenu"
 
 #: src/zope/app/schemacontent/browser/permission_edit.pt:14
 #: src/zope/app/workflow/stateful/browser/definition_edit.pt:33
 msgid "Map permissions to Schema fields"
-msgstr ""
+msgstr "Associer des permissions aux champs de Schéma"
 
 #: src/zope/app/schemacontent/browser/permission_edit.pt:35
 #: src/zope/app/workflow/stateful/browser/definition_edit.pt:53
 msgid "change-button"
-msgstr ""
+msgstr "Changer"
 
 #: src/zope/app/schemacontent/configure.zcml:10
 #: src/zope/app/schemacontent/browser/configure.zcml:29
 #: src/zope/app/schemacontent/browser/configure.zcml:39
 msgid "A Persistent Content Component Definition"
-msgstr ""
+msgstr "Une Définition De Composant De Contenu Persistante"
 
 #: src/zope/app/schemacontent/configure.zcml:10
 #: src/zope/app/schemacontent/browser/configure.zcml:5
 #: src/zope/app/schemacontent/browser/configure.zcml:29
 #: src/zope/app/schemacontent/browser/configure.zcml:39
 msgid "Content Component Definition"
-msgstr ""
+msgstr "Définition Composant De Contenu"
 
 #: src/zope/app/schemacontent/content.py:157
 msgid "No local/peristent Browser Menu Service found."
-msgstr ""
+msgstr "Aucun local/persistant Service De Menu De Navigation trouvé."
 
 #: src/zope/app/schemacontent/content.py:161
 msgid "No local Browser Menu called \"${name}\" found."
-msgstr ""
+msgstr "Aucun Menu De Navigation local trouvé nommé \"${name}\"."
 
 #: src/zope/app/schemacontent/interfaces.py:45
 msgid "Menu Id"
-msgstr ""
+msgstr "Identificateur De Menu"
 
 #: src/zope/app/schemacontent/interfaces.py:46
 msgid "Specifies the menu this menu item will be added to."
-msgstr ""
+msgstr "Définir le menu auquel cet élément de menu sera ajouter."
 
 #: src/zope/app/schemacontent/interfaces.py:51
-#, fuzzy
 msgid "Create Menu"
-msgstr "Créé"
+msgstr "Créer Menu"
 
 #: src/zope/app/schemacontent/interfaces.py:52
 msgid ""
@@ -3124,32 +3189,38 @@
 "specifed id. If no menu was found or the menu is a global menu, then an "
 "error is created."
 msgstr ""
+"Si la valeur est Vraie, le système créera un Service De Menu De Navigateur "
+"local ainsi q'uun Menu De Navigateur local pour vous. Si cette option est "
+"Fausse, le système tentera de trouver le Service De Menu De Navigateur "
+"suivant qui dispose d'un Menu correspondant à l'identificateur spécifié. Si "
+"aucun Menu n'est trouvé ou si le Menu est global alors une erreur est "
+"générée."
 
 #: src/zope/app/schemacontent/interfaces.py:73
 #: src/zope/app/schemacontent/interfaces.py:105
 msgid "Name of Content Component Type"
-msgstr ""
+msgstr "Nom d'un Type Composant De Contenu"
 
 #: src/zope/app/schemacontent/interfaces.py:74
 #: src/zope/app/schemacontent/interfaces.py:106
 msgid "This is the name of the document type."
-msgstr ""
+msgstr "Ceci est le nom du type de document."
 
 # Default: "Schema"
 #: src/zope/app/schemacontent/interfaces.py:78
 #: src/zope/app/schemacontent/interfaces.py:110
 #: src/zope/app/site/browser/interfacedetail.pt:42
 msgid "schema-component"
-msgstr ""
+msgstr "Schéma"
 
 #: src/zope/app/schemacontent/interfaces.py:79
 #: src/zope/app/schemacontent/interfaces.py:111
 msgid "Specifies the schema that characterizes the document."
-msgstr ""
+msgstr "Spécifier le Schéma qui caractérise le document."
 
 #: src/zope/app/schemacontent/interfaces.py:84
 msgid "Copy Schema"
-msgstr ""
+msgstr "Copier Schéma"
 
 #: src/zope/app/schemacontent/interfaces.py:85
 msgid ""
@@ -3159,121 +3230,131 @@
 "mutable schema evolves. If the value is False, then the Content Component's "
 "can change (which is desirable in some cases - i.e. during development.)"
 msgstr ""
+"Si ce Champ à une valeur Vraie, une copie du Schéma sera utilisée dans "
+"l'instance du Composant De Contenu.  Cela a pour avantage qu'un Composant De "
+"Contenu existant est inaltérable même si un Schéma mutable évolue. Si la "
+"valeur est Fausse alors le Composant De Contenu pourra être modifié (ce qui "
+"peut-être utile dans certains cas - ex.: en cours de développement)."
 
 #: src/zope/app/security/browser/login.pt:13
 #: src/zope/app/security/browser/logout.pt:11
 msgid "Back to the main page."
-msgstr ""
+msgstr "Retourner à la page principale."
 
 #: src/zope/app/security/browser/login.pt:5
 msgid "Login successful!"
-msgstr ""
+msgstr "Connexion réussie !"
 
 #: src/zope/app/security/browser/login.pt:9
 msgid "You are now logged in as ${UserTitle}."
-msgstr ""
+msgstr "Vous êtes connecté comme ${UserTitle}."
 
 #: src/zope/app/security/browser/login_failed.pt:5
 msgid "Login Failed!"
-msgstr ""
+msgstr "Connexion échouée !"
 
 #: src/zope/app/security/browser/login_failed.pt:9
 msgid ""
 "You cancelled the login procedure. <a href=\"\"> Click here to return. </a>"
 msgstr ""
+"Vous avez annulé la procédure de connexion. <a href=\"\"> Cliquez-ici pour "
+"retourner. </a>"
 
 #: src/zope/app/security/browser/logout.pt:5
 msgid "Logout successful!"
-msgstr ""
+msgstr "Déconnexion réussie !"
 
 #: src/zope/app/security/browser/logout.pt:7
 msgid "You are now logged out."
-msgstr ""
+msgstr "Vous êtes déconnecté."
 
 #: src/zope/app/security/browser/redirect.pt:11
 msgid "You are being redirected!"
-msgstr ""
+msgstr "Vous êtes redirigé !"
 
 #: src/zope/app/security/browser/redirect.pt:14
 msgid "If you you see this screen for more than 5 seconds, click here."
-msgstr ""
+msgstr "Si vous visualiser cette écran plus de 5 secondes, appuyez ici."
 
 # Default: "Change security settings"
 #: src/zope/app/security/configure.zcml:53
 msgid "change-security-settings-permission"
-msgstr ""
+msgstr "Modifier les paramétrages de sécurité"
 
 # Default: "Manage Content"
 #: src/zope/app/security/configure.zcml:58
 msgid "manage-content-permission"
-msgstr ""
+msgstr "Gérer Du Contenu"
 
 #: src/zope/app/security/configure.zcml:6
 msgid ""
 "Special permission indicating unconditional access.                    "
 "Public resources are always accessable."
 msgstr ""
+"Permission spéciale d'accès inconditionnel.                    Les "
+"ressources publiques sont toujours accessibles."
 
 # Default: "View"
 #: src/zope/app/security/configure.zcml:6
 #: src/zope/app/security/configure.zcml:48
 msgid "view-permission"
-msgstr ""
+msgstr "Vue"
 
 # Default: "Manage Service Bindings"
 #: src/zope/app/security/configure.zcml:63
 msgid "manage-service-bindings-permission"
-msgstr ""
+msgstr "Gérer les Liaisons de Services"
 
 #: src/zope/app/security/configure.zcml:68
 msgid "Manage executable code, including Python, SQL, ZPT, etc."
-msgstr ""
+msgstr "Gérer du code exécutable, incluant Python, SQL, ZPT, etc."
 
 # Default: "Manage Code"
 #: src/zope/app/security/configure.zcml:68
 msgid "manage-code-permission"
-msgstr ""
+msgstr "Gérer De Code"
 
 # Default: "Manage Services"
 #: src/zope/app/security/configure.zcml:74
 msgid "manage-services-permission"
-msgstr ""
+msgstr "Gérer Des Services"
 
 # Default: "Manage Principals"
 #: src/zope/app/security/configure.zcml:79
 msgid "manage-principal-permission"
-msgstr ""
+msgstr "Gérer Des Principales"
 
 #: src/zope/app/security/configure.zcml:84
 msgid ""
 "Manage the Zope Application, such as Restart/Shutdown or                    "
 "packing the ZODB."
 msgstr ""
+"Gérer l'Application Zope, comme Redémmarer/Arrêter ou compacter la ZODB."
 
 # Default: "Manage Application"
 #: src/zope/app/security/configure.zcml:84
 msgid "manage-application-permission"
-msgstr ""
+msgstr "Gérer L'Application"
 
 #: src/zope/app/security/interfaces/__init__.py:192
 msgid "Id as which this permission will be known and used."
-msgstr ""
+msgstr "Identificateur de la permission."
 
 #: src/zope/app/security/interfaces/__init__.py:198
 msgid "Provides a title for the permission."
-msgstr ""
+msgstr "Définir un titre pour la permission."
 
 #: src/zope/app/security/interfaces/__init__.py:203
 msgid "Provides a description for the permission."
-msgstr ""
+msgstr "Définir une description pour la permission."
 
 #: src/zope/app/security/interfaces/__init__.py:39
 msgid "The unique identification of the principal."
-msgstr ""
+msgstr "L'identifiant unique du Principale."
 
 #: src/zope/app/security/interfaces/__init__.py:45
 msgid "The title of the principal. This is usually used in the UI."
-msgstr ""
+msgstr "Le titre du Principale.  Celui-ci est généralement utilisé dans l'IU."
 
 #: src/zope/app/security/interfaces/__init__.py:50
 #: src/zope/app/security/interfaces/__init__.py:202
@@ -3285,140 +3366,142 @@
 #: src/zope/app/introspector/introspector.pt:52
 #: src/zope/app/introspector/introspector.pt:155
 msgid "Description"
-msgstr ""
+msgstr "Description"
 
 #: src/zope/app/security/interfaces/__init__.py:51
 msgid "A detailed description of the principal."
-msgstr ""
+msgstr "Une description détaillée du Principale."
 
 #: src/zope/app/securitypolicy/browser/configure.zcml:15
 msgid "New Role"
-msgstr ""
+msgstr "Nouveau Rôle"
 
 #: src/zope/app/securitypolicy/browser/configure.zcml:36
 msgid "A Persistent Role"
-msgstr ""
+msgstr "Un Rôle Persistant"
 
 #: src/zope/app/securitypolicy/browser/configure.zcml:45
 msgid "New Role Registration"
-msgstr ""
+msgstr "Enregistrement d'un nouveau Rôle"
 
 #: src/zope/app/securitypolicy/browser/configure.zcml:6
 msgid ""
 "Roles are used to combine permissions and can be assigned       to "
 "principals."
 msgstr ""
+"Les Rôles servent à combiner les permissions et peuvent être attribués aux "
+"Principales."
 
 #: src/zope/app/securitypolicy/browser/configure.zcml:6
 #: src/zope/app/securitypolicy/browser/configure.zcml:36
 #: src/zope/app/securitypolicy/browser/manage_permissionform.pt:52
 msgid "Role"
-msgstr ""
+msgstr "Rôle"
 
 #: src/zope/app/securitypolicy/browser/configure.zcml:72
 msgid "Grant"
-msgstr ""
+msgstr "Accord"
 
 #: src/zope/app/securitypolicy/browser/grant.pt:14
 msgid "Grant permissions to roles"
-msgstr ""
+msgstr "Accorder des permissions aux Rôles"
 
 #: src/zope/app/securitypolicy/browser/grant.pt:18
 msgid "Grant roles to principals"
-msgstr ""
+msgstr "Accorder des Rôles aux Principales"
 
 #: src/zope/app/securitypolicy/browser/manage_access.pt:33
 msgid "Roles"
-msgstr ""
+msgstr "Rôles"
 
 #: src/zope/app/securitypolicy/browser/manage_permissionform.pt:24
 msgid "Helpful message."
-msgstr ""
+msgstr "Message d'aide."
 
 #: src/zope/app/securitypolicy/browser/manage_permissionform.pt:35
 msgid "Roles assigned to the permission ${perm_title} (id: ${perm_id})"
-msgstr ""
+msgstr "Rôles assignés à la permission ${perm_title} (id: ${perm_id})"
 
 #: src/zope/app/securitypolicy/browser/manage_permissionform.pt:57
 msgid "Setting"
-msgstr ""
+msgstr "Paramétrage"
 
 #: src/zope/app/securitypolicy/browser/manage_roleform.pt:20
 msgid "Permissions assigned to the role ${role_title} (id: ${role_id})"
-msgstr ""
+msgstr "Permissions assignées au Rôle ${role_title} (id: ${role_id})"
 
 #: src/zope/app/securitypolicy/browser/manage_roleform.pt:9
 msgid "Helpful message explaining about how to set specific roles"
-msgstr ""
+msgstr "Message d'aide décrivant comment définir certains Rôles"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:12
 msgid "Permission Settings"
-msgstr ""
+msgstr "Paramétrages de Permission"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:19
 msgid "Allowed Permissions"
-msgstr ""
+msgstr "Permissions acceptées"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:44
 msgid "Denied Permissions"
-msgstr ""
+msgstr "Permissions refusées"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:63
 msgid "Remove selected permission settings"
-msgstr ""
+msgstr "Supprimer les paramétrages de permission sélectionnés"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:7
 msgid "Permission settings for ${principal_title}"
-msgstr ""
+msgstr "Paramétrages de permission de ${principal_title}"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:74
 msgid "Add permission settings"
-msgstr ""
+msgstr "Ajouter des paramétrages de permission"
 
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:91
 #: src/zope/app/securitypolicy/browser/principal_permission_edit.pt:95
 msgid "grant-button"
-msgstr ""
+msgstr "Accorder"
 
 #: src/zope/app/securitypolicy/browser/principal_role_association.pt:13
 msgid "Apply filter"
-msgstr ""
+msgstr "Appliquer le filtre"
 
 #: src/zope/app/securitypolicy/browser/principal_role_association.pt:17
 msgid "Principal(s)"
-msgstr ""
+msgstr "Principale(s)"
 
 #: src/zope/app/securitypolicy/browser/principal_role_association.pt:24
 msgid "Role(s)"
-msgstr ""
+msgstr "Rôle(s)"
 
 #: src/zope/app/securitypolicy/browser/principalroleview.py:92
 #: src/zope/app/securitypolicy/browser/rolepermissionview.py:139
 msgid "Settings changed at ${date_time}"
-msgstr ""
+msgstr "Paramétrages modifié le ${date_time}"
 
 # Default: "Acquire"
 #: src/zope/app/securitypolicy/browser/rolepermissionview.py:47
 msgid "permission-acquire"
-msgstr ""
+msgstr "Acquérir"
 
 # Default: "Allow"
 #: src/zope/app/securitypolicy/browser/rolepermissionview.py:49
 msgid "permission-allow"
-msgstr ""
+msgstr "Permettre"
 
 # Default: "Deny"
 #: src/zope/app/securitypolicy/browser/rolepermissionview.py:51
 msgid "permission-deny"
-msgstr ""
+msgstr "Refuser"
 
 #: src/zope/app/securitypolicy/configure.zcml:65
 msgid "All users have this role implicitly"
-msgstr ""
+msgstr "Tous les utilisateurs disposent de ce Rôle implicitement"
 
 #: src/zope/app/securitypolicy/configure.zcml:65
 msgid "Everybody"
-msgstr ""
+msgstr "Tous"
 
 #: src/zope/app/securitypolicy/configure.zcml:67
 msgid "Site Manager"
@@ -3430,54 +3513,63 @@
 
 #: src/zope/app/session/browser.zcml:25
 msgid "Cookie Browser ID Manager Properties"
-msgstr ""
+msgstr "Proriétés De L'Identificateur De Gestionnaire De Cookie De Navigateur"
 
 #: src/zope/app/session/browser.zcml:33
 msgid "Stores session data persistently in the ZODB"
-msgstr ""
+msgstr "Stocker les données de session de façon persistante dans la ZODB"
 
 #: src/zope/app/session/browser.zcml:33
 msgid "Persistent Session Data Container"
-msgstr ""
+msgstr "Session Persistant De Conteneur De Données"
 
 #: src/zope/app/session/browser.zcml:41
+#, fuzzy
 msgid "Stores session data in RAM"
-msgstr ""
+msgstr "Stocker les données de session de façon persistante dans la ZODB"
 
 #: src/zope/app/session/browser.zcml:41
+#, fuzzy
 msgid "RAM Session Data Container"
-msgstr ""
+msgstr "Session Persistant De Conteneur De Données"
 
 #: src/zope/app/session/browser.zcml:48
+#, fuzzy
 msgid "Session Data Container Properties"
-msgstr ""
+msgstr "Propriétés De Session Persistante De Conteneur De Données"
 
 #: src/zope/app/session/browser.zcml:8
 msgid ""
 "Uses a cookie to uniquely identify a browser, allowing        state to be "
 "maintained between requests"
 msgstr ""
+"Utilisé un Cookie afin d'identifier de façon unique un Navigateur, "
+"permettant de conserver l'état entre les requêtes"
 
 #: src/zope/app/session/browser.zcml:8
 msgid "Cookie Browser Id Manager"
-msgstr ""
+msgstr "Identificateur De Gestionnaire De Cookie De Navigateur"
 
 #: src/zope/app/session/interfaces.py:100
 msgid "Timeout"
-msgstr ""
+msgstr "Arrêt"
 
 #: src/zope/app/session/interfaces.py:101
 msgid "Number of seconds before data becomes stale and may be removed"
 msgstr ""
+"Nombre de secondes avant que ces données ne deviennent obsolètes et puissent "
+"être supprimées"
 
 #: src/zope/app/session/interfaces.py:109
 msgid "Purge Interval"
-msgstr ""
+msgstr "Intervale De Purge"
 
 #: src/zope/app/session/interfaces.py:110
 msgid ""
 "How often stale data is purged in seconds. Higer values improve performance."
 msgstr ""
+"Périodicité de purge des données obsolètes par secondes. Une valeur élevée "
+"améliore la performance."
 
 #: src/zope/app/session/interfaces.py:144
 msgid "Last Access Time"
@@ -3491,192 +3583,194 @@
 
 #: src/zope/app/session/interfaces.py:53
 msgid "Cookie Name"
-msgstr ""
+msgstr "Nom De Cookie"
 
 #: src/zope/app/session/interfaces.py:54
 msgid ""
 "Name of cookie used to maintain state. Must be unique to the site domain "
 "name, and only contain ASCII letters, digits and '_'"
 msgstr ""
+"Nom du Cookie utilisé afin de conserver l'état. Il doit être unique pour le "
+"nom de domaine du site, et ne contenir que des lettres, chiffres ASCII et '_'"
 
 #: src/zope/app/session/interfaces.py:66
 msgid "Cookie Lifetime"
-msgstr ""
+msgstr "Durée de vie du Cookie"
 
 #: src/zope/app/session/interfaces.py:67
 msgid ""
 "Number of seconds until the browser expires the cookie. Leave blank expire "
 "the cookie when the browser is quit. Set to 0 to never expire. "
 msgstr ""
+"Nombre de secondes avant lesquelles les Cookies de Navigateur expirent. Si "
+"rien n'est spécifié les Cookies expirent lorsque le Navigateur est fermé. Si "
+"la valeur est 0, ils n'expirent jamais. "
 
 #: src/zope/app/site/browser/__init__.py:108
 msgid "Add Service"
-msgstr ""
+msgstr "Ajouter un Service"
 
 #: src/zope/app/site/browser/__init__.py:145
 #: src/zope/app/schema/browser/schema_add.pt:8
 msgid "Add Utility"
-msgstr ""
+msgstr "Ajouter un Utilitaire"
 
 #: src/zope/app/site/browser/__init__.py:236
 msgid "Activated: ${activated_services}"
-msgstr ""
+msgstr "Activé: ${activated_services}"
 
 #: src/zope/app/site/browser/__init__.py:240
 msgid "All of the checked services were already active"
-msgstr ""
+msgstr "Tous les Services sélectionnés étaient déjà actifs"
 
 #: src/zope/app/site/browser/__init__.py:251
 msgid "Deactivated: ${deactivated_services}"
-msgstr ""
+msgstr "Désactivé: ${deactivated_services}"
 
 #: src/zope/app/site/browser/__init__.py:255
 msgid "None of the checked services were active"
-msgstr ""
+msgstr "Aucun des Services sélectionnés n'était activé"
 
 #: src/zope/app/site/browser/__init__.py:266
 msgid ""
 "Can't delete active service(s): ${service_names}; use the Deactivate button "
 "to deactivate"
 msgstr ""
+"Impossible de supprimer un/des Service(s) actif(s): ${service_names}; "
+"utilisez le bouton Désactiver au préalable"
 
 #: src/zope/app/site/browser/__init__.py:300
 msgid "Deleted: ${service_names}"
-msgstr ""
+msgstr "Supprimé: ${service_names}"
 
 #: src/zope/app/site/browser/__init__.py:335
 msgid "global"
-msgstr ""
+msgstr "global"
 
 #: src/zope/app/site/browser/__init__.py:416
 msgid "Invalid service type specified"
-msgstr ""
+msgstr "Le type du Service spécifié n'est pas valide"
 
 #: src/zope/app/site/browser/__init__.py:423
 msgid "No change"
-msgstr ""
+msgstr "Pas de modification"
 
 #: src/zope/app/site/browser/__init__.py:427
 msgid "Service deactivated"
-msgstr ""
+msgstr "Service désactivé"
 
 #: src/zope/app/site/browser/__init__.py:430
 msgid "${active_services} activated"
-msgstr ""
+msgstr "${active_services} activé"
 
 #: src/zope/app/site/browser/add_svc_config.pt:14
 #: src/zope/app/registration/browser/registration.pt:50
-#, fuzzy
 msgid "register-button"
-msgstr "Reset"
+msgstr "Enregistrer"
 
 #: src/zope/app/site/browser/add_svc_config.pt:15
 msgid "Service name"
-msgstr ""
+msgstr "Nom de Service"
 
 #: src/zope/app/site/browser/add_svc_config.pt:35
 #: src/zope/app/cache/browser/ramedit.pt:53
 #: src/zope/app/bundle/browser/bundle.pt:130
 msgid "reset-button"
-msgstr "Reset"
+msgstr "Re-initialisé"
 
 #: src/zope/app/site/browser/add_svc_config.pt:7
 msgid "Register this object to provide the following service(s):"
-msgstr ""
+msgstr "Enregister cet objet pour assurer le(s) Service(s) suivant(s):"
 
 #: src/zope/app/site/browser/configure.zcml:103
 msgid "Interface Browse"
-msgstr ""
+msgstr "Navigateur D'Interface"
 
 #: src/zope/app/site/browser/configure.zcml:138
 msgid "Visit default folder"
-msgstr ""
+msgstr "Visiter le Dossier par défaut"
 
 #: src/zope/app/site/browser/configure.zcml:142
 msgid "Add service"
-msgstr ""
+msgstr "Ajouter un Service"
 
 #: src/zope/app/site/browser/configure.zcml:155
 msgid "Software"
-msgstr ""
+msgstr "Logiciel"
 
 #: src/zope/app/site/browser/configure.zcml:163
-#, fuzzy
 msgid "Add Site Management Folder"
-msgstr "Gestionnaire de site"
+msgstr "Ajouter un Dossier De Gestion De Site"
 
 #: src/zope/app/site/browser/configure.zcml:186
 msgid "Edit Service Registration"
-msgstr ""
+msgstr "Editer L'Enregistrement De Service"
 
 #: src/zope/app/site/browser/configure.zcml:210
 msgid "Takes you to a menu of services to add"
-msgstr ""
+msgstr "Vous dirige vers un menu de Services à ajouter"
 
 #: src/zope/app/site/browser/configure.zcml:210
 #: src/zope/app/site/browser/serviceactivation.pt:26
 #: src/zope/app/apidoc/ifacemodule/index.pt:247
 msgid "Service"
-msgstr ""
+msgstr "Service"
 
 #: src/zope/app/site/browser/configure.zcml:232
-#, fuzzy
 msgid "Service Tools"
-msgstr "Contrôle du serveur"
+msgstr "Outils De Service"
 
 #: src/zope/app/site/browser/configure.zcml:232
 msgid "Service tool management."
-msgstr ""
+msgstr "Outil de gestion de Service."
 
 #: src/zope/app/site/browser/configure.zcml:237
 #: src/zope/app/site/browser/configure.zcml:246
 #: src/zope/app/site/browser/configure.zcml:255
 msgid "Tools"
-msgstr ""
+msgstr "Outils"
 
 #: src/zope/app/site/browser/configure.zcml:60
 msgid "Make a site"
-msgstr ""
+msgstr "Créer un site"
 
 #: src/zope/app/site/browser/configure.zcml:69
-#, fuzzy
 msgid "Manage Site"
-msgstr "Gérer le processus"
+msgstr "Gérer Le Site"
 
 #: src/zope/app/site/browser/configure.zcml:7
-#, fuzzy
 msgid "Site-Management Folder"
-msgstr "Gestionnaire de site"
+msgstr "Dossier de Gestion De Site"
 
 #: src/zope/app/site/browser/configure.zcml:79
 msgid "Tasks"
-msgstr ""
+msgstr "Tâches"
 
 #: src/zope/app/site/browser/interfacebrowse.pt:10
 msgid "Interface Name"
-msgstr ""
+msgstr "Nom d'Interface"
 
 #: src/zope/app/site/browser/interfacebrowse.pt:5
 msgid "Interfaces registered with the Utility service"
-msgstr ""
+msgstr "Interfaces enregistrées avec le Service Utilitaire"
 
 #: src/zope/app/site/browser/interfacedetail.pt:11
 msgid "Documentation"
-msgstr ""
+msgstr "Documentation"
 
 # Default: "Methods"
 #: src/zope/app/site/browser/interfacedetail.pt:16
 #: src/zope/app/introspector/introspector.pt:83
 msgid "class-methods"
-msgstr ""
+msgstr "Méthodes"
 
 #: src/zope/app/site/browser/interfacedetail.pt:20
 msgid "Method Signature"
-msgstr ""
+msgstr "Signature de Méthode"
 
 #: src/zope/app/site/browser/interfacedetail.pt:46
 msgid "Field Name"
-msgstr ""
+msgstr "Nom de Champ"
 
 #: src/zope/app/site/browser/interfacedetail.pt:47
 #: src/zope/app/sqlscript/browser/test.pt:15
@@ -3686,32 +3780,32 @@
 
 #: src/zope/app/site/browser/interfacedetail.pt:67
 msgid "* indicates required fields."
-msgstr ""
+msgstr "* indique les champs obligatoires."
 
 #: src/zope/app/site/browser/interfacedetail.pt:7
 msgid "Interface ${iface_name}"
-msgstr ""
+msgstr "Interface ${iface_name}"
 
 #: src/zope/app/site/browser/interfacedetail.pt:72
 msgid "Registrations for ${service_name} service"
-msgstr ""
+msgstr "Enregistrements de ${service_name} Service"
 
 #: src/zope/app/site/browser/interfacedetail.pt:79
 #: src/zope/app/i18n/browser/synchronize.pt:89
 msgid "Status"
-msgstr ""
+msgstr "Statut"
 
 #: src/zope/app/site/browser/interfacedetail.pt:80
 msgid "Usage Summary"
-msgstr ""
+msgstr "Résumé d'Utilisation"
 
 #: src/zope/app/site/browser/interfacedetail.pt:81
 msgid "Implementation Summary"
-msgstr ""
+msgstr "Résumé d'Implémentation"
 
 #: src/zope/app/site/browser/serviceactivation.pt:13
 msgid "Registrations for service ${service_type}"
-msgstr ""
+msgstr "Enregistrements de Service ${service_type}"
 
 #: src/zope/app/site/browser/serviceactivation.pt:54
 #: src/zope/app/site/browser/add_svc_config.pt:37
@@ -3729,11 +3823,11 @@
 #: src/zope/app/utility/browser/utilities.pt:11
 #: src/zope/app/bundle/browser/bundle.pt:53
 msgid "(click to clear message)"
-msgstr ""
+msgstr "(cliquer pour effacer le message)"
 
 #: src/zope/app/site/browser/services.pt:18
 msgid "No services are registered."
-msgstr ""
+msgstr "Aucun Service enregistré."
 
 #: src/zope/app/site/browser/services.pt:23
 msgid ""
@@ -3741,19 +3835,22 @@
 "The (change registration) link allows activating a different implementation "
 "or disabling the service altogether."
 msgstr ""
+"Sauf dans le cas où un Service n'est pas activé, le nom de Service est lié "
+"au Service actif.  Le lien (modifier enregistrement) permet d'activer une "
+"implémentation différente ou de désactiver tout à fait le Service."
 
 #: src/zope/app/site/browser/services.pt:5
 msgid "Services registered in this site manager"
-msgstr ""
+msgstr "Services enregistrés dans ce gestionnaire de site"
 
 #: src/zope/app/site/browser/services.pt:54
 msgid "(change registration)"
-msgstr ""
+msgstr "(modifier l'enregistrement)"
 
 # Default: "Tools"
 #: src/zope/app/site/browser/tasks.pt:15
 msgid "label-tools"
-msgstr ""
+msgstr "Outils"
 
 #: src/zope/app/site/browser/tasks.pt:18
 msgid ""
@@ -3764,36 +3861,43 @@
 "this site or provide new serivces and utilities (which may override existing "
 "tools)."
 msgstr ""
+"Les Outils sont des Services et des Utilitaires. Les Services s'enregistrent "
+"eux-mêmes avec le Service Service alors que les Utilitaires s'enregistrent "
+"eux-mêmes avec le Service Utilitaire. Ils effectuent des tâches tels que : "
+"l'enregistrement d'erreurs, la traduction, l'authentification, etc. Vous "
+"pouvez configurer les Services et Utilitaires déjà fournis dans ce site ou "
+"fournir d'autres Services et Utilitaires (qui peuvent remplacer les Outils "
+"existants)."
 
 # Default: "Configure services"
 #: src/zope/app/site/browser/tasks.pt:30
 msgid "label-configure-services"
-msgstr ""
+msgstr "Configurer des Services"
 
 # Default: "Configure utilities"
 #: src/zope/app/site/browser/tasks.pt:36
 msgid "label-configure-utilities"
-msgstr ""
+msgstr "Configurer utilitaires"
 
 # Default: "Add a service"
 #: src/zope/app/site/browser/tasks.pt:43
 msgid "label-add-service"
-msgstr ""
+msgstr "Ajouter un Service"
 
 # Default: "Add a utility"
 #: src/zope/app/site/browser/tasks.pt:49
 msgid "label-add-utility"
-msgstr ""
+msgstr "Ajouter un Utilitaire"
 
 # Default: "Common Site Management Tasks"
 #: src/zope/app/site/browser/tasks.pt:5
 msgid "heading-common-site-management-tasks"
-msgstr ""
+msgstr "Tâches Communes De Gestion De Site"
 
 # Default: "Software"
 #: src/zope/app/site/browser/tasks.pt:56
 msgid "label-software"
-msgstr ""
+msgstr "Logiciel"
 
 #: src/zope/app/site/browser/tasks.pt:59
 msgid ""
@@ -3801,27 +3905,31 @@
 "The first step in creating a new software package is to create a new Site "
 "Management Folder to contain the software."
 msgstr ""
+"Le site peut paramétrer le comportement de logiciel existant ou définir le "
+"sien.  La première étape dans la création d'un paquetage logiciel consiste à "
+"créer un Dossier De Gestion De Site qui contiendra le logiciel."
 
 # Default: "Customize the behavior of existing software"
 #: src/zope/app/site/browser/tasks.pt:68
 msgid "label-customize-existing-software"
-msgstr ""
+msgstr "Adaptez le comportement de logiciel existant"
 
 # Default: "Create a new Site Management Folder"
 #: src/zope/app/site/browser/tasks.pt:75
 msgid "label-create-new-site-management-folder"
-msgstr ""
+msgstr "Créer un nouveau Dossier De Gestion De Site"
 
 #: src/zope/app/site/browser/tasks.pt:9
 msgid ""
 "The site management interface allows you to setup and configure software for "
 "this site."
 msgstr ""
+"L'interface de gestion de site est utilisée pour installer et configurer les "
+"logiciels de ce site."
 
 #: src/zope/app/site/browser/tool.pt:102
-#, fuzzy
 msgid "rename-button"
-msgstr "Reset"
+msgstr "Renommer"
 
 #: src/zope/app/site/browser/tool.pt:106
 #: src/zope/app/site/browser/services.pt:74
@@ -3839,38 +3947,37 @@
 #: src/zope/app/wiki/browser/wiki_add.pt:29
 #: src/zope/app/registration/browser/editregistration.pt:49
 msgid "refresh-button"
-msgstr "Rafraîchir"
+msgstr "Rafraîchir"
 
 #: src/zope/app/site/browser/tool.pt:110
 #: src/zope/app/securitypolicy/browser/principal_role_association.pt:98
 msgid "apply-button"
-msgstr ""
+msgstr "Appliquer"
 
 #: src/zope/app/site/browser/tool.pt:113
-#, fuzzy
 msgid "cancel-button"
-msgstr "Nettoyer"
+msgstr "Annuler"
 
 #: src/zope/app/site/browser/tool.pt:25
 msgid "No tools are registered."
-msgstr ""
+msgstr "Aucun outils n'est enregistré."
 
 #: src/zope/app/site/browser/tool.pt:30
 msgid "Unless a tool is disabled the tool name links to the active tool. ..."
 msgstr ""
+"Sauf si l'outil est hors service le nom de l'outil est lié à l'outil actif..."
 
 #: src/zope/app/site/browser/tool.pt:42
-#, fuzzy
 msgid "Parent"
-msgstr "Chemin"
+msgstr "Parent"
 
 #: src/zope/app/site/browser/tool.pt:67
 msgid "active"
-msgstr ""
+msgstr "Actif"
 
 #: src/zope/app/site/browser/tool.pt:72
 msgid "disabled"
-msgstr ""
+msgstr "Désactivé"
 
 #: src/zope/app/site/browser/tool.pt:91
 #: src/zope/app/site/browser/services.pt:66
@@ -3878,14 +3985,14 @@
 #: src/zope/app/utility/browser/utilities.pt:42
 #: src/zope/app/registration/browser/registration.pt:30
 msgid "activate-button"
-msgstr ""
+msgstr "Activer"
 
 #: src/zope/app/site/browser/tool.pt:93
 #: src/zope/app/site/browser/services.pt:68
 #: src/zope/app/utility/browser/utilities.pt:44
 #: src/zope/app/registration/browser/registration.pt:25
 msgid "deactivate-button"
-msgstr ""
+msgstr "Désactiver"
 
 #: src/zope/app/site/browser/tool.pt:96
 #: src/zope/app/schema/browser/schema_add.pt:39
@@ -3898,7 +4005,7 @@
 #: src/zope/app/wiki/browser/subscriptions.pt:37
 #: src/zope/app/wiki/browser/wiki_add.pt:31
 msgid "add-button"
-msgstr ""
+msgstr "Ajouter"
 
 #: src/zope/app/site/browser/tool.pt:99
 #: src/zope/app/site/browser/services.pt:71
@@ -3906,66 +4013,65 @@
 #: src/zope/app/workflow/browser/instancecontainer_main.pt:47
 #: src/zope/app/i18n/browser/translate.pt:37
 msgid "delete-button"
-msgstr ""
+msgstr "Effacer"
 
 #: src/zope/app/site/browser/tools.pt:5
 msgid "Available Tools"
-msgstr ""
+msgstr "Outils disponibles"
 
 #: src/zope/app/site/browser/tools.py:159
 #: src/zope/app/site/browser/tools.py:303
 msgid "Deleted selected tools."
-msgstr ""
+msgstr "Effacer les outils sélectionnés."
 
 #: src/zope/app/site/browser/tools.py:162
 #: src/zope/app/site/browser/tools.py:308
 msgid "Renamed selected tools."
-msgstr ""
+msgstr "Renommer les outils sélectionnés."
 
 #: src/zope/app/site/browser/tools.py:167
 #: src/zope/app/site/browser/tools.py:313
 msgid "Activated registrations."
-msgstr ""
+msgstr "Activé des enregistrements."
 
 #: src/zope/app/site/browser/tools.py:170
 #: src/zope/app/site/browser/tools.py:316
 msgid "Deactivated registrations."
-msgstr ""
+msgstr "Désactivé des enregistrements."
 
 #: src/zope/app/site/interfaces.py:163 src/zope/app/utility/interfaces.py:42
 msgid "The name that is registered"
-msgstr ""
+msgstr "Le nom qui est enregistré"
 
 # Default: "n/a"
 #: src/zope/app/size/__init__.py:44
 msgid "not-available"
-msgstr ""
+msgstr "pas disponible"
 
 #: src/zope/app/size/__init__.py:48
 msgid "0 KB"
-msgstr ""
+msgstr "0 KB"
 
 #: src/zope/app/size/__init__.py:50
 msgid "1 KB"
-msgstr ""
+msgstr "1 KB"
 
 #: src/zope/app/size/__init__.py:55
 msgid "${size} KB"
-msgstr ""
+msgstr "1 KB"
 
 # Default: "Add and Test"
 #: src/zope/app/sqlscript/browser/add.pt:11
 msgid "add-and-test"
-msgstr ""
+msgstr "Ajouter et Tester"
 
 #: src/zope/app/sqlscript/browser/configure.zcml:15
-#, fuzzy
 msgid "Add a SQL Script"
-msgstr "Editer un appel SQL"
+msgstr "Ajouter un Script SQL"
 
 #: src/zope/app/sqlscript/browser/configure.zcml:26
 msgid "Edit an SQL script"
-msgstr "Editer un appel SQL"
+msgstr "Editer un Script SQL"
 
 #: src/zope/app/sqlscript/browser/configure.zcml:60
 msgid "Caching"
@@ -3974,7 +4080,7 @@
 # Default: "Change and Test"
 #: src/zope/app/sqlscript/browser/edit.pt:11
 msgid "change-and-test"
-msgstr ""
+msgstr "Changer et Tester"
 
 #: src/zope/app/sqlscript/browser/test.pt:14
 msgid "Argument Name"
@@ -3991,96 +4097,100 @@
 
 #: src/zope/app/sqlscript/browser/testresults.pt:28
 msgid "An Error occurred"
-msgstr "Il y a une erreur"
+msgstr "Une erreur s'est produite"
 
 # Default: "Add SQL Scripts"
 #: src/zope/app/sqlscript/configure.zcml:12
 msgid "add-sql-scripts-permission"
-msgstr ""
+msgstr "Ajouter des Scripts SQL"
 
 #: src/zope/app/sqlscript/configure.zcml:23
 #: src/zope/app/sqlscript/browser/configure.zcml:7
 msgid "A content-based script to execute dyanmic SQL."
-msgstr ""
+msgstr "Un Script de contenu afin d'éxecuter du SQL dynamique"
 
 #: src/zope/app/sqlscript/configure.zcml:23
 #: src/zope/app/sqlscript/browser/configure.zcml:7
 msgid "SQL Script"
-msgstr ""
+msgstr "Script SQL"
 
 #: src/zope/app/sqlscript/interfaces.py:29
 msgid "Connection Name"
-msgstr ""
+msgstr "Nom De Connexion"
 
 #: src/zope/app/sqlscript/interfaces.py:30
 msgid "The Connection Name for the connection to be used."
-msgstr ""
+msgstr "Le Nom De Connexion à utiliser."
 
 #: src/zope/app/sqlscript/interfaces.py:35
 msgid "Arguments"
-msgstr ""
+msgstr "Arguments"
 
 #: src/zope/app/sqlscript/interfaces.py:36
 msgid ""
 "A set of attributes that can be used during the SQL command rendering "
 "process to provide dynamic data."
 msgstr ""
+"Un ensemble d'attributs qui peuvent être utilisés lors du processus de rendu "
+"de commande SQL afin de délivrer des données dynamiques."
 
 #: src/zope/app/sqlscript/interfaces.py:45
 msgid "The SQL command to be run."
-msgstr ""
+msgstr "La commande SQL à exécuter."
 
 #: src/zope/app/traversing/browser/absoluteurl.py:28
-#, fuzzy
 msgid ""
 "There isn't enough context to get URL information. This is probably due to a "
 "bug in setting up location information."
 msgstr ""
-"Il n'y a pas assez de contexte pour calculer l'URL. Ceci est probablement dû "
-"à un bug lors de la mise en place des 'context-wrappers'"
+"Il n'y a pas assez de contexte pour calculer l'URL. Ceci est probablement dû "
+"à un bogue lors de la mise en place des information de localisation."
 
 #: src/zope/app/tree/browser/navigation_macros.pt:16
 #: src/zope/app/rotterdam/navigation_macros.pt:26
 msgid "Navigation"
-msgstr ""
+msgstr "Navigation"
 
 #: src/zope/app/undo/configure.zcml:108
 msgid "Redo!"
-msgstr ""
+msgstr "Recommencer!"
 
 #: src/zope/app/undo/configure.zcml:117 src/zope/app/undo/undo_more.pt:5
 msgid "Undo more"
-msgstr ""
+msgstr "Annuler suite"
 
 #: src/zope/app/undo/configure.zcml:125 src/zope/app/undo/undo_all.pt:5
 msgid "Undo all"
-msgstr ""
+msgstr "Tout annuler"
 
 # Default: "Undo all transactions"
 #: src/zope/app/undo/configure.zcml:14
 msgid "undo-all-transactions-permission"
-msgstr ""
+msgstr "Annuler toutes les transactions"
 
 #: src/zope/app/undo/configure.zcml:14
 msgid ""
 "With this permission a user may undo all transactions,                    "
 "regardless of who initiated them"
 msgstr ""
+"Avec cette permission un utilisateur peut annuler toutes transactions "
+"quelque soit l'initiateur de celles-ci"
 
 #: src/zope/app/undo/configure.zcml:7
 msgid ""
 "With this permission a user may undo his/her own                    "
 "transactions."
 msgstr ""
+"Avec cette permission un utilisateur peut annuler toutes ses transactions."
 
 # Default: "Undo one's one transactions"
 #: src/zope/app/undo/configure.zcml:7
 msgid "undo-own-transaction-permission"
-msgstr ""
+msgstr "Annuler ses propres transactions"
 
 #: src/zope/app/undo/configure.zcml:99
 msgid "Undo!"
-msgstr ""
+msgstr "Annuler!"
 
 #: src/zope/app/undo/undo_all.pt:10 src/zope/app/undo/undo_more.pt:10
 msgid ""
@@ -4088,644 +4198,655 @@
 "below. Please be aware that you may only undo a transaction if the object "
 "has not been modified in a later transaction by you or any other user."
 msgstr ""
+"Sélectionnez une ou plusieurs transactions dans la liste et appuyez sur le "
+"bouton ci-dessous.  Veuillez noter que vous ne pouvez annuler une "
+"transaction que si l'objet n'a pas été modifié dans une transaction "
+"postérieure par vous ou un autre utilisateur."
 
 #: src/zope/app/undo/undo_all.pt:7
 msgid "This form lets you undo all transactions initiated by any user."
 msgstr ""
+"Ce formulaire permet d'annuler toutes les transactions initiées par un "
+"utilisateur."
 
 #: src/zope/app/undo/undo_macros.pt:101
 msgid "View ${number} earlier transactions"
-msgstr ""
+msgstr "Vue ${number} transactions récentes"
 
 #: src/zope/app/undo/undo_macros.pt:112
 msgid "View ${number} later transactions"
-msgstr ""
+msgstr "Vue ${number} transactions passées"
 
 #: src/zope/app/undo/undo_macros.pt:120
 msgid "undo-button"
-msgstr ""
+msgstr "Annuler"
 
 #: src/zope/app/undo/undo_macros.pt:16
 msgid "You are looking at transactions regardless of location."
-msgstr ""
+msgstr "Vous visualisez des transactions quelque soit l'emplacement."
 
 #: src/zope/app/undo/undo_macros.pt:17
 msgid "View only transactions in this location"
-msgstr ""
+msgstr "Visualiser seulement les transactions dans cet emplacement"
 
 #: src/zope/app/undo/undo_macros.pt:24
 msgid "You are looking only at transactions from this location."
-msgstr ""
+msgstr "Vous visualisez seulement des transactions de cet emplacement."
 
 #: src/zope/app/undo/undo_macros.pt:25
 msgid "View transactions regardless of location"
-msgstr ""
+msgstr "Visualiser des transactions quelque soit l'emplacement."
 
 # Default: "Location"
 #: src/zope/app/undo/undo_macros.pt:44
 msgid "heading-location"
-msgstr ""
+msgstr "Emplacement"
 
 # Default: "Request info"
 #: src/zope/app/undo/undo_macros.pt:45
 msgid "heading-request-info"
-msgstr ""
+msgstr "Information de requête"
 
 # Default: "Principal"
 #: src/zope/app/undo/undo_macros.pt:46
 msgid "heading-principal"
-msgstr ""
+msgstr "Principale"
 
 # Default: "Date"
 #: src/zope/app/undo/undo_macros.pt:47
 msgid "heading-date"
-msgstr ""
+msgstr "Date"
 
 # Default: "Description"
 #: src/zope/app/undo/undo_macros.pt:48
 msgid "heading-description"
-msgstr ""
+msgstr "Description"
 
 # Default: "not available"
 #: src/zope/app/undo/undo_macros.pt:62 src/zope/app/undo/undo_macros.pt:69
 #: src/zope/app/undo/undo_macros.pt:76 src/zope/app/undo/undo_macros.pt:87
 msgid "label-not-available"
-msgstr ""
+msgstr "Non disponible"
 
 #: src/zope/app/undo/undo_more.pt:7
 msgid ""
 "This form lets you undo your last transactions. You are only viewing "
 "transactions initiated by you."
 msgstr ""
+"Ce formulaire vous permet d'annuler vos dernières transactions. Vous ne "
+"visualisez que les transactions que vous avez initiées."
 
 #: src/zope/app/utility/browser/__init__.py:100
 msgid "Deactivated: ${deactivated_utilities}"
-msgstr ""
+msgstr "Désactivé: ${deactivated_utilities}"
 
 #: src/zope/app/utility/browser/__init__.py:104
 msgid "None of the checked utilities were active"
-msgstr ""
+msgstr "Aucun des Utilitaires sélectionnés n'étaient actifs"
 
 #: src/zope/app/utility/browser/__init__.py:116
 msgid ""
 "Can't delete active utility/utilites: ${utility_names}; use the Deactivate "
 "button to deactivate"
 msgstr ""
+"Impossible de supprimer un/des Utilitaire(s) actif(s): ${utility_names}; "
+"utiliser le bouton Désactiver au préalable"
 
 #: src/zope/app/utility/browser/__init__.py:148
 msgid "Deleted: ${utility_names}"
-msgstr ""
+msgstr "Supprimé: ${utility_names}"
 
 #: src/zope/app/utility/browser/__init__.py:59
 msgid "Please select at least one checkbox"
-msgstr ""
+msgstr "Veuillez sélectionner au moins une boîte à cocher"
 
 #: src/zope/app/utility/browser/__init__.py:85
 msgid "Activated: ${activated_utilities}"
-msgstr ""
+msgstr "Activé: ${activated_utilities}"
 
 #: src/zope/app/utility/browser/__init__.py:89
 msgid "All of the checked utilities were already active"
-msgstr ""
+msgstr "Tous les Utilitaires sélectionnés étaient déjà activés"
 
 #: src/zope/app/utility/browser/configure.zcml:23
 msgid "A Local Utility Service allows you to register Utilities in this site"
 msgstr ""
+"Un Service D'Utilitaire Local vous permet d'enregistrer les Utilitaires dans "
+"ce site"
 
 #: src/zope/app/utility/browser/configure.zcml:23
 msgid "Utility Service"
-msgstr ""
+msgstr "Service Utilitaire"
 
 #: src/zope/app/utility/browser/configure.zcml:62
 msgid "New Utility Registration"
-msgstr ""
+msgstr "Nouveau Enregistrement D'Utilitaire"
 
 #: src/zope/app/utility/browser/configure.zcml:85
 msgid "Edit Utility Registration"
-msgstr ""
+msgstr "Editer un Enregistrement D'Utilitaire"
 
 #: src/zope/app/utility/browser/configure.zcml:97
 msgid "Add utility"
-msgstr ""
+msgstr "Ajouter un Utilitaire"
 
 #: src/zope/app/utility/browser/configureutility.pt:14
 msgid "Utility registrations for interface ${interface}"
-msgstr ""
+msgstr "Enregistrements d'Utilitaire d'Interface ${interface}"
 
 #: src/zope/app/utility/browser/configureutility.pt:29
 #: src/zope/app/i18n/browser/synchronize.pt:117
 msgid "update-button"
-msgstr ""
+msgstr "Mettre à jour"
 
 #: src/zope/app/utility/browser/configureutility.pt:9
 msgid ""
 "Utility registrations for interface ${interface} with name ${utility_name}"
 msgstr ""
+"Enregistrements d'Utilitaire d'Interface ${interface} nommé ${utility_name}"
 
 #: src/zope/app/utility/browser/utilities.pt:34
 msgid "change registration"
-msgstr ""
+msgstr "Modifier Enregistrement"
 
 #: src/zope/app/utility/browser/utilities.pt:6
 msgid "Utilities registered in this utility service"
-msgstr ""
+msgstr "Utilitaires enregistrés dans ce Service D'Utilitaire"
 
 #: src/zope/app/utility/interfaces.py:41
 msgid "Register As"
-msgstr ""
+msgstr "Enregistré Comme"
 
 #: src/zope/app/utility/interfaces.py:49
 msgid "The interface provided by the utility"
-msgstr ""
+msgstr "L'Interface délivrée avec l'Utilitaire"
 
 #: src/zope/app/utility/interfaces.py:57
 msgid "The physical path to the component"
-msgstr ""
+msgstr "Le chemin physique vers le composant"
 
 #: src/zope/app/wiki/browser/configure.zcml:101
 #: src/zope/app/wiki/browser/configure.zcml:158
 msgid "View"
-msgstr ""
+msgstr "Vue"
 
 #: src/zope/app/wiki/browser/configure.zcml:109
 #: src/zope/app/wiki/browser/configure.zcml:161
 #: src/zope/app/wiki/browser/parents_page.pt:13
 msgid "Parents"
-msgstr ""
+msgstr "Parents"
 
 #: src/zope/app/wiki/browser/configure.zcml:134
 #: src/zope/app/wiki/browser/configure.zcml:143
 #: src/zope/app/wiki/browser/configure.zcml:159
-#, fuzzy
 msgid "Comment"
-msgstr "Contenu"
+msgstr "Commentaire"
 
 #: src/zope/app/wiki/browser/configure.zcml:143
-#, fuzzy
 msgid "A Comment"
-msgstr "Ajouter du contenu"
+msgstr "Un commentaire"
 
 #: src/zope/app/wiki/browser/configure.zcml:152
 msgid "Menu for Wiki Page related actions."
-msgstr ""
+msgstr "Menu d'actions liées à une Page Wiki"
 
 #: src/zope/app/wiki/browser/configure.zcml:168
-#, fuzzy
 msgid "Table of Contents"
-msgstr "Contenu"
+msgstr "Table des matières"
 
 #: src/zope/app/wiki/browser/configure.zcml:17
 msgid "Wiki"
-msgstr ""
+msgstr "Wiki"
 
 #: src/zope/app/wiki/browser/configure.zcml:17
 msgid "A Wiki"
-msgstr ""
+msgstr "Un Wiki"
 
 #: src/zope/app/wiki/browser/configure.zcml:24
 #: src/zope/app/wiki/browser/configure.zcml:162
 msgid "TOC"
-msgstr ""
+msgstr "Table des matières"
 
 #: src/zope/app/wiki/browser/configure.zcml:32
 #: src/zope/app/wiki/browser/configure.zcml:169
 msgid "Search"
-msgstr ""
+msgstr "Chercher"
 
 #: src/zope/app/wiki/browser/configure.zcml:44
 #: src/zope/app/wiki/browser/configure.zcml:118
 #: src/zope/app/wiki/browser/configure.zcml:163
 #: src/zope/app/wiki/browser/configure.zcml:170
-#, fuzzy
 msgid "Subscriptions"
-msgstr "Souscrire"
+msgstr "Abonnements"
 
 #: src/zope/app/wiki/browser/configure.zcml:76
-#, fuzzy
 msgid "Change Wiki Page"
-msgstr "Changer de fichier"
+msgstr "Modifier une Page Wiki"
 
 #: src/zope/app/wiki/browser/configure.zcml:8
 msgid "Add Wiki"
-msgstr ""
+msgstr "Ajouter un Wiki"
 
 #: src/zope/app/wiki/browser/parents_page.pt:30
-#, fuzzy
 msgid "reparent-button"
-msgstr "Reset"
+msgstr "Associer un parent"
 
 #: src/zope/app/wiki/browser/parents_page.pt:35
 msgid "Branch"
-msgstr ""
+msgstr "Branche"
 
 #: src/zope/app/wiki/browser/skin/template.pt:32
 msgid "Last modified by ${user} on ${date}"
-msgstr ""
+msgstr "Dernière modification par ${user} le ${date}"
 
 #: src/zope/app/wiki/browser/skin/template.pt:64
-#, fuzzy
 msgid "Jump to:"
-msgstr "Garder jusqu'à:"
+msgstr "Aller à:"
 
 #: src/zope/app/wiki/browser/skin/template.pt:73
 msgid ""
 "User: ${user} (${login}) <div id=\"search\"> <a href=\"../@@search.html"
 "\">Search Wiki</a> </div>"
 msgstr ""
+"Utilisateur: ${user} (${login}) <div id=\"search\"> <a href=\"../@@search."
+"html\">Recherche Wiki</a> </div>"
 
 #: src/zope/app/wiki/browser/subscriptions.pt:12
 msgid "Current Subscriptions"
-msgstr ""
+msgstr "Abonnement courant"
 
 #: src/zope/app/wiki/browser/subscriptions.pt:25
 msgid "Enter new Users (separate by 'Return')"
-msgstr ""
+msgstr "Encoder des nouveaux Utilisateurs (séparés par 'Retour')"
 
 #: src/zope/app/wiki/browser/wiki_search.pt:9
 msgid "Wiki Search"
-msgstr ""
+msgstr "Rechercher dans Wiki"
 
 #: src/zope/app/wiki/browser/wiki_toc.pt:9
 msgid "Wiki Table of Contents"
-msgstr ""
+msgstr "Table des matières Wiki"
 
 #: src/zope/app/wiki/configure.zcml:126
 #: src/zope/app/wiki/browser/configure.zcml:69
 msgid "A Wiki Page"
-msgstr ""
+msgstr "Une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:126
 #: src/zope/app/wiki/browser/configure.zcml:69
 msgid "Wiki Page"
-msgstr ""
+msgstr "Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:14
 msgid "The Wiki Editor can create and edit wikis."
-msgstr ""
+msgstr "L'Editeur Wiki permet de créer et éditer wikis."
 
 #: src/zope/app/wiki/configure.zcml:14
-#, fuzzy
 msgid "Wiki Editor"
-msgstr "Formulaire d'édition"
+msgstr "Editeur Wiki"
 
 #: src/zope/app/wiki/configure.zcml:156
 msgid "A Wiki Page Comment"
-msgstr ""
+msgstr "Un Commentaire de Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:156
 msgid "Wiki Page Comment"
-msgstr ""
+msgstr "Commentaire de Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:19
 msgid "Wiki Administrator"
-msgstr ""
+msgstr "Administrateur Wiki"
 
 #: src/zope/app/wiki/configure.zcml:19
 msgid "The Wiki Admin can fully manage wiki pages."
-msgstr ""
+msgstr "L'Administrateur Wiki peut totalement gérer les pages wikis."
 
 #: src/zope/app/wiki/configure.zcml:24
 msgid "View Wiki Page"
-msgstr ""
+msgstr "Visualiser Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:24
 msgid "View a Wiki Page"
-msgstr ""
+msgstr "Visualiser une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:33
 msgid "Comment on Wiki Page"
-msgstr ""
+msgstr "Commentaire sur une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:33
 msgid "Make a comment on Wiki Page"
-msgstr ""
+msgstr "Commenter une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:42
 #: src/zope/app/wiki/browser/configure.zcml:60
 msgid "Add Wiki Page"
-msgstr ""
+msgstr "Ajouter une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:51
-#, fuzzy
 msgid "Edit Wiki Page"
-msgstr "Editer une page ZPT"
+msgstr "Editer une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:60
-#, fuzzy
 msgid "Delete Wiki Page"
-msgstr "Page dynamique"
+msgstr "Effacer une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:69
 msgid "Reparent Wiki Page"
-msgstr ""
+msgstr "Associer un parent à la Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:69
 msgid "Reparent a Wiki Page"
-msgstr ""
+msgstr "Associer un parent à une Page Wiki"
 
 #: src/zope/app/wiki/configure.zcml:9
 msgid "Wiki User"
-msgstr ""
+msgstr "Utilisateur Wiki"
 
 #: src/zope/app/wiki/configure.zcml:9
 msgid "Wiki visitors, which can only view and comment on wikis."
-msgstr ""
+msgstr "Visiteurs Wiki, qui ne peuvent que visualiser et commenter wikis."
 
 #: src/zope/app/wiki/configure.zcml:93
 msgid "Minimal Wiki Page Container implementation "
-msgstr ""
+msgstr "Implémentation minimum de Conteneur De Page Wiki"
 
 #: src/zope/app/wiki/interfaces.py:150
+#, fuzzy
 msgid "Previous Source Text"
-msgstr ""
+msgstr "Texte Source"
 
 #: src/zope/app/wiki/interfaces.py:151
+#, fuzzy
 msgid "Previous source text of the Wiki Page."
-msgstr ""
+msgstr "Texte source généré par la Page Wiki."
 
 #: src/zope/app/wiki/interfaces.py:40
-#, fuzzy
 msgid "Comment Title"
-msgstr "Ligne de commande:"
+msgstr "Titre de commentaire"
 
 #: src/zope/app/wiki/interfaces.py:46
 msgid "Renderable source text of the comment."
-msgstr ""
+msgstr "Texte source généré par le commentaire."
 
 #: src/zope/app/wiki/interfaces.py:72
 msgid "Renderable source text of the Wiki Page."
-msgstr ""
+msgstr "Texte source généré par la Page Wiki."
 
 #: src/zope/app/wiki/interfaces.py:96
 msgid "Wiki Page Parents"
-msgstr ""
+msgstr "Parents de la Page Wiki"
 
 #: src/zope/app/wiki/interfaces.py:97
 msgid "Parents of a Wiki"
-msgstr ""
+msgstr "Parents d'une Page Wiki"
 
 #: src/zope/app/wiki/interfaces.py:98
-#, fuzzy
 msgid "Parent Name"
-msgstr "Nom de l'argument"
+msgstr "Nom du parent"
 
 #: src/zope/app/wiki/interfaces.py:99
 msgid "Name of the parent wiki page."
-msgstr ""
+msgstr "Nom du parent de la Page Wiki"
 
 #: src/zope/app/workflow/browser/configure.zcml:6
 msgid ""
 "Workflow Process Definitions define a particular workflow       for an "
 "object."
 msgstr ""
+"Le Processus De Définitions De Gestion De Flux détermine la gestion de flux "
+"d'un objet."
 
 #: src/zope/app/workflow/browser/definition_index.pt:11
 msgid "Process Definition: ${pd_name}"
-msgstr ""
+msgstr "Définition du Processus: ${pd_name}"
 
 #: src/zope/app/workflow/browser/definition_index.pt:3
 #: src/zope/app/workflow/stateful/browser/definition_index.pt:3
 msgid "Process Definition"
-msgstr ""
+msgstr "Définition du Processus"
 
 #: src/zope/app/workflow/browser/importexport_index.pt:12
 msgid "Import / Export Process Definitions:"
-msgstr ""
+msgstr "Importer /Exporter Définitions de Processus:"
 
 #: src/zope/app/workflow/browser/importexport_index.pt:13
 msgid "Import:"
-msgstr ""
+msgstr "Importer:"
 
 #: src/zope/app/workflow/browser/importexport_index.pt:17
 #: src/zope/app/i18n/browser/exportimport.pt:37
 msgid "import-button"
-msgstr ""
+msgstr "Importer"
 
 #: src/zope/app/workflow/browser/importexport_index.pt:21
 msgid "Export: <a href=\"@@export.html\">save as file</a>"
-msgstr ""
+msgstr "Exportation: <a href=\"@@export.html\">sauver le fichier</a>"
 
 #: src/zope/app/workflow/browser/importexport_index.pt:6
 msgid "Import was successfull!"
-msgstr ""
+msgstr "Importation réussie!"
 
 #: src/zope/app/workflow/browser/instance_index.pt:19
 msgid "Status: ${status}"
-msgstr ""
+msgstr "Statut: ${status}"
 
 #: src/zope/app/workflow/browser/instance_index.pt:22
 msgid "Outgoing Transitions:"
-msgstr ""
+msgstr "Transactions Sortantes:"
 
 #: src/zope/app/workflow/browser/instance_index.pt:37
 msgid "Key"
-msgstr ""
+msgstr "Clé"
 
 # Default: "Create Workflow ProcessInstances"
 #: src/zope/app/workflow/configure.zcml:14
 msgid "create-workflow-processinstances-permission"
-msgstr ""
+msgstr "Créer des Instanciations De Processus De Gestion De Flux"
 
 # Default: "Use Workflow ProcessInstances"
 #: src/zope/app/workflow/configure.zcml:20
 msgid "use-workflow-processinstances-permission"
-msgstr ""
+msgstr "Utiliser des Instanciations De Processus"
 
 # Default: "Manage Workflow ProcessDefinitions"
 #: src/zope/app/workflow/configure.zcml:8
 msgid "manage-workflow-processdefinitions-permission"
-msgstr ""
+msgstr "Gérer des Définitions De Processus De Gestion De Flux"
 
 #: src/zope/app/workflow/stateful/browser/add.pt:8
 msgid "Add Content"
-msgstr "Ajouter du contenu"
+msgstr "Ajouter du Contenu"
 
 #: src/zope/app/workflow/stateful/browser/addstate.pt:3
 msgid "Add State"
-msgstr ""
+msgstr "Ajouter un Etat"
 
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:3
 msgid "Add Transition"
-msgstr ""
+msgstr "Ajouter une Transition"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:101
 msgid "Edit a Transition"
-msgstr ""
+msgstr "Editer une Transition"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:108
 msgid "Stateful Transition"
-msgstr ""
+msgstr "Transition"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:121
 msgid "Content Workflows Manager"
-msgstr ""
+msgstr "Gestionnaire De Contenu De Gestion De Flux"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:121
 msgid "An utility to manage content and workflow interaction."
 msgstr ""
+"Un utilitaire pour gérer le contenu and l'intéraction de gestion de flux."
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:129
 msgid "Content/Process Registry"
-msgstr ""
+msgstr "Register Contenu/Processus"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:144
 #: src/zope/app/workflow/browser/configure.zcml:6
 msgid "Workflows"
-msgstr ""
+msgstr "Gestion De Flux"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:21
 msgid "Relevant Data Schema"
-msgstr ""
+msgstr "Schéma De Donnés approprié"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:33
 msgid "Manage States"
-msgstr ""
+msgstr "Gérer  les Etats"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:35
 msgid "Manage Transitions"
-msgstr ""
+msgstr "Gérer les Transitions"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:42
 msgid "State Items"
-msgstr ""
+msgstr "Eléments D'Etat"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:43
 msgid "Transition Items"
-msgstr ""
+msgstr "Elément De Transition"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:7
 msgid "A stateful workflow process definition"
-msgstr ""
+msgstr "La définition d'un processus de Gestion De Flux"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:7
 msgid "Stateful Process Definition"
-msgstr ""
+msgstr "La définition d'un processus"
 
 #: src/zope/app/workflow/stateful/browser/configure.zcml:72
 msgid "Stateful State"
-msgstr ""
+msgstr "Etat"
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow.py:87
 msgid "Mapping(s) added."
-msgstr ""
+msgstr "Traçage(s) ajouté(s)."
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow.py:95
 msgid "Mapping(s) removed."
-msgstr ""
+msgstr "Traçage(s) supprimé(s)."
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:15
 msgid ""
 "This screen let's you specify which content types (by interface) can receive "
 "which workflows (process definitions)."
 msgstr ""
+"Cet écran vous permet de spécifier quelles types de contenu (par Interface) "
+"peut recevoir quelle Gestions De Flux (Definitions de processus)."
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:20
 msgid "Available Mappings"
-msgstr ""
+msgstr "Traçage(s) disponible(s)"
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:48
 msgid "switch-view-button"
-msgstr ""
+msgstr "Permuter vue"
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:50
 msgid "remove-mappings-button"
-msgstr ""
+msgstr "Supprimer Traçages"
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:55
 msgid "Add new Mapping"
-msgstr ""
+msgstr "Ajouter un Traçage"
 
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:67
 msgid "add-mappings-button"
-msgstr ""
+msgstr "Ajouter Traçage"
 
 #: src/zope/app/workflow/stateful/browser/definition_edit.pt:16
 msgid "Set Workflow-Relevant Data Schema"
-msgstr ""
+msgstr "Définir La Gestion De Flux-Appropriée De Schéma De Données"
 
 #: src/zope/app/workflow/stateful/browser/definition_edit.pt:26
-#, fuzzy
 msgid "set-schema-button"
-msgstr "Enregistrer"
+msgstr "Définir le schéma"
 
 #: src/zope/app/workflow/stateful/browser/definition_edit.pt:3
 #: src/zope/app/workflow/stateful/browser/contentworkflow_registry.pt:3
 msgid "Process Definition <-> Content Type Registry"
-msgstr ""
+msgstr "Définition De Processus <-> Registre De Type De Contenu"
 
 #: src/zope/app/workflow/stateful/browser/definition_index.pt:13
 msgid "Process Definition: ${name}"
-msgstr ""
+msgstr "Définition De Processus: ${name}"
 
 #: src/zope/app/workflow/stateful/browser/definition_states.pt:10
 msgid "States"
-msgstr ""
+msgstr "Etats"
 
 #: src/zope/app/workflow/stateful/browser/definition_states.pt:3
 msgid "Process Definition States"
-msgstr ""
+msgstr "Etats De Processus De Définition"
 
 #: src/zope/app/workflow/stateful/browser/definition_transitions.pt:10
 msgid "Transitions"
-msgstr ""
+msgstr "Transitions"
 
 #: src/zope/app/workflow/stateful/browser/definition_transitions.pt:3
 msgid "Process Definition Transitions"
-msgstr ""
+msgstr "Transitions De Processus De Définition"
 
 #: src/zope/app/workflow/stateful/browser/instance.py:150
 msgid "Updated Workflow Data."
-msgstr ""
+msgstr "Données De Gestion De Flux Actualisées."
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:16
 msgid "Workflow:"
-msgstr ""
+msgstr "Gestion De Flux:"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:22
 msgid "choose-button"
-msgstr ""
+msgstr "Sélectionner"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:28
 msgid "Workflow: ${wf_title}"
-msgstr ""
+msgstr "Gestion De Flux: ${wf_title}"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:42
 msgid "Current Status:"
-msgstr ""
+msgstr "Statut Actuel:"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:45
 msgid "Possible State Changes:"
-msgstr ""
+msgstr "Modifications Possibles D'Etat:"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:5
 msgid "Workflow Options"
-msgstr ""
+msgstr "Options De Gestion De Flux"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:57
 msgid "make-transition-button"
-msgstr ""
+msgstr "Effectuer une transition"
 
 #: src/zope/app/workflow/stateful/browser/instance_manage.pt:62
 msgid "Workflow-relevant Data"
-msgstr ""
+msgstr "Données appropriées à la Gestion De Flux"
 
 #: src/zope/app/workflow/stateful/interfaces.py:100
+#, fuzzy
 msgid "Name of the source state."
-msgstr ""
+msgstr "Nom du parent de la Page Wiki"
 
 #: src/zope/app/workflow/stateful/interfaces.py:105
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:29
 msgid "Destination State"
-msgstr ""
+msgstr "Etat De Destination"
 
 #: src/zope/app/workflow/stateful/interfaces.py:106
+#, fuzzy
 msgid "Name of the destination state."
-msgstr ""
+msgstr "Nom du parent de la Page Wiki"
 
 #: src/zope/app/workflow/stateful/interfaces.py:111
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:39
 msgid "Condition"
-msgstr ""
+msgstr "Condition"
 
 #: src/zope/app/workflow/stateful/interfaces.py:112
 msgid ""
@@ -4736,7 +4857,7 @@
 #: src/zope/app/workflow/stateful/interfaces.py:117
 #, fuzzy
 msgid "Script"
-msgstr "Souscrire"
+msgstr "Script SQL"
 
 #: src/zope/app/workflow/stateful/interfaces.py:118
 msgid ""
@@ -4745,8 +4866,9 @@
 msgstr ""
 
 #: src/zope/app/workflow/stateful/interfaces.py:123
+#, fuzzy
 msgid "The permission needed to fire the Transition."
-msgstr ""
+msgstr "La permission nécessaire à l'utilisation du composant"
 
 #: src/zope/app/workflow/stateful/interfaces.py:130
 msgid "Trigger Mode"
@@ -4757,98 +4879,97 @@
 msgstr ""
 
 #: src/zope/app/workflow/stateful/interfaces.py:147
+#, fuzzy
 msgid "Workflow-Relevant Data Schema"
-msgstr ""
+msgstr "Définir La Gestion De Flux-Appropriée De Schéma De Données"
 
 #: src/zope/app/workflow/stateful/interfaces.py:148
+#, fuzzy
 msgid ""
 "Specifies the schema that characterizes the workflow relevant data of a "
 "process instance, found in pd.data."
-msgstr ""
+msgstr "Spécifier le Schéma qui caractérise le document."
 
 #: src/zope/app/workflow/stateful/interfaces.py:99
 #: src/zope/app/workflow/stateful/browser/addtransition.pt:19
 msgid "Source State"
-msgstr ""
+msgstr "Etat D'Origine"
 
 #: src/zope/app/zopetop/widget_macros.pt:13
 msgid "Logged in as ${user_title}"
-msgstr ""
+msgstr "Connecté comme ${user_title}"
 
 #: src/zope/app/zopetop/widget_macros.pt:132
 msgid "Views"
-msgstr ""
+msgstr "Vues"
 
 #: src/zope/app/zopetop/widget_macros.pt:149
 msgid "Actions"
-msgstr ""
+msgstr "Actions"
 
 #: src/zope/app/zopetop/widget_macros.pt:176
 msgid "Location:"
-msgstr ""
+msgstr "Emplacement:"
 
 #: src/zope/app/zopetop/widget_macros.pt:26
 msgid "Common Tasks"
-msgstr ""
+msgstr "Tâches communes"
 
 #: src/zope/app/zopetop/widget_macros.pt:37
 msgid "user accounts"
-msgstr ""
+msgstr "comptes d'utilisateur"
 
 #: src/zope/app/zopetop/widget_macros.pt:40
 msgid "User Accounts"
-msgstr ""
+msgstr "Comptes D'Utilisateur"
 
 #: src/zope/app/zopetop/widget_macros.pt:43
 msgid "control panels"
-msgstr ""
+msgstr "Panneaux De Contrôle"
 
 #: src/zope/app/zopetop/widget_macros.pt:46
 msgid "Control Panels"
-msgstr ""
+msgstr "Panneaux De Contrôle"
 
 #: src/zope/app/zopetop/widget_macros.pt:49
 msgid "system security"
-msgstr ""
+msgstr "sécurité du système"
 
 #: src/zope/app/zopetop/widget_macros.pt:52
 msgid "System Security"
-msgstr ""
+msgstr "Sécurité Du Système"
 
 #: src/zope/app/zopetop/widget_macros.pt:55
 msgid "add more"
-msgstr ""
+msgstr "ajouter suite"
 
 #: src/zope/app/zopetop/widget_macros.pt:58
 msgid "Add More"
-msgstr ""
+msgstr "Ajouter suite"
 
 #: src/zope/app/zopetop/widget_macros.pt:66
 msgid "Root Folder"
-msgstr ""
+msgstr "Dossier Racine"
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr "Page dynamique"
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
-#, fuzzy
 msgid "Add a ZPT Page"
-msgstr "Editer une page ZPT"
+msgstr "Ajouter une Page ZPT"
 
 #: src/zope/app/zptpage/browser/configure.zcml:39
 msgid "Edit a ZPT page"
-msgstr "Editer une page ZPT"
+msgstr "Editer une Page ZPT"
 
 #: src/zope/app/zptpage/browser/configure.zcml:49
 msgid "Inline Code"
-msgstr ""
+msgstr "Code En Ligne"
 
 #: src/zope/app/zptpage/browser/inlinecode.pt:28
 msgid ""
 "This screen allows you to activate Inline Code Evaluation. This means that "
 "you can say ${code-example-1} or ${code-example-2}"
 msgstr ""
+"Cet écran vous permet d'activer l'Evaluation Du Code En Ligne. C'est-à-dire "
+"que vous pouvez dire ${code-example-1} ou ${code-example-2}"
 
 #: src/zope/app/zptpage/browser/inlinecode.pt:34
 msgid ""
@@ -4858,139 +4979,145 @@
 "audience for Zope 3. Scripters are used to inline code from other "
 "technologies like PHP and it fits their brain, which is very important."
 msgstr ""
+"Beaucoup de développeurs de Zope 3 considèrent que le code en ligne n'est "
+"pas une bonne chose puisqu'en général il ne suit pas le concept de Formats "
+"De Page ou de Zope 3. Cependant, les développeurs d'application et de "
+"serveur d'application ne sont pas les seules parties de Zope 3. Les "
+"développeurs de scriptes sont habitués au code en ligne.  Ils proviennent "
+"d'autres technologies telle : PHP et cela leur convient, ce qui est très "
+"important."
 
 #: src/zope/app/zptpage/browser/inlinecode.pt:49
 #: src/zope/app/schema/browser/schema_edit.pt:20
 #: src/zope/app/pythonpage/edit.pt:23 src/zope/app/form/browser/add.pt:22
 #: src/zope/app/form/browser/edit.pt:23
 msgid "There are ${num_errors} input errors."
-msgstr "Il y a ${num_errors} erreurs d'encodage"
+msgstr "Il y a ${num_errors} erreurs d'encodage."
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
-msgstr ""
+msgstr "Page ZPT"
 
 #: src/zope/app/zptpage/configure.zcml:12
 #: src/zope/app/zptpage/browser/configure.zcml:23
 msgid "A simple, content-based Page Template"
-msgstr ""
+msgstr "Un simple Page Formatée de type contenu"
 
 #: src/zope/app/zptpage/interfaces.py:37
 msgid "The source of the page template."
-msgstr ""
+msgstr "La source de la Page Formatée."
 
 #: src/zope/app/zptpage/interfaces.py:41
 msgid "Expand macros"
-msgstr ""
+msgstr "Etendre Macros"
 
 #: src/zope/app/zptpage/interfaces.py:42
 msgid "Expand Macros so that they all are shown in the code."
-msgstr ""
+msgstr "Etendre des Macros afin qu'elles soient toutes affichées dans le code."
 
 #: src/zope/app/zptpage/interfaces.py:48
 msgid "Evaluate Inline Code"
-msgstr ""
+msgstr "Evaluer Code En Ligne"
 
 #: src/zope/app/zptpage/interfaces.py:49
 msgid ""
 "Evaluate code snippets in TAL. We usually discourage people from using this "
 "feature."
 msgstr ""
+"Evaluer des portions de code en TAL.  Généralement nous décourageons l'usage "
+"de cette fonction."
 
 #: src/zope/app/zptpage/zptpage.py:105
 msgid "1 line"
-msgstr ""
+msgstr "1 ligne"
 
 #: src/zope/app/zptpage/zptpage.py:106
 msgid "${lines} lines"
-msgstr ""
+msgstr "${lines} lignes"
 
 #: src/zope/exceptions/unauthorized.py:69
 #: src/zope/exceptions/unauthorized.py:72
 msgid "You are not allowed to access ${name} in this context"
-msgstr ""
+msgstr "Vous ne pouvez accéder à ${name} dans ce contexte"
 
 #: src/zope/exceptions/unauthorized.py:74
-#, fuzzy
 msgid "You are not authorized"
-msgstr "Pas autorisé"
+msgstr "Vous n'êtes pas autorisé"
 
 #: src/zope/exceptions/unauthorized.py:84
 msgid "a particular ${object}"
-msgstr ""
+msgstr "un ${object} particulier"
 
 #: src/zope/schema/_bootstrapinterfaces.py:43
-#, fuzzy
 msgid "Required input is missing."
-msgstr "L'argument 'name' requis manque"
+msgstr "L'argument requis n'est pas disponible."
 
 #: src/zope/schema/_bootstrapinterfaces.py:46
 msgid "Object is of wrong type."
-msgstr ""
+msgstr "L'Objet n'est pas du type correct."
 
 #: src/zope/schema/_bootstrapinterfaces.py:49
 msgid "Value is too big"
-msgstr ""
+msgstr "La valeur est trop grande"
 
 #: src/zope/schema/_bootstrapinterfaces.py:52
 msgid "Value is too small"
-msgstr ""
+msgstr "La valeur est trop petite"
 
 #: src/zope/schema/_bootstrapinterfaces.py:55
 msgid "Value is too long"
-msgstr ""
+msgstr "La valeur est trop longue"
 
 #: src/zope/schema/_bootstrapinterfaces.py:58
 msgid "Value is too short"
-msgstr ""
+msgstr "La valeur est trop courte"
 
 #: src/zope/schema/_bootstrapinterfaces.py:61
 msgid "Invalid value"
-msgstr ""
+msgstr "Valeur invalide"
 
 #: src/zope/schema/_bootstrapinterfaces.py:64
-#, fuzzy
 msgid "Constraint not satisfied"
-msgstr "Contenu modifié"
+msgstr "Contrainte non satisfaite"
 
 #: src/zope/schema/_bootstrapinterfaces.py:67
 msgid "Not a container"
-msgstr ""
+msgstr "Pas un Conteneur"
 
 #: src/zope/schema/_bootstrapinterfaces.py:70
 msgid "Not an iterator"
-msgstr ""
+msgstr "Pas un Itérateur"
 
 #: src/zope/schema/interfaces.py:101
 msgid "A short summary or label"
-msgstr ""
+msgstr "Un court résumé ou label"
 
 #: src/zope/schema/interfaces.py:108
 msgid "A description of the field"
-msgstr ""
+msgstr "Une description du champ"
 
 #: src/zope/schema/interfaces.py:114
 #: src/zope/app/schema/browser/schema_edit.pt:39
 msgid "Required"
-msgstr ""
+msgstr "Requis"
 
 #: src/zope/schema/interfaces.py:116
 msgid "Tells whether a field requires its value to exist."
-msgstr ""
+msgstr "Spécifie si un champ nécessite sa valeur afin d'exister."
 
 #: src/zope/schema/interfaces.py:120
 msgid "Read Only"
-msgstr ""
+msgstr "Lecture seule"
 
 #: src/zope/schema/interfaces.py:121
 msgid "If true, the field's value cannot be changed."
-msgstr ""
+msgstr "Si oui, la valeur du champ ne peut-être modifiée."
 
 #: src/zope/schema/interfaces.py:126 src/zope/schema/interfaces.py:266
 #: src/zope/schema/interfaces.py:315
-#, fuzzy
 msgid "Default Value"
-msgstr "Langue par défaut"
+msgstr "Valeur par défaut"
 
 #: src/zope/schema/interfaces.py:127 src/zope/schema/interfaces.py:267
 #: src/zope/schema/interfaces.py:316
@@ -4998,21 +5125,24 @@
 "The field default value may be None or a legal\n"
 "                        field value"
 msgstr ""
+"La valeur par défaut du champ peut-être Aucun ou une \n"
+"                        valeur de champ valide"
 
 #: src/zope/schema/interfaces.py:132
-#, fuzzy
 msgid "Missing Value"
-msgstr "Misses"
+msgstr "Valeur manquante"
 
 #: src/zope/schema/interfaces.py:133
 msgid ""
 "If input for this Field is missing, and that's ok,\n"
 "                          then this is the value to use"
 msgstr ""
+"Si le contenu de ce Champ est manquant, et que s'est correct,\n"
+"                          alors ceci est la valeur à utiliser"
 
 #: src/zope/schema/interfaces.py:138
 msgid "Field Order"
-msgstr ""
+msgstr "Champ de type Ordonné"
 
 #: src/zope/schema/interfaces.py:139
 msgid ""
@@ -5024,18 +5154,26 @@
 "        (Fields in separate threads could have the same order.)\n"
 "        "
 msgstr ""
+"        L'attribut d'ordre peut-être utilisé afin de déterminer l'ordre "
+"dans\n"
+"        lequel les Champs d'un Schéma sont définis.  Si un Champ est créé\n"
+"        après un autre (dans le même fil), sont ordre sera\n"
+"        plus grand.\n"
+"\n"
+"        (Des Champs dans des fils séparés peuvent avoir le même ordre.)\n"
+"        "
 
 #: src/zope/schema/interfaces.py:220 src/zope/schema/interfaces.py:303
 msgid "Start of the range"
-msgstr ""
+msgstr "Début d'une série"
 
 #: src/zope/schema/interfaces.py:226 src/zope/schema/interfaces.py:309
 msgid "End of the range (excluding the value itself)"
-msgstr ""
+msgstr "Fin de la série (à l'exclusion de la valeur elle-même)"
 
 #: src/zope/schema/interfaces.py:236
 msgid "Minimum length"
-msgstr ""
+msgstr "Longueur minimum"
 
 #: src/zope/schema/interfaces.py:237
 msgid ""
@@ -5045,11 +5183,17 @@
 "        no minimum.\n"
 "        "
 msgstr ""
+"        Une valeur après traitement des espaces blancs (whitespace) ne peut "
+"pas avoir moins de\n"
+"        min_longueur caractères (dans le cas d'un type chaîne) ou éléments \n"
+"(        pour tout autre type de séquence). Si min_longueur vaut Aucun, il "
+"n'y a pas\n"
+"        de minimum.\n"
+"        "
 
 #: src/zope/schema/interfaces.py:248
-#, fuzzy
 msgid "Maximum length"
-msgstr "Nombre maximum d'entrées dans le cache"
+msgstr "Longueur maximum"
 
 #: src/zope/schema/interfaces.py:249
 msgid ""
@@ -5058,37 +5202,44 @@
 "        elements (if another sequence type). If max_length is\n"
 "        None, there is no maximum."
 msgstr ""
+"        Une valeur après traitement des espaces blancs (whitespace) ne peut "
+"pas avoir plus de\n"
+"        ou exactement max_longueur caractères (dans le cas d'un type chaîne) "
+"ou \n"
+"        éléments (dans le cas d'un autre type de séquence). Si max_longueur "
+"vaut\n"
+"        Aucun, il n'y a pas de maximum."
 
 #: src/zope/schema/interfaces.py:38
 msgid "Wrong contained type"
-msgstr ""
+msgstr "Type de contenu non valide"
 
 #: src/zope/schema/interfaces.py:384
-#, fuzzy
 msgid "Value Type"
-msgstr "Valeur"
+msgstr "Type de valeur"
 
 #: src/zope/schema/interfaces.py:385
 msgid ""
 "Field value items must conform to the given type, expressed via a Field."
 msgstr ""
+"La valeur des champs des éléments doit être conforme au type spécifié dans "
+"un Champ."
 
 #: src/zope/schema/interfaces.py:389
-#, fuzzy
 msgid "Unique Members"
-msgstr "Membre du site"
+msgstr "Membres uniques"
 
 #: src/zope/schema/interfaces.py:390
 msgid "Specifies whether the members of the collection must be unique."
-msgstr ""
+msgstr "Spécifié si les membres de la collection doivent être uniques."
 
 #: src/zope/schema/interfaces.py:41
 msgid "One or more entries of sequence are not unique."
-msgstr ""
+msgstr "Une ou plusieurs entrées de séquence ne sont pas uniques."
 
 #: src/zope/schema/interfaces.py:422
 msgid "The Interface that defines the Fields comprising the Object."
-msgstr ""
+msgstr "L'Interface qui définit les Champs comportant l'Objet."
 
 #: src/zope/schema/interfaces.py:432
 msgid ""
@@ -5096,6 +5247,9 @@
 "           via a Field.\n"
 "        "
 msgstr ""
+"Champs de type Clé doivent être conformes au type donné défini\n"
+"           via un Champ.\n"
+"        "
 
 #: src/zope/schema/interfaces.py:437
 msgid ""
@@ -5103,89 +5257,288 @@
 "           via a Field.\n"
 "        "
 msgstr ""
+"Les valeurs de Champ doivent être conforme au type défini\n"
+"           via un Champ.\n"
+"        "
 
 #: src/zope/schema/interfaces.py:44
 msgid "Schema not fully implemented"
-msgstr ""
+msgstr "Le Schéma n'est pas implémenté complètement"
 
 #: src/zope/schema/interfaces.py:47
 msgid "Schema not provided"
-msgstr ""
+msgstr "Schéma non fourni"
 
 #: src/zope/schema/interfaces.py:50
 msgid "The specified URI is not valid."
-msgstr ""
+msgstr "L'URI specifiée est invalide."
 
 #: src/zope/schema/interfaces.py:53
 msgid "The specified id is not valid."
-msgstr ""
+msgstr "L'identificateur spécifié est invalide."
 
 #: src/zope/schema/interfaces.py:56
 msgid "The specified dotted name is not valid."
-msgstr ""
+msgstr "Le nom web spécifié n'est pas valide."
 
 #: src/zope/schema/interfaces.py:59
-#, fuzzy
 msgid "The field is not bound."
-msgstr "Ce champ est requis"
+msgstr "Le champ n'est pas lié."
 
 #: src/zope/schema/tests/test_objectfield.py:38
 msgid "Foo"
-msgstr ""
+msgstr "Vide"
 
 #: src/zope/schema/tests/test_objectfield.py:39
-#, fuzzy
 msgid "Foo description"
-msgstr "Souscrire"
+msgstr "Description vide"
 
 #: src/zope/schema/tests/test_objectfield.py:44
 msgid "Bar"
-msgstr ""
+msgstr "Barre"
 
 #: src/zope/schema/tests/test_objectfield.py:45
-#, fuzzy
 msgid "Bar description"
-msgstr "Souscrire"
+msgstr "Description de barre"
 
-#, fuzzy
 #~ msgid "Translation Domain Control"
-#~ msgstr "Controleur du serveur Zope Stub"
+#~ msgstr "Contrôleur De Domaine De Traduction"
 
-#, fuzzy
 #~ msgid "ZGlobal Transaction Service Controller"
-#~ msgstr "Controleur du serveur Zope Stub"
+#~ msgstr "Transaction ZGlobal Contrôleur De Service"
 
 #~ msgid "Catalog is currently <strong>subscribed</strong> to the object hub."
-#~ msgstr "Le catalogue est actuellement <strong>inscrit</strong> au hub objet"
+#~ msgstr ""
+#~ "Le catalogue est actuellement <strong>enregistré</strong> par l'objet "
+#~ "Concentrateur."
 
 #~ msgid "(and reindex all objects, if checked)"
-#~ msgstr "(si sélectionné, réindexe tous les objets)"
+#~ msgstr "(si sélectionné, réindexer tous les objets)"
 
 #~ msgid "Advanced Catalog Thingies"
-#~ msgstr "Paramètres avancés du catalogue"
+#~ msgstr "Paramètres Avancés De Catalogue"
 
-#, fuzzy
 #~ msgid "Site Catalog"
-#~ msgstr "Catalogue"
+#~ msgstr "Catalogue De Site"
 
 #~ msgid "Indexes"
 #~ msgstr "Index"
 
 #~ msgid "Add Index"
-#~ msgstr "Ajouter un index"
+#~ msgstr "Ajouter un Index"
 
+#~ msgid "A full text index"
+#~ msgstr "Un index de type texte intégral"
+
+#~ msgid "Text Index"
+#~ msgstr "Un Index De Type Text"
+
+#~ msgid "An index of a specific field"
+#~ msgstr "L'index d'un champ particulier"
+
+#~ msgid "Field Index"
+#~ msgstr "Index De Type Champ"
+
+#~ msgid "A keyword index of a specific field"
+#~ msgstr "Un Index De Type Mots-Clés d'un champ particulier"
+
 #~ msgid "Keyword Index"
-#~ msgstr "Index à mots-clés"
+#~ msgstr "Index De Type Mots-Clés"
 
 #~ msgid "Catalog"
 #~ msgstr "Catalogue"
 
+#~ msgid "A Catalog allows indexing and searching of objects"
+#~ msgstr ""
+#~ "Un Catalogue permet d'indexer et de faire des recherche sur des objets"
+
 #~ msgid "Advanced"
-#~ msgstr "Avancé"
+#~ msgstr "Avancé"
 
-#, fuzzy
+#~ msgid "Event Service"
+#~ msgstr "Service D'Evénement"
+
+#~ msgid "An event service. One of these in the root is usually enough"
+#~ msgstr ""
+#~ "Un Service D'Evénement.  Un seul de ceux-ci est généralement nécessaire "
+#~ "dans la racine"
+
+#~ msgid "This is an event service."
+#~ msgstr "Ceci est un Service D'Evénement."
+
+#~ msgid "OK"
+#~ msgstr "OK"
+
 #~ msgid "Missing"
-#~ msgstr "Misses"
+#~ msgstr "Manquant"
 
+#~ msgid ""
+#~ "An object hub, for cataloging, unique object ids, and                    "
+#~ "more: use sparingly"
+#~ msgstr ""
+#~ "Un objet Concentrateur, pour cataloguer, des identifiants uniques "
+#~ "d'objet, et                    autres: à utiliser avec précaution"
+
+#~ msgid "HubIds Service"
+#~ msgstr "Service D'Identificateurs De Concentrateur"
+
+#~ msgid "Registration subscriber"
+#~ msgstr "Enregistrement d'abonné"
+
+#~ msgid "An event subscriber that registers content with the objecthub"
+#~ msgstr ""
+#~ "Un enregistrement d'événement qui stocke le contenu d'un objet "
+#~ "Concentrateur"
+
+#~ msgid "Control"
+#~ msgstr "Contrôleur"
+
+#~ msgid "This is an object hub. There are ${num_objects} objects registered."
+#~ msgstr ""
+#~ "Ceci est un objet Concentrateur. Il y a ${num_objects} objets enregistrés."
+
+#~ msgid "View Object Registrations"
+#~ msgstr "Vue Des Enregistrements D'Objet"
+
+#~ msgid "Hide Object Registrations"
+#~ msgstr "Ne pas afficher les Enregistrements D'Objet"
+
+#~ msgid "Object ID"
+#~ msgstr "Identificateur D'Objet"
+
+#~ msgid "Unregister Missing Objects"
+#~ msgstr "Ne pas enregistrer Des Objets Manquants"
+
+#~ msgid "${missing_num} object(s) unregistered."
+#~ msgstr "${missing_num} objet(s) manquant(s)."
+
+#~ msgid "Successfully subscribed."
+#~ msgstr "Abonnement validé."
+
+#~ msgid "Successfully unsubscribed."
+#~ msgstr "Désabonnement validé."
+
+#~ msgid "Registration done."
+#~ msgstr "Enregistrement effectué."
+
 #~ msgid "subscribe-button"
 #~ msgstr "Souscrire"
+
+#~ msgid "Register Existing Objects"
+#~ msgstr "Enregistrer Des Objets Existants."
+
+#~ msgid "NEXT BATCH --&gt;"
+#~ msgstr "GROUPE SUIVANT --&gt;"
+
+#~ msgid "FieldIndex"
+#~ msgstr "Index De Type Champ"
+
+#~ msgid ""
+#~ "This page lets you control a field index, which is used to provide a "
+#~ "single field searching facility. The search box here is only for "
+#~ "debugging. Subscription status: A \"subscribed\" index will update itself "
+#~ "whenever objects are added, deleted or modified; an \"unsubscribed\" "
+#~ "index will retain the indexing information but not update itself further."
+#~ msgstr ""
+#~ "Cette page vous permet de contrôler un Index de Champ, qui est utilisé "
+#~ "pour effectuer des recherches sur un Champ simple.  La boîte de recherche "
+#~ "n'est ici utilisée que pour le débogage. Statut d'enregistrement: Un "
+#~ "\"subscribed\" index will update itself whenever objects are added, "
+#~ "deleted or modified; an \"unsubscribed\" index will retain the indexing "
+#~ "information but not update itself further."
+
+#~ msgid "FieldIndex Control Page"
+#~ msgstr "Page De Contrôle D'Index De Type Champ"
+
+#~ msgid "Adapting objects to: ${iface_name}"
+#~ msgstr "Adapter des objets à : ${iface_name}"
+
+#~ msgid "Indexing on attribute: ${field_name}"
+#~ msgstr "Indexation sur l'attribut : ${field_name}"
+
+#~ msgid "Documents: ${doc_count}"
+#~ msgstr "Documents: ${doc_count}"
+
+#~ msgid "No hits. Please try another query."
+#~ msgstr "Aucun résultat. Veuillez essayer une autre requête."
+
+#~ msgid "Hits ${first} - ${last} of ${total}"
+#~ msgstr "Trouvés ${first} - ${last} de ${total}"
+
+#~ msgid "title=${title}; url=${title}"
+#~ msgstr "titre=${title}; url=${title}"
+
+#~ msgid "&lt;-- PREVIOUS BATCH"
+#~ msgstr "&lt;-- GROUPE PRECEDENT"
+
+#~ msgid "TextIndex"
+#~ msgstr "Index De Type Texte"
+
+#~ msgid ""
+#~ "This page lets you control a text index, which is used to provide a full-"
+#~ "text searching facility. The search box here is only for debugging. "
+#~ "Subscription status: A \"subscribed\" index will update itself whenever "
+#~ "objects are added, deleted or modified; an \"unsubscribed\" index will "
+#~ "retain the indexing information but not update itself further."
+#~ msgstr ""
+#~ "Cette page vous permet de contrôler un Index de Champ, qui est utilisé "
+#~ "afin d'effectuer des recherches dans l'ensemble du texte.  La boîte de "
+#~ "recherche n'est utilisée ici que pour le débogage.  Statut "
+#~ "d'enregistrement: Un index \"enregistré\" se mettra à jour "
+#~ "automatiquement lorsque des objets seront ajoutés, supprimés ou modifiés; "
+#~ "un index \"non enregistré\" conservera les informations d'indexation sans "
+#~ "se mettre à jour."
+
+#~ msgid "TextIndex Control Page"
+#~ msgstr "Page De Contrôle D'Index De Type Texte"
+
+#~ msgid "Words: ${word_count}"
+#~ msgstr "Mots: ${word_count}"
+
+#~ msgid "title=${title}; url=${url}; score=${score}"
+#~ msgstr "titre=${title}; url=${url}; score=${score}"
+
+#~ msgid ""
+#~ "You are not in the ++help++ namespace.<br> Add /++help++/ after your host "
+#~ "address in the URL.<br> And use the own help skin like:<br> ../++help++/+"
+#~ "+skin++Onlinehelp/"
+#~ msgstr ""
+#~ "Vous ne vous situez pas dans l'espace de nom ++help++.<br> Ajouter /++help"
+#~ "++/ à la suite de l'adresse de l'hôte dans l'URL.<br> Et utilisé le thème "
+#~ "propre à l'aide comme:<br> ../++help++/++skin++Onlinehelp/"
+
+#~ msgid "Close this window"
+#~ msgstr "Fermer cette fenêtre"
+
+#~ msgid "Blur"
+#~ msgstr "Flou"
+
+#~ msgid "view 800x600"
+#~ msgstr "vue 800x600"
+
+#~ msgid "view 1024x768"
+#~ msgstr "vue 1024x768"
+
+#~ msgid "Print"
+#~ msgstr "Imprimer"
+
+#~ msgid "Z3 UI Onlinehelp"
+#~ msgstr "IU Z3 Aide En Ligne"
+
+#~ msgid "Subscription control"
+#~ msgstr "Contrôle de la l'abbonnement"
+
+#~ msgid "Subscription state: ON"
+#~ msgstr "Etat de l'abonnement: EN SERVICE"
+
+#~ msgid "unsubscribe-button"
+#~ msgstr "Désabonner"
+
+#~ msgid "Subscription state: OFF"
+#~ msgstr "Etat de l'abonnement: HORS SERVICE"
+
+#~ msgid "Registration \"Service\" Control Page"
+#~ msgstr "Enregistrement \"Service\" Page De Contrôle"
+
+#~ msgid "Templated Page"
+#~ msgstr "Page Formatée"

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/it/LC_MESSAGES/zope.po
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/it/LC_MESSAGES/zope.po	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/it/LC_MESSAGES/zope.po	2004-06-12 07:58:27 UTC (rev 25371)
@@ -5178,10 +5178,6 @@
 msgid "Root Folder"
 msgstr "Cartella radice"
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr ""
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
 msgid "Add a ZPT Page"
 msgstr "Aggiungi una ZPT"
@@ -5224,6 +5220,7 @@
 msgid "There are ${num_errors} input errors."
 msgstr "Ci sono ${num_errors} errori di inserimento."
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
 msgstr "Pagina ZPT"

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/pt_BR/LC_MESSAGES/zope.po
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/pt_BR/LC_MESSAGES/zope.po	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/pt_BR/LC_MESSAGES/zope.po	2004-06-12 07:58:27 UTC (rev 25371)
@@ -4806,10 +4806,6 @@
 msgid "Root Folder"
 msgstr ""
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr ""
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
 #, fuzzy
 msgid "Add a ZPT Page"
@@ -4845,6 +4841,7 @@
 msgid "There are ${num_errors} input errors."
 msgstr ""
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
 msgstr ""

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/ru/LC_MESSAGES/zope.po
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/ru/LC_MESSAGES/zope.po	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/ru/LC_MESSAGES/zope.po	2004-06-12 07:58:27 UTC (rev 25371)
@@ -4953,10 +4953,6 @@
 msgid "Root Folder"
 msgstr "Корневая папка"
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr "Шаблон страницы"
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
 msgid "Add a ZPT Page"
 msgstr "Добавить шаблон страницы"
@@ -4998,6 +4994,7 @@
 msgid "There are ${num_errors} input errors."
 msgstr "Обнаружено ошибок при вводе: ${num_errors}"
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
 msgstr "Шаблон страницы"

Modified: Zope3/branches/jim-index/src/zope/app/translation_files/zope.pot
===================================================================
--- Zope3/branches/jim-index/src/zope/app/translation_files/zope.pot	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/translation_files/zope.pot	2004-06-12 07:58:27 UTC (rev 25371)
@@ -4740,10 +4740,6 @@
 msgid "Root Folder"
 msgstr ""
 
-#: src/zope/app/zptpage/browser/configure.zcml:23
-msgid "Templated Page"
-msgstr ""
-
 #: src/zope/app/zptpage/browser/configure.zcml:31
 msgid "Add a ZPT Page"
 msgstr ""
@@ -4773,6 +4769,7 @@
 msgid "There are ${num_errors} input errors."
 msgstr ""
 
+#: src/zope/app/zptpage/browser/configure.zcml:23
 #: src/zope/app/zptpage/configure.zcml:12
 msgid "ZPT Page"
 msgstr ""

Modified: Zope3/branches/jim-index/src/zope/app/traversing/configure.zcml
===================================================================
--- Zope3/branches/jim-index/src/zope/app/traversing/configure.zcml	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/traversing/configure.zcml	2004-06-12 07:58:27 UTC (rev 25371)
@@ -97,4 +97,10 @@
     factory="zope.app.traversing.namespace.vh" 
     />
 
+<view
+    name="debug" type="*"
+    provides="zope.app.traversing.interfaces.ITraversable" for="*"
+    factory="zope.app.traversing.namespace.debug" 
+    />
+
 </configure>

Modified: Zope3/branches/jim-index/src/zope/app/traversing/namespace.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/traversing/namespace.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/traversing/namespace.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -425,10 +425,52 @@
              no adapter
 
            Cleanup:
-    
+
              >>> tearDown()
            """
         try:
             return component.getAdapter(self.context, IPathAdapter, name=name)
         except:
             raise NotFoundError(self.context, name)
+
+
+class debug(view):
+
+    def traverse(self, name, ignored):
+        """Debug traversal adapter
+
+           This adapter allows debugging flags to be set in the request.
+           See IDebugFlags.
+
+           Demonstration:
+
+             >>> from zope.publisher.browser import TestRequest
+             >>> request = TestRequest()
+             >>> ob = object()
+             >>> adapter = debug(ob, request)
+             >>> request.debug.sourceAnnotations
+             False
+             >>> adapter.traverse('source', ()) is ob
+             True
+             >>> request.debug.sourceAnnotations
+             True
+             >>> adapter.traverse('source,source', ()) is ob
+             True
+             >>> try:
+             ...     adapter.traverse('badflag', ())
+             ... except ValueError:
+             ...     print 'unknown debugging flag'
+             unknown debugging flag
+
+        """
+        if __debug__:
+            request = self.request
+            for flag in name.split(','):
+                if flag == 'source':
+                    request.debug.sourceAnnotations = True
+                else:
+                    raise ValueError("Unknown debug flag: %s" % flag)
+            return self.context
+        else:
+            raise ValueError("Debug flags only allowed in debug mode")
+

Modified: Zope3/branches/jim-index/src/zope/app/uniqueid/__init__.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/uniqueid/__init__.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/uniqueid/__init__.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -23,12 +23,14 @@
 """
 import random
 from zope.app.uniqueid.interfaces import IUniqueIdUtility, IReference
+from zope.app.uniqueid.interfaces import UniqueIdRemovedEvent
 from zope.interface import implements
 from ZODB.interfaces import IConnection
 from BTrees import OIBTree, IOBTree
 from zope.app import zapi
 from zope.app.location.interfaces import ILocation
 from zope.security.proxy import trustedRemoveSecurityProxy
+from zope.event import notify
 
 class UniqueIdUtility:
     """This utility provides a two way mapping between objects and
@@ -132,3 +134,21 @@
         if cur is None:
             raise ValueError('Can not get connection of %r' % (ob,))
     return cur._p_jar
+
+
+def removeUniqueIdSubscriber(event):
+    """A subscriber to ObjectRemovedEvent
+
+    Removes the unique ids registered for the object in all the unique
+    id utilities.
+    """
+
+    # Notify the catalogs that this object is about to be removed.
+    notify(UniqueIdRemovedEvent(event))
+
+    for utility in zapi.getAllUtilitiesRegisteredFor(IUniqueIdUtility):
+        try:
+            utility.unregister(event.object)
+        except KeyError:
+            pass
+

Modified: Zope3/branches/jim-index/src/zope/app/uniqueid/configure.zcml
===================================================================
--- Zope3/branches/jim-index/src/zope/app/uniqueid/configure.zcml	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/uniqueid/configure.zcml	2004-06-12 07:58:27 UTC (rev 25371)
@@ -48,6 +48,11 @@
         />
   </content>
 
+  <subscriber
+      factory=".removeUniqueIdSubscriber"
+      for="zope.app.container.interfaces.IObjectRemovedEvent"
+      />
+
   <!-- Views -->
   <include package=".browser" />
 

Modified: Zope3/branches/jim-index/src/zope/app/uniqueid/interfaces.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/uniqueid/interfaces.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/uniqueid/interfaces.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -3,7 +3,7 @@
 
 $Id$
 """
-from zope.interface import Interface
+from zope.interface import Interface, Attribute, implements
 
 
 class IReference(Interface):
@@ -60,3 +60,20 @@
 
     Allows to query object by id and id by object.
     """
+
+
+class  IUniqueIdRemovedEvent(Interface):
+    """The event which get published before the unique id is removed
+    from the utility so that the catalogs can unindex  the object.
+    """
+    original_event = Attribute(
+        """The IObjectRemoveEvent related to this event""")
+
+
+class UniqueIdRemovedEvent:
+    """The event which get published before the unique id is removed
+    from the utility so that the catalogs can unindex  the object.
+    """
+    implements(IUniqueIdRemovedEvent)
+    def __init__(self, event):
+        self.original_event = event

Modified: Zope3/branches/jim-index/src/zope/app/uniqueid/tests.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/uniqueid/tests.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/uniqueid/tests.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -21,9 +21,13 @@
 from persistent import Persistent
 from persistent.interfaces import IPersistent
 from zope.app.tests import setup, ztapi
+from zope.app import zapi
 from zope.interface import implements
 from ZODB.interfaces import IConnection
 from zope.app.location.interfaces import ILocation
+from zope.app.component.hooks import setSite
+from zope.app.utility import LocalUtilityService
+from zope.app.servicenames import Utilities
 
 
 class P(Persistent):
@@ -44,7 +48,7 @@
         from zope.app.uniqueid import connectionOfPersistent
         from zope.app.uniqueid import ReferenceToPersistent
         from zope.app.uniqueid.interfaces import IReference
-        root = setup.placefulSetUp(site=True)
+        self.root = setup.placefulSetUp(site=True)
         ztapi.provideAdapter(ILocation, IConnection, connectionOfPersistent)
         ztapi.provideAdapter(IPersistent, IReference, ReferenceToPersistent)
 
@@ -188,12 +192,61 @@
         self.assertRaises(ValueError, connectionOfPersistent, object())
 
 
+class TestRemoveSubscriber(ReferenceSetupMixin, unittest.TestCase):
 
+    def setUp(self):
+        from zope.app.uniqueid.interfaces import IUniqueIdUtility
+        from zope.app.uniqueid import UniqueIdUtility
+        from zope.app.folder import Folder, rootFolder
+
+        ReferenceSetupMixin.setUp(self)
+
+        sm = zapi.getServices(self.root)
+        setup.addService(sm, Utilities, LocalUtilityService())
+        self.utility = setup.addUtility(sm, '1',
+                                        IUniqueIdUtility, UniqueIdUtility())
+
+        self.root['folder1'] = Folder()
+        self.root._p_jar = ConnectionStub()
+        self.root['folder1']['folder1_1'] = self.folder1_1 = Folder()
+        self.root['folder1']['folder1_1']['folder1_1_1'] = Folder()
+
+        sm1_1 = setup.createServiceManager(self.folder1_1)
+        setup.addService(sm1_1, Utilities, LocalUtilityService())
+        self.utility1 = setup.addUtility(sm1_1, '2', IUniqueIdUtility,
+                                         UniqueIdUtility())
+
+    def test(self):
+        from zope.app.uniqueid import removeUniqueIdSubscriber
+        from zope.app.container.contained import ObjectRemovedEvent
+        from zope.app.uniqueid.interfaces import IUniqueIdRemovedEvent
+        folder = self.root['folder1']['folder1_1']['folder1_1_1']
+        id = self.utility.register(folder)
+        id1 = self.utility1.register(folder)
+        self.assertEquals(self.utility.getObject(id), folder)
+        self.assertEquals(self.utility1.getObject(id1), folder)
+        setSite(self.folder1_1)
+
+        events = []
+        ztapi.handle([IUniqueIdRemovedEvent], events.append)
+
+        # This should unregister the object in all utilities, not just the
+        # nearest one.
+        removeUniqueIdSubscriber(ObjectRemovedEvent(folder))
+
+        self.assertRaises(KeyError, self.utility.getObject, id)
+        self.assertRaises(KeyError, self.utility1.getObject, id1)
+
+        self.assertEquals(len(events), 1)
+        self.assertEquals(events[0].original_event.object, folder)
+
+
 def test_suite():
     suite = unittest.TestSuite()
     suite.addTest(unittest.makeSuite(TestUniqueIdUtility))
     suite.addTest(unittest.makeSuite(TestReferenceToPersistent))
     suite.addTest(unittest.makeSuite(TestConnectionOfPersistent))
+    suite.addTest(unittest.makeSuite(TestRemoveSubscriber))
     return suite
 
 if __name__ == '__main__':

Modified: Zope3/branches/jim-index/src/zope/app/workflow/stateful/xmlimportexport.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/workflow/stateful/xmlimportexport.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/workflow/stateful/xmlimportexport.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -159,12 +159,13 @@
     template = ViewPageTemplateFile('xmlexport_template.pt')
 
     def __init__(self, context):
-        self.context = context    
+        self.context = context
 
     def doExport(self):
         # Unfortunately, the template expects its parent to have an attribute
         # called request.
-        self.request = None
+        from zope.publisher.browser import TestRequest
+        self.request = TestRequest()
         return self.template()
 
     def getDublinCore(self, obj):

Modified: Zope3/branches/jim-index/src/zope/app/zptpage/browser/configure.zcml
===================================================================
--- Zope3/branches/jim-index/src/zope/app/zptpage/browser/configure.zcml	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/zptpage/browser/configure.zcml	2004-06-12 07:58:27 UTC (rev 25371)
@@ -22,7 +22,7 @@
 
   <browser:addMenuItem
       class="zope.app.zptpage.ZPTPage"
-      title="Templated Page"
+      title="ZPT Page"
       description="A simple, content-based Page Template"
       permission="zope.ManageContent"
       view="zope.app.zptpage.ZPTPage"

Modified: Zope3/branches/jim-index/src/zope/app/zptpage/interfaces.py
===================================================================
--- Zope3/branches/jim-index/src/zope/app/zptpage/interfaces.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/app/zptpage/interfaces.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Templated Page Content Component Interfaces
+"""ZPT Page Content Component Interfaces
 
 $Id$
 """

Modified: Zope3/branches/jim-index/src/zope/component/tests/test_utilityservice.py
===================================================================
--- Zope3/branches/jim-index/src/zope/component/tests/test_utilityservice.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/component/tests/test_utilityservice.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -143,8 +143,15 @@
         uts.remove(dummerUtility)
         uts.remove(dummerUtility)
         self.assertEqual(uts, [])
-        
 
+
+    def test_getAllUtilitiesRegisteredFor_empty(self):
+        us = getService(Utilities)
+        class IFoo(Interface):
+            pass
+        self.assertEqual(list(us.getAllUtilitiesRegisteredFor(IFoo)), [])
+
+
 def test_suite():
     return makeSuite(Test)
 

Modified: Zope3/branches/jim-index/src/zope/component/utility.py
===================================================================
--- Zope3/branches/jim-index/src/zope/component/utility.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/component/utility.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -59,7 +59,7 @@
                 yield item
 
     def getAllUtilitiesRegisteredFor(self, interface):
-        return iter(self._null.get(('s', interface), ()))
+        return iter(self._null.get(('s', interface)) or ())
 
 class GlobalUtilityService(UtilityService, GlobalService):
 

Modified: Zope3/branches/jim-index/src/zope/pagetemplate/pagetemplate.py
===================================================================
--- Zope3/branches/jim-index/src/zope/pagetemplate/pagetemplate.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/pagetemplate/pagetemplate.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -51,7 +51,7 @@
         engine.  This method is free to use the keyword arguments it
         receives.
 
-    pt_render(namespace, source=0)
+    pt_render(namespace, source=False, sourceAnnotations=False)
         Responsible the TAL interpreter to perform the rendering.  The
         namespace argument is a mapping which defines the top-level
         namespaces passed to the TALES expression engine.
@@ -99,7 +99,7 @@
     def pt_getEngine(self):
         return Engine
 
-    def pt_render(self, namespace, source=False):
+    def pt_render(self, namespace, source=False, sourceAnnotations=False):
         """Render this Page Template"""
         self._cook_check()
         __traceback_supplement__ = (PageTemplateTracebackSupplement,
@@ -110,7 +110,8 @@
         output = StringIO(u'')
         context = self.pt_getEngineContext(namespace)
         TALInterpreter(self._v_program, self._v_macros,
-                       context, output, tal=not source, strictinsert=0)()
+                       context, output, tal=not source, strictinsert=0,
+                       sourceAnnotations=sourceAnnotations)()
         return output.getvalue()
 
     def pt_errors(self, namespace):

Modified: Zope3/branches/jim-index/src/zope/pagetemplate/readme.txt
===================================================================
--- Zope3/branches/jim-index/src/zope/pagetemplate/readme.txt	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/pagetemplate/readme.txt	2004-06-12 07:58:27 UTC (rev 25371)
@@ -46,7 +46,7 @@
         engine.  This method is free to use the keyword arguments it
         receives.
 
-    pt_render(namespace, source=0)
+    pt_render(namespace, source=False, sourceAnnotations=False)
         Responsible the TAL interpreter to perform the rendering.  The
         namespace argument is a mapping which defines the top-level
         namespaces passed to the TALES expression engine.

Modified: Zope3/branches/jim-index/src/zope/publisher/base.py
===================================================================
--- Zope3/branches/jim-index/src/zope/publisher/base.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/publisher/base.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -27,7 +27,7 @@
 
 from zope.publisher.interfaces import IPublication
 from zope.publisher.interfaces import NotFound, DebugError, Unauthorized
-from zope.publisher.interfaces import IRequest, IResponse
+from zope.publisher.interfaces import IRequest, IResponse, IDebugFlags
 from zope.publisher.publish import mapply
 
 _marker = object()
@@ -152,6 +152,15 @@
 class RequestEnvironment(RequestDataMapper):
     _mapname = '_environ'
 
+
+class DebugFlags(object):
+    """Debugging flags."""
+
+    implements(IDebugFlags)
+
+    sourceAnnotations = False
+
+
 class BaseRequest(object):
     """Represents a publishing request.
 
@@ -181,6 +190,7 @@
         '_presentation_skin', # View skin
         '_principal',        # request principal, set by publication
         'interaction',       # interaction, set by interaction
+        'debug',             # debug flags
         )
 
     environment = RequestDataProperty(RequestEnvironment)
@@ -202,6 +212,7 @@
         self._body_instream = body_instream
         self._held = ()
         self._principal = None
+        self.debug = DebugFlags()
         self.interaction = None
 
     def setPrincipal(self, principal):

Modified: Zope3/branches/jim-index/src/zope/publisher/browser.py
===================================================================
--- Zope3/branches/jim-index/src/zope/publisher/browser.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/publisher/browser.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -653,6 +653,9 @@
             if self._charset is not None:
                 c += ';charset=' + self._charset
             self.setHeader('content-type', c)
+            self.setHeader('x-content-type-warning', 'guessed from content')
+            # XXX emit a warning once all page templates are changed to
+            # specify their content type explicitly.
 
         body = self.__insertBase(body)
         self._body = body
@@ -661,9 +664,17 @@
             self.setStatus(200)
 
     def __isHTML(self, str):
-        s = str.strip().lower()
-        return ((s.startswith('<html') and (s[5:6] in ' >'))
-                 or s.startswith('<!doctype html'))
+        """Try to determine whether str is HTML or not."""
+        s = str.lstrip().lower()
+        if s.startswith('<!doctype html'):
+            return True
+        if s.startswith('<html') and (s[5:6] in ' >'):
+            return True
+        if s.startswith('<!--'):
+            idx = s.find('<html')
+            return idx > 0 and (s[idx+5:idx+6] in ' >')
+        else:
+            return False
 
 
     def __wrapInHTML(self, title, content):

Modified: Zope3/branches/jim-index/src/zope/publisher/interfaces/__init__.py
===================================================================
--- Zope3/branches/jim-index/src/zope/publisher/interfaces/__init__.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/publisher/interfaces/__init__.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -386,6 +386,12 @@
         """
 
 
+class IDebugFlags(Interface):
+    """Features that support debugging."""
+
+    sourceAnnotations = Attribute("""Enable ZPT source annotations""")
+
+
 class IApplicationRequest(IEnumerableMapping):
     """Features that support application logic
     """
@@ -398,6 +404,8 @@
 
     bodyFile = Attribute("""The body of the request as a file""")
 
+    debug = Attribute("""Debug flags (see IDebugFlags).""")
+
     def __getitem__(key):
         """Return request data
 

Modified: Zope3/branches/jim-index/src/zope/publisher/tests/test_browserrequest.py
===================================================================
--- Zope3/branches/jim-index/src/zope/publisher/tests/test_browserrequest.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/publisher/tests/test_browserrequest.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -127,6 +127,7 @@
             "Status: 200 Ok\r\n"
             "Content-Length: 7\r\n"
             "Content-Type: text/plain;charset=utf-8\r\n"
+            "X-Content-Type-Warning: guessed from content\r\n"
             "X-Powered-By: Zope (www.zope.org), Python (www.python.org)\r\n"
             "\r\n"
             "u'5', 6")

Modified: Zope3/branches/jim-index/src/zope/tal/talinterpreter.py
===================================================================
--- Zope3/branches/jim-index/src/zope/tal/talinterpreter.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/tal/talinterpreter.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -102,9 +102,8 @@
 
         1. setPosition bytecode follows setSourceFile, and we need position
            information to output the line number.
-        2. Mozilla does not cope with HTML comments that occur before
-           <!DOCTYPE> (XXX file a bug into bugzilla.mozilla.org as comments
-           are legal there according to HTML4 spec).
+        2. Comments are not allowed in XML documents before the <?xml?>
+           declaration.
 
     For performance reasons (XXX premature optimization?) instead of checking
     the value of _pending_source_annotation on every write to the output
@@ -257,17 +256,13 @@
             self._stream_write = self.stream.write
 
     def _annotated_stream_write(self, s):
-        idx = s.find('<!DOCTYPE')
-        if idx == -1:
-            idx = s.find('<?xml')
+        idx = s.find('<?xml')
         if idx >= 0 or s.isspace():
-            # Do *not* preprend comments in front of the <!DOCTYPE> or
-            # <?xml?> declaration!  Although that is completely legal according
-            # to w3c.org, Mozilla chokes on such pages.
-            end_of_doctype = s.find('>', idx)
+            # Do not preprend comments in front of the <?xml?> declaration.
+            end_of_doctype = s.find('?>', idx)
             if end_of_doctype > idx:
-                self.stream.write(s[:end_of_doctype+1])
-                s = s[end_of_doctype+1:]
+                self.stream.write(s[:end_of_doctype+2])
+                s = s[end_of_doctype+2:]
                 # continue
             else:
                 self.stream.write(s)

Modified: Zope3/branches/jim-index/src/zope/tal/talparser.py
===================================================================
--- Zope3/branches/jim-index/src/zope/tal/talparser.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/tal/talparser.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -62,7 +62,8 @@
         name, attrlist, taldict, metaldict, i18ndict \
               = self.process_ns(name, attrlist)
         attrlist = self.xmlnsattrs() + attrlist
-        self.gen.emitStartElement(name, attrlist, taldict, metaldict, i18ndict)
+        self.gen.emitStartElement(name, attrlist, taldict, metaldict, i18ndict,
+                                  self.getpos())
 
     def process_ns(self, name, attrlist):
         taldict = {}
@@ -122,7 +123,7 @@
 
     def EndElementHandler(self, name):
         name = self.fixname(name)[0]
-        self.gen.emitEndElement(name)
+        self.gen.emitEndElement(name,  position=self.getpos())
 
     def DefaultHandler(self, text):
         self.gen.emitRawText(text)

Copied: Zope3/branches/jim-index/src/zope/tal/tests/input/test_sa3.xml (from rev 25370, Zope3/trunk/src/zope/tal/tests/input/test_sa3.xml)


Property changes on: Zope3/branches/jim-index/src/zope/tal/tests/input/test_sa3.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa2.html
===================================================================
--- Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa2.html	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa2.html	2004-06-12 07:58:27 UTC (rev 25371)
@@ -1,10 +1,10 @@
-<!DOCTYPE html 
-  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-  "DTD/xhtml1-transitional.dtd"><!--
+<!--
 ==============================================================================
 tests/input/test_sa2.html
 ==============================================================================
--->
+--><!DOCTYPE html 
+  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "DTD/xhtml1-transitional.dtd">
 <html>
 <title>Simple test of source annotations</title>
 <body>

Modified: Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa2.xml
===================================================================
--- Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa2.xml	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa2.xml	2004-06-12 07:58:27 UTC (rev 25371)
@@ -1,11 +1,11 @@
-<?xml version="1.0" ?>
-<!DOCTYPE html 
-  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-  "DTD/xhtml1-transitional.dtd"><!--
+<?xml version="1.0" ?><!--
 ==============================================================================
 tests/input/test_sa2.xml
 ==============================================================================
 -->
+<!DOCTYPE html 
+  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "DTD/xhtml1-transitional.dtd">
 <html>
 <title>Simple test of source annotations</title>
 <body>

Copied: Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa3.xml (from rev 25370, Zope3/trunk/src/zope/tal/tests/output/test_sa3.xml)


Property changes on: Zope3/branches/jim-index/src/zope/tal/tests/output/test_sa3.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: Zope3/branches/jim-index/src/zope/tal/tests/test_talinterpreter.py
===================================================================
--- Zope3/branches/jim-index/src/zope/tal/tests/test_talinterpreter.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/tal/tests/test_talinterpreter.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -410,15 +410,11 @@
         test_cases = [
             '@some text',
             '\n',
-            '<!DOCTYPE ...>@some text',
-            ' <!DOCTYPE ...>@some text',
-            '\n<!DOCTYPE ...>@some text',
-            '<!DOCTYPE ...',
-            '<?xml ...>@some text',
-            ' <?xml ...>@some text',
-            '\n<?xml ...>@some text',
+            '<?xml ...?>@some text',
+            ' <?xml ...?>@some text',
+            '\n<?xml ...?>@some text',
             '<?xml ...',
-            '<?xml ...?>\n<!DOCTYPE ...>@some text',
+            '<?xml ...?>@\n<!DOCTYPE ...>some text',
         ]
         for output in test_cases:
             input = output.replace('@', '')

Modified: Zope3/branches/jim-index/src/zope/tal/xmlparser.py
===================================================================
--- Zope3/branches/jim-index/src/zope/tal/xmlparser.py	2004-06-11 21:40:41 UTC (rev 25370)
+++ Zope3/branches/jim-index/src/zope/tal/xmlparser.py	2004-06-12 07:58:27 UTC (rev 25371)
@@ -84,3 +84,16 @@
 
     def parseFragment(self, s, end=0):
         self.parser.Parse(s, end)
+
+    def getpos(self):
+        # Apparently ErrorLineNumber and ErrorLineNumber contain the current
+        # position even when there was no error.  This contradicts the official
+        # documentation[1], but expat.h[2] contains the following definition:
+        #
+        #   /* For backwards compatibility with previous versions. */
+        #   #define XML_GetErrorLineNumber   XML_GetCurrentLineNumber
+        #
+        # [1] http://python.org/doc/current/lib/xmlparser-objects.html
+        # [2] http://cvs.sourceforge.net/viewcvs.py/expat/expat/lib/expat.h
+        return (self.parser.ErrorLineNumber, self.parser.ErrorColumnNumber)
+




More information about the Zope3-Checkins mailing list