[Zope3-checkins] CVS: Zope3/src/zope/app/translation_files - extract.py:1.6 zope.pot:1.11

Stephan Richter srichter at cosmos.phy.tufts.edu
Tue Aug 12 16:39:57 EDT 2003


Update of /cvs-repository/Zope3/src/zope/app/translation_files
In directory cvs.zope.org:/tmp/cvs-serv19212/translation_files

Modified Files:
	extract.py zope.pot 
Log Message:
- extract.py is now product aware, i.e. you can use it for your Zope
  Products as well. This can be controlled via command line options.

- extract.py makes use new talgettext domain selection.

- Updated German translation based on the latest msgids.


=== Zope3/src/zope/app/translation_files/extract.py 1.5 => 1.6 ===
--- Zope3/src/zope/app/translation_files/extract.py:1.5	Sat Aug  9 07:47:14 2003
+++ Zope3/src/zope/app/translation_files/extract.py	Tue Aug 12 15:39:21 2003
@@ -11,21 +11,39 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Message id extraction script
+"""Program to extract internationalization markup from Python Code,
+Page Templates and ZCML.
 
-This script extracts translatable strings and creates a single zope.pot file.
-
-$Id$
+This tool will extract all findable message strings from all
+internationalizable files in your Zope 3 product. It only extracts message ids
+of the specified domain. It defaults to the 'zope' domain and the zope.app
+package.
+
+Note: The Python Code extraction tool does not support domain registration, so
+      that all message strings are returned for Python code.
+
+Usage: extract.py [options]
+Options:
+    -h / --help
+        Print this message and exit.
+    -d / --domain <domain>
+        Specifies the domain that is supposed to be extracted (i.e. 'zope')
+    -p / --path <path>
+        Specifies the package that is supposed to be searched
+        (i.e. 'zope/app')
 """
+__id__ = "$Id$"
+
 import os, sys, fnmatch
+import getopt
 import time
 import tokenize
 import traceback
 from pygettext import safe_eval, normalize, make_escapes
 
-
 __meta_class__ = type
 
+
 pot_header = '''\
 ##############################################################################
 #
@@ -54,6 +72,13 @@
 
 '''
 
+def usage(code, msg=''):
+    # Python 2.1 required
+    print >> sys.stderr, __doc__
+    if msg:
+        print >> sys.stderr, msg
+    sys.exit(code)
+
 class POTEntry:
     """This class represents a single message entry in the POT file."""
 
@@ -80,8 +105,9 @@
 class POTMaker:
     """This class inserts sets of strings into a POT file."""
     
-    def __init__ (self, output_fn):
+    def __init__ (self, output_fn, path):
         self._output_filename = output_fn
+        self.path = path
         self.catalog = {}
 
 
@@ -98,19 +124,25 @@
                 self.catalog[msgid].addLocationComment(filename, lineno)
                 
 
-    def _getZopeVersion(self):
+    def _getProductVersion(self):
+        # First, try to get the product version
+        fn = os.path.join(self.path, 'version.txt')
+        if os.path.exists(fn):
+            return open(fn, 'r').read().strip()
+        # Second, try to find a Zope version
         import zope
         fn = os.path.join(os.path.dirname(zope.__file__), 'version.txt')
         if os.path.exists(fn):
-            return open(fn, 'r').read()
+            return open(fn, 'r').read().strip()
         else:
             return 'Zope 3 (unknown version)'
 
+
     def write(self):
         
         file = open(self._output_filename, 'w')
         file.write(pot_header % {'time': time.ctime(),
-                                 'version': self._getZopeVersion()})
+                                 'version': self._getProductVersion()})
         
         # Sort the catalog entries by filename
         catalog = self.catalog.values()
@@ -223,11 +255,10 @@
         # path
 
         # Get the path of the src
-        translation_files = os.path.abspath(os.path.dirname(sys.argv[0]))
-        app = os.path.dirname(translation_files)
-        zope = os.path.dirname(app)
-        src = os.path.dirname(zope)
-        sys.path.insert(0, src)
+        path = os.path.abspath(os.path.dirname(sys.argv[0]))
+        while not path.endswith('src'):
+            path = os.path.dirname(path)
+        sys.path.insert(0, path)
 
         import zope.app
 
