--- turbogears/command/i18n.py.orig	2008-02-07 16:40:14.000000000 -0500
+++ turbogears/command/i18n.py	2008-02-07 16:40:43.000000000 -0500
@@ -251,7 +251,12 @@
                 if self.options.loose_kid_support or el.get('lang', None):
                     tag = re.sub('({[^}]+})?(\w+)', '\\2', el.tag)
                     ents = []
-                    if el.text: ents = [el.text.strip()]
+                    if el.text and not ( el.text.strip() in keys):
+                        if el.tag == "script":
+                            ents = [el.text.strip()]
+                        else:
+                            messages.append((tag, fname, el.text.strip()))
+                            keys.append(el.text.strip())
                     if el.attrib: ents.extend(el.attrib.values())
                     for k in ents:
                         key = None