@@ -272,13 +303,15 @@
 def zcml_strings(dir, domain="zope"):
     """Retrieve all ZCML messages from dir that are in the domain."""
     from zope.app._app import config
+    import zope
     dirname = os.path.dirname
-    site_zcml = os.path.join(dirname(dirname(dirname(dir))), "site.zcml")
+    site_zcml = os.path.join(dirname(dirname(dirname(zope.__file__))),
+                             "site.zcml")
     context = config(site_zcml, execute=False)
     return context.i18n_strings.get(domain, {})
 
 
-def tal_strings(dir, domain="zope"):
+def tal_strings(dir, domain="zope", include_default_domain=False):
     """Retrieve all TAL messages from dir that are in the domain."""
     # We import zope.tal.talgettext here because we can't rely on the
     # right sys path until app_dir has run
@@ -302,24 +335,59 @@
             print 'There was an error processing', filename
             traceback.print_exc()
 
+    # See whether anything in the domain was found
+    if not engine.catalog.has_key(domain):
+        return {}
     # We do not want column numbers.
-    catalog = engine.catalog
+    catalog = engine.catalog[domain].copy()
+    # When the Domain is 'default', then this means that none was found;
+    # Include these strings; yes or no?
+    if include_default_domain:
+        catalog.update(engine.catalog['default'])
     for msgid, locations in catalog.items():
         catalog[msgid] = map(lambda l: (l[0], l[1][0]), locations)
-    # XXX: No support for domains yet :(
     return catalog
 
 
 def main(argv=sys.argv):
-    dir = app_dir()
-    # Wehn generating the comments, we will not need the base directory info,
+    try:
+        opts, args = getopt.getopt(
+            sys.argv[1:],
+            'hd:p:',
+            ['help', 'domain=', 'path='])
+    except getopt.error, msg:
+        usage(1, msg)
+
+    domain = 'zope'
+    path = app_dir()
+    include_default_domain = True
+    for opt, arg in opts:
+        if opt in ('-h', '--help'):
+            usage(0)
+        elif opt in ('-d', '--domain'):
+            domain = arg
+            include_default_domain = False
+        elif opt in ('-p', '--path'):
+            if not os.path.exists(arg):
+                usage(1, 'The specified path does not exist.')
+            path = arg
+            # We might not have an absolute path passed in.
+            if not path == os.path.abspath(path):
+                cwd = os.getcwd()
+                # This is for symlinks. Thanks to Fred for this trick.
+                if os.environ.has_key('PWD'):
+                    cwd = os.environ['PWD']
+                path = os.path.normpath(os.path.join(cwd, arg))
+
+    # When generating the comments, we will not need the base directory info,
     # since it is specific to everyone's installation
-    base_dir = dir.replace('src/zope/app', '')
+    src_start = path.find('src')
+    base_dir = path[:src_start]
 
-    maker = POTMaker('zope.pot')
-    maker.add(py_strings(dir), base_dir)
-    maker.add(zcml_strings(dir), base_dir)
-    maker.add(tal_strings(dir), base_dir)
+    maker = POTMaker(domain+'.pot', path)
+    maker.add(py_strings(path, domain), base_dir)
+    maker.add(zcml_strings(path, domain), base_dir)
+    maker.add(tal_strings(path, domain, include_default_domain), base_dir)
     maker.write()
 
 


=== Zope3/src/zope/app/translation_files/zope.pot 1.10 => 1.11 ===
--- Zope3/src/zope/app/translation_files/zope.pot:1.10	Sat Aug  9 07:47:14 2003
+++ Zope3/src/zope/app/translation_files/zope.pot	Tue Aug 12 15:39:21 2003
@@ -14,7 +14,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: Zope X3 Pre-M4\n"
-"POT-Creation-Date: Sat Aug  9 07:29:41 2003\n"
+"POT-Creation-Date: Tue Aug 12 15:32:00 2003\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: Zope 3 Developers <zope3-dev at zope.org>\n"
@@ -43,10 +43,43 @@
 msgid "ZODB Control"
 msgstr ""
 
+#: src/zope/app/browser/applicationcontrol/configure.zcml:31
+msgid "Global Translation Service Control"
+msgstr ""
+
 #: src/zope/app/browser/applicationcontrol/configure.zcml:9
 msgid "Server Control"
 msgstr ""
 
+#: src/zope/app/browser/applicationcontrol/globaltranslationservicecontrol.pt:14
+#: src/zope/app/browser/services/translation/synchronize.pt:108
+#: src/zope/app/browser/services/translation/translate.pt:113
+msgid "Domain"
+msgstr ""
+
+#: src/zope/app/browser/applicationcontrol/globaltranslationservicecontrol.pt:15
+#: src/zope/app/browser/content/i18n_edit.pt:54
+#: src/zope/app/browser/content/i18nimageedit.pt:55
+#: src/zope/app/browser/services/translation/synchronize.pt:109
+msgid "Language"
+msgstr ""
+
+#: src/zope/app/browser/applicationcontrol/globaltranslationservicecontrol.pt:16
+msgid "Files"
+msgstr ""
+
+#: src/zope/app/browser/applicationcontrol/globaltranslationservicecontrol.pt:23
+msgid "Reload"
+msgstr ""
+
+#: src/zope/app/browser/applicationcontrol/globaltranslationservicecontrol.pt:3
+msgid "ZGlobal Transaction Service Controller"
+msgstr ""
+
+#: src/zope/app/browser/applicationcontrol/globaltranslationservicecontrol.py:53
+msgid "message catalog successfully reloaded."
+msgstr ""
+
 #: src/zope/app/browser/applicationcontrol/runtimeinfo.pt:10
 msgid "Zope version:"
 msgstr ""
@@ -168,11 +201,11 @@
 
 #: src/zope/app/browser/cache/cacheableedit.pt:45
 #: src/zope/app/browser/cache/ramedit.pt:51
-#: src/zope/app/browser/rdb/rdbconnection.pt:28
 #: src/zope/app/browser/content/i18n_edit.pt:87
 #: src/zope/app/browser/content/i18nimageedit.pt:101
 #: src/zope/app/browser/content/imageedit.pt:17
 #: src/zope/app/browser/dublincore/edit.pt:33
+#: src/zope/app/browser/rdb/rdbconnection.pt:28
 #: src/zope/app/browser/security/grants/manage_permissionform.pt:86
 #: src/zope/app/browser/security/grants/manage_roleform.pt:63
 #: src/zope/app/browser/services/error.pt:46
@@ -238,8 +271,8 @@
 msgstr ""
 
 #: src/zope/app/browser/cache/ramedit.pt:53
-#: src/zope/app/browser/services/bundle.pt:120
 #: src/zope/app/browser/services/add_svc_config.pt:35
+#: src/zope/app/browser/services/bundle.pt:120
 msgid "reset-button"
 msgstr ""
 
@@ -267,10 +300,36 @@
 msgid "Catalog is currently <strong>subscribed</strong> to the object hub."
 msgstr ""
 
+#: src/zope/app/browser/catalog/advanced.pt:27
+#: src/zope/app/browser/index/field/control.pt:57
+#: src/zope/app/browser/index/text/control.pt:52
+msgid "subscribe-button"
+msgstr ""
+
 #: src/zope/app/browser/catalog/advanced.pt:30
 msgid "(and reindex all objects, if checked)"
 msgstr ""
 
+#: src/zope/app/browser/catalog/advanced.pt:51
+#: src/zope/app/browser/dublincore/edit.pt:31
+#: src/zope/app/browser/form/add.pt:49
+#: src/zope/app/browser/form/edit.pt:51
+#: src/zope/app/browser/services/adapter_search.pt:10
+#: src/zope/app/browser/services/add_adapter_config.pt:23
+#: src/zope/app/browser/services/caches.pt:54
+#: src/zope/app/browser/services/connections.pt:53
+#: src/zope/app/browser/services/error.pt:94
+#: src/zope/app/browser/services/services.pt:65
+#: src/zope/app/browser/services/views.pt:49
+#: src/zope/app/browser/services/views.pt:72
+#: src/zope/app/browser/services/registration/editregistration.pt:49
+#: src/zope/app/browser/services/utility/utilities.pt:50
+#: src/zope/app/browser/workflow/stateful/instance_manage.pt:77
+#: src/zope/app/browser/workflow/stateful/definition_edit.pt:21
+#: src/zope/app/browser/workflow/stateful/definition_edit.pt:50
+msgid "refresh-button"
+msgstr ""
+
 #: src/zope/app/browser/catalog/advanced.pt:6
 msgid "Advanced Catalog Thingies"
 msgstr ""
@@ -376,11 +435,27 @@
 msgid "container-cancel-button"
 msgstr ""
 
+#: src/zope/app/browser/container/contents.pt:27
+#: src/zope/app/browser/container/index.pt:18
+msgid "Content listing"
+msgstr ""
+
 #: src/zope/app/browser/container/contents.pt:35
 #: src/zope/app/browser/content/imageedit.pt:11
 msgid "Size"
 msgstr ""
 
+#: src/zope/app/browser/container/contents.pt:36
+#: src/zope/app/browser/container/index.pt:28
+#: src/zope/app/browser/dublincore/edit.pt:39
+msgid "Created"
+msgstr ""
+
+#: src/zope/app/browser/container/contents.pt:37
+#: src/zope/app/browser/container/index.pt:29
+msgid "Modified"
+msgstr ""
+
 #: src/zope/app/browser/container/contents.py:218
 msgid "You didn't specify any ids to remove."
 msgstr ""
@@ -401,22 +476,6 @@
 msgid "find-button"
 msgstr ""
 
-#: src/zope/app/browser/container/index.pt:18
-#: src/zope/app/browser/container/contents.pt:27
-msgid "Content listing"
-msgstr ""
-
-#: src/zope/app/browser/container/index.pt:28
-#: src/zope/app/browser/container/contents.pt:36
-#: src/zope/app/browser/dublincore/edit.pt:39
-msgid "Created"
-msgstr ""
-
-#: src/zope/app/browser/container/index.pt:29
-#: src/zope/app/browser/container/contents.pt:37
-msgid "Modified"
-msgstr ""
-
 #: src/zope/app/browser/content/configure.zcml:101
 msgid "Upload an image"
 msgstr ""
@@ -561,12 +620,6 @@
 msgid "Default Language"
 msgstr ""
 
-#: src/zope/app/browser/content/i18n_edit.pt:54
-#: src/zope/app/browser/content/i18nimageedit.pt:55
-#: src/zope/app/browser/services/translation/synchronize.pt:109
-msgid "Language"
-msgstr ""
-
 #: src/zope/app/browser/content/i18n_edit.pt:66
 #: src/zope/app/browser/content/i18nimageedit.pt:67
 msgid "show-button"
@@ -616,26 +669,6 @@
 msgid "Metadata"
 msgstr ""
 
-#: src/zope/app/browser/dublincore/edit.pt:31
-#: src/zope/app/browser/form/add.pt:49
-#: src/zope/app/browser/form/edit.pt:51
-#: src/zope/app/browser/services/adapter_search.pt:10
-#: src/zope/app/browser/services/add_adapter_config.pt:23
-#: src/zope/app/browser/services/caches.pt:54
-#: src/zope/app/browser/services/connections.pt:53
-#: src/zope/app/browser/services/error.pt:94
-#: src/zope/app/browser/services/services.pt:65
-#: src/zope/app/browser/services/views.pt:49
-#: src/zope/app/browser/services/views.pt:72
-#: src/zope/app/browser/services/utility/utilities.pt:50
-#: src/zope/app/browser/services/registration/editregistration.pt:49
-#: src/zope/app/browser/catalog/advanced.pt:51
-#: src/zope/app/browser/workflow/stateful/instance_manage.pt:77
-#: src/zope/app/browser/workflow/stateful/definition_edit.pt:21
-#: src/zope/app/browser/workflow/stateful/definition_edit.pt:50
-msgid "refresh-button"
-msgstr ""
-
 #: src/zope/app/browser/dublincore/edit.pt:43
 msgid "Content Last Modified"
 msgstr ""
@@ -648,17 +681,22 @@
 msgid "Changed data ${datetime}"
 msgstr ""
 
+#: src/zope/app/browser/exception/unauthorized.pt:8
+#: src/zope/app/browser/skins/debug/unauthorized.pt:7
+msgid "Unauthorized"
+msgstr ""
+
 #: src/zope/app/browser/form/add.pt:22
 #: src/zope/app/browser/form/edit.pt:23
 msgid "There are ${num_errors} input errors."
 msgstr ""
 
 #: src/zope/app/browser/form/add.pt:51
-#: src/zope/app/browser/form/edit.pt:53
 #: src/zope/app/browser/form/addwizard.pt:62
+#: src/zope/app/browser/form/edit.pt:53
 #: src/zope/app/browser/form/editwizard.pt:53
-#: src/zope/app/browser/services/serviceactivation.pt:54
 #: src/zope/app/browser/services/add_svc_config.pt:37
+#: src/zope/app/browser/services/serviceactivation.pt:54
 #: src/zope/app/browser/services/registration/editregistration.pt:51
 #: src/zope/app/browser/workflow/stateful/instance_manage.pt:79
 msgid "submit-button"
@@ -737,8 +775,8 @@
 
 #: src/zope/app/browser/form/complexsample/interfaces.py:28
 #: src/zope/app/interfaces/services/pluggableauth/__init__.py:34
-#: src/zope/app/browser/container/index.pt:27
 #: src/zope/app/browser/container/contents.pt:34
+#: src/zope/app/browser/container/index.pt:27
 #: src/zope/app/browser/dublincore/edit.pt:14
 #: src/zope/app/browser/services/addrole.pt:20
 #: src/zope/app/browser/services/adduser.pt:18
@@ -758,11 +796,11 @@
 msgid "Updated on ${date_time}"
 msgstr ""
 
-#: src/zope/app/browser/form/editwizard.py:143
+#: src/zope/app/browser/form/editwizard.py:144
 msgid "No changes to save"
 msgstr ""
 
-#: src/zope/app/browser/form/editwizard.py:145
+#: src/zope/app/browser/form/editwizard.py:146
 msgid "Changes saved"
 msgstr ""
 
@@ -803,6 +841,11 @@
 msgid "Field Index"
 msgstr ""
 
+#: src/zope/app/browser/index/field/control.pt:104
+#: src/zope/app/browser/index/text/control.pt:101
+msgid "NEXT BATCH --&gt;"
+msgstr ""
+
 #: src/zope/app/browser/index/field/control.pt:12
 msgid "FieldIndex"
 msgstr ""
@@ -811,10 +854,22 @@
 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 ""
 
+#: src/zope/app/browser/index/field/control.pt:26
+#: src/zope/app/browser/index/text/control.pt:26
+#: src/zope/app/browser/services/subscription_control.pt:16
+msgid "Successfully subscribed."
+msgstr ""
+
 #: src/zope/app/browser/index/field/control.pt:3
 msgid "FieldIndex Control Page"
 msgstr ""
 
+#: src/zope/app/browser/index/field/control.pt:31
+#: src/zope/app/browser/index/text/control.pt:31
+#: src/zope/app/browser/services/subscription_control.pt:20
+msgid "Successfully unsubscribed."
+msgstr ""
+
 #: src/zope/app/browser/index/field/control.pt:36
 msgid "Adapting objects to: ${iface_name}"
 msgstr ""
@@ -823,10 +878,51 @@
 msgid "Indexing on attribute: ${field_name}"
 msgstr ""
 
+#: src/zope/app/browser/index/field/control.pt:46
+#: src/zope/app/browser/index/text/control.pt:36
+msgid "Documents: ${doc_count}"
+msgstr ""
+
+#: src/zope/app/browser/index/field/control.pt:51
+#: src/zope/app/browser/index/text/control.pt:46
+#: src/zope/app/browser/services/subscription_control.pt:29
+#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:23
+msgid "Subscription state: ON"
+msgstr ""
+
+#: src/zope/app/browser/index/field/control.pt:52
+#: src/zope/app/browser/index/text/control.pt:47
+#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:24
+#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:29
+msgid "unsubscribe-button"
+msgstr ""
+
+#: src/zope/app/browser/index/field/control.pt:56
+#: src/zope/app/browser/index/text/control.pt:51
+#: src/zope/app/browser/services/subscription_control.pt:33
+#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:28
+msgid "Subscription state: OFF"
+msgstr ""
+
+#: src/zope/app/browser/index/field/control.pt:73
+#: src/zope/app/browser/index/text/control.pt:68
+msgid "No hits. Please try another query."
+msgstr ""
+
+#: src/zope/app/browser/index/field/control.pt:84
+#: src/zope/app/browser/index/text/control.pt:79
+msgid "Hits ${first} - ${last} of ${total}:"
+msgstr ""
+
 #: src/zope/app/browser/index/field/control.pt:88
 msgid "title=${title}; url=${title}"
 msgstr ""
 
+#: src/zope/app/browser/index/field/control.pt:96
+#: src/zope/app/browser/index/text/control.pt:93
+msgid "&lt;-- PREVIOUS BATCH"
+msgstr ""
+
 #: src/zope/app/browser/index/keyword/configure.zcml:3
 msgid "Edit Keyword Index"
 msgstr ""
@@ -840,11 +936,6 @@
 msgid "Text Index"
 msgstr ""
 
-#: src/zope/app/browser/index/text/control.pt:101
-#: src/zope/app/browser/index/field/control.pt:104
-msgid "NEXT BATCH --&gt;"
-msgstr ""
-
 #: src/zope/app/browser/index/text/control.pt:12
 msgid "TextIndex"
 msgstr ""
@@ -853,77 +944,18 @@
 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 ""
 
-#: src/zope/app/browser/index/text/control.pt:26
-#: src/zope/app/browser/index/field/control.pt:26
-#: src/zope/app/browser/services/subscription_control.pt:16
-msgid "Successfully subscribed."
-msgstr ""
-
 #: src/zope/app/browser/index/text/control.pt:3
 msgid "TextIndex Control Page"
 msgstr ""
 
-#: src/zope/app/browser/index/text/control.pt:31
-#: src/zope/app/browser/index/field/control.pt:31
-#: src/zope/app/browser/services/subscription_control.pt:20
-msgid "Successfully unsubscribed."
-msgstr ""
-
-#: src/zope/app/browser/index/text/control.pt:36
-#: src/zope/app/browser/index/field/control.pt:46
-msgid "Documents: ${doc_count}"
-msgstr ""
-
 #: src/zope/app/browser/index/text/control.pt:41
 msgid "Words: ${word_count}"
 msgstr ""
 
-#: src/zope/app/browser/index/text/control.pt:46
-#: src/zope/app/browser/index/field/control.pt:51
-#: src/zope/app/browser/services/subscription_control.pt:29
-#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:23
-msgid "Subscription state: ON"
-msgstr ""
-
-#: src/zope/app/browser/index/text/control.pt:47
-#: src/zope/app/browser/index/field/control.pt:52
-#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:24
-#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:29
-msgid "unsubscribe-button"
-msgstr ""
-
-#: src/zope/app/browser/index/text/control.pt:51
-#: src/zope/app/browser/index/field/control.pt:56
-#: src/zope/app/browser/services/subscription_control.pt:33
-#: src/zope/app/browser/workflow/stateful/contentworkflow_index.pt:28
-msgid "Subscription state: OFF"
-msgstr ""
-
-#: src/zope/app/browser/index/text/control.pt:52
-#: src/zope/app/browser/index/field/control.pt:57
-#: src/zope/app/browser/catalog/advanced.pt:27
-msgid "subscribe-button"
-msgstr ""
-
-#: src/zope/app/browser/index/text/control.pt:68
-#: src/zope/app/browser/index/field/control.pt:73
-msgid "No hits. Please try another query."
-msgstr ""
-
-#: src/zope/app/browser/index/text/control.pt:79
-#: src/zope/app/browser/index/field/control.pt:84
-msgid "Hits ${first} - ${last} of ${total}:"
-msgstr ""
-
 #: src/zope/app/browser/index/text/control.pt:88
 msgid "title=${title}; url=${url}; score=${score}"
 msgstr ""
 
-#: src/zope/app/browser/index/text/control.pt:93
-#: src/zope/app/browser/index/field/control.pt:96
-msgid "&lt;-- PREVIOUS BATCH"
-msgstr ""
-
 #: src/zope/app/browser/introspector.pt:104
 #: src/zope/app/browser/marker.pt:27
 msgid "Class Browser"
@@ -1026,8 +1058,8 @@
 msgstr ""
 
 #: src/zope/app/browser/marker.pt:115
-#: src/zope/app/browser/rdb/rdbadd.pt:27
 #: src/zope/app/browser/container/add.pt:39
+#: src/zope/app/browser/rdb/rdbadd.pt:27
 #: src/zope/app/browser/services/adduser.pt:56
 #: src/zope/app/browser/services/translation/translate.pt:78
 #: src/zope/app/browser/services/translation/translate.pt:84
@@ -1385,6 +1417,15 @@
 msgid "Registrations in this bundle"
 msgstr ""
 
+#: src/zope/app/browser/services/bundle.pt:49
+#: src/zope/app/browser/services/caches.pt:11
+#: src/zope/app/browser/services/connections.pt:11
+#: src/zope/app/browser/services/services.pt:15
+#: src/zope/app/browser/services/views.pt:11
+#: src/zope/app/browser/services/utility/utilities.pt:11
+msgid "(click to clear message)"
+msgstr ""
+
 #: src/zope/app/browser/services/bundle.pt:58
 msgid "For ${service_name} service"
 msgstr ""
@@ -1472,15 +1513,6 @@
 msgid "Caching Service"
 msgstr ""
 
-#: src/zope/app/browser/services/caches.pt:11
-#: src/zope/app/browser/services/connections.pt:11
-#: src/zope/app/browser/services/services.pt:15
-#: src/zope/app/browser/services/views.pt:11
-#: src/zope/app/browser/services/bundle.pt:49
-#: src/zope/app/browser/services/utility/utilities.pt:11
-msgid "(click to clear message)"
-msgstr ""
-
 #: src/zope/app/browser/services/caches.pt:33
 #: src/zope/app/browser/services/connections.pt:33
 msgid "(inactive)"
@@ -1513,9 +1545,9 @@
 #: src/zope/app/browser/services/connections.pt:50
 #: src/zope/app/browser/services/services.pt:62
 #: src/zope/app/browser/services/views.pt:46
-#: src/zope/app/browser/services/utility/utilities.pt:47
 #: src/zope/app/browser/services/translation/translate.pt:37
 #: src/zope/app/browser/services/translation/translate.pt:67
+#: src/zope/app/browser/services/utility/utilities.pt:47
 #: src/zope/app/browser/workflow/instancecontainer_main.pt:47
 msgid "delete-button"
 msgstr ""
@@ -1646,10 +1678,10 @@
 #: src/zope/app/browser/services/configureCache.pt:19
 #: src/zope/app/browser/services/configureConnection.pt:19
 #: src/zope/app/browser/services/configureView.pt:18
-#: src/zope/app/browser/services/utility/configureutility.pt:29
 #: src/zope/app/browser/services/registration/namecomponentregistry.pt:42
 #: src/zope/app/browser/services/registration/nameregistry.pt:44
 #: src/zope/app/browser/services/translation/synchronize.pt:142
+#: src/zope/app/browser/services/utility/configureutility.pt:29
 msgid "update-button"
 msgstr ""
 
@@ -2134,11 +2166,6 @@
 msgid "Message Id"
 msgstr ""
 
-#: src/zope/app/browser/services/translation/synchronize.pt:108
-#: src/zope/app/browser/services/translation/translate.pt:113
-msgid "Domain"
-msgstr ""
-
 #: src/zope/app/browser/services/translation/synchronize.pt:110
 msgid "Status"
 msgstr ""
@@ -2316,19 +2343,6 @@
 msgid "Pages registered in this views service:"
 msgstr ""
 
-#: src/zope/app/browser/skins/basic/view_macros.pt:35
-#: src/zope/app/browser/skins/onlinehelp/view_macros.pt:28
-msgid "User: ${user_title}"
-msgstr ""
-
-#: src/zope/app/browser/skins/basic/view_macros.pt:40
-#: src/zope/app/browser/skins/rotterdam/dialog_macros.pt:158
-#: src/zope/app/browser/skins/rotterdam/view_macros.pt:41
-#: src/zope/app/browser/skins/zopetop/widget_macros.pt:205
-#: src/zope/app/browser/skins/onlinehelp/view_macros.pt:34
-msgid "Powered by Zope"
-msgstr ""
-
 #: src/zope/app/browser/skins/debug/error_debug.pt:12
 msgid "Error object: ${error_object}"
 msgstr ""
@@ -2337,10 +2351,6 @@
 msgid "Error type: ${error_type}"
 msgstr ""
 
-#: src/zope/app/browser/skins/debug/unauthorized.pt:7
-msgid "Unauthorized"
-msgstr ""
-
 #: src/zope/app/browser/skins/debug/unauthorized.pt:8
 msgid "You're not allowed in here."
 msgstr ""
@@ -2373,6 +2383,10 @@
 msgid "Z3 UI Onlinehelp"
 msgstr ""
 
+#: src/zope/app/browser/skins/onlinehelp/view_macros.pt:28
+msgid "User: ${user_title}"
+msgstr ""
+
 #: src/zope/app/browser/skins/rotterdam/dialog_macros.pt:11
 #: src/zope/app/browser/skins/rotterdam/template.pt:9
 msgid "Z3 UI"
@@ -2383,12 +2397,6 @@
 msgid "Tip"
 msgstr ""
 
-#: src/zope/app/browser/skins/rotterdam/dialog_macros.pt:51
-#: src/zope/app/browser/skins/rotterdam/template.pt:50
-#: src/zope/app/browser/skins/rotterdam/view_macros.pt:36
-msgid "User:"
-msgstr ""
-
 #: src/zope/app/browser/skins/rotterdam/simpleeditingrow.pt:3
 msgid "Extended Editor"
 msgstr ""
@@ -2434,6 +2442,15 @@
 msgid "Online Help - TOC"
 msgstr ""
 
+#: src/zope/app/browser/skins/rotterdam/view_macros.pt:36
+msgid "User:"
+msgstr ""
+
+#: src/zope/app/browser/skins/rotterdam/view_macros.pt:41
+#: src/zope/app/browser/skins/onlinehelp/view_macros.pt:34
+msgid "Powered by Zope"
+msgstr ""
+
 #: src/zope/app/browser/skins/zopetop/widget_macros.pt:13
 msgid "Logged in as ${user_title}"
 msgstr ""
@@ -2524,7 +2541,7 @@
 msgstr ""
 
 #: src/zope/app/browser/workflow/configure.zcml:15
-msgid "'Workflow Service"
+msgid "Workflow Service"
 msgstr ""
 
 #: src/zope/app/browser/workflow/configure.zcml:15
@@ -2656,11 +2673,11 @@
 msgid "Stateful State"
 msgstr ""
 
-#: src/zope/app/browser/workflow/stateful/contentworkflow.py:86
+#: src/zope/app/browser/workflow/stateful/contentworkflow.py:85
 msgid "Mapping(s) added."
 msgstr ""
 
-#: src/zope/app/browser/workflow/stateful/contentworkflow.py:94
+#: src/zope/app/browser/workflow/stateful/contentworkflow.py:93
 msgid "Mapping(s) removed."
 msgstr ""
 
@@ -3021,8 +3038,8 @@
 #: src/zope/app/interfaces/services/connection.py:34
 #: src/zope/app/interfaces/services/registration.py:112
 #: src/zope/app/interfaces/services/utility.py:35
-#: src/zope/app/browser/container/index.pt:26
 #: src/zope/app/browser/container/contents.pt:33
+#: src/zope/app/browser/container/index.pt:26
 #: src/zope/app/browser/workflow/instancecontainer_index.pt:19
 #: src/zope/app/browser/workflow/instancecontainer_main.pt:18
 msgid "Name"




More information about the Zope3-Checkins mailing list