diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml index ca27603c46f474f68e96508f2c4c638dde1e571a..02d5e58a12028df149092a0ba82f6501784672fd 100644 --- a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml +++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml @@ -85,7 +85,6 @@ reversal = accounting_module.newContent (\n mapping={\'title\': unicode(context.getTitleOrId(), \'utf8\'),\n \'specific_reference\': specific_reference}),\n resource=context.getResource(),\n - reference=context.getReference(),\n causality_value_list=causality_value_list,\n created_by_builder=1 # XXX to prevent init script to create lines\n )\n diff --git a/bt5/erp5_accounting/bt/revision b/bt5/erp5_accounting/bt/revision index b1de98934660adba0485cde2c42fd380f8524641..ab57eb1e7e7949e64cd01bbdca6a5ba189e982f7 100644 --- a/bt5/erp5_accounting/bt/revision +++ b/bt5/erp5_accounting/bt/revision @@ -1 +1 @@ -1479 \ No newline at end of file +1480 \ No newline at end of file diff --git a/bt5/erp5_credential/SkinTemplateItem/portal_skins/erp5_credential/ERP5Site_acceptSubmittedCredentials.xml b/bt5/erp5_credential/SkinTemplateItem/portal_skins/erp5_credential/ERP5Site_acceptSubmittedCredentials.xml index 302f71740f0c29e8cd713af3b4572070e34cd2e6..f55b9855b8b8ed3a5040f8a6e676ab21fa1df039 100644 --- a/bt5/erp5_credential/SkinTemplateItem/portal_skins/erp5_credential/ERP5Site_acceptSubmittedCredentials.xml +++ b/bt5/erp5_credential/SkinTemplateItem/portal_skins/erp5_credential/ERP5Site_acceptSubmittedCredentials.xml @@ -57,7 +57,8 @@ if portal.portal_preferences.getPreferredCredentialRequestAutomaticApproval():\n result = module.searchFolder(portal_type=\'Credential Request\',\n validation_state=\'submitted\')\n for document in result:\n - document.activate().accept()\n + if document.getValidationState() == \'submitted\':\n + document.accept()\n \n if portal.portal_preferences.getPreferredPersonCredentialUpdateAutomaticApproval() and \\\n portal.portal_preferences.getPreferredOrganisationCredentialUpdateAutomaticApproval():\n @@ -65,7 +66,8 @@ if portal.portal_preferences.getPreferredPersonCredentialUpdateAutomaticApproval result = module.searchFolder(portal_type=\'Credential Update\',\n validation_state=\'submitted\')\n for document in result:\n - document.activate().accept()\n + if document.getValidationState() == \'submitted\':\n + document.accept()\n elif portal.portal_preferences.getPreferredPersonCredentialUpdateAutomaticApproval() and \\\n not portal.portal_preferences.getPreferredOrganisationCredentialUpdateAutomaticApproval():\n module = context.getDefaultModule(\'Credential Update\')\n @@ -73,7 +75,8 @@ elif portal.portal_preferences.getPreferredPersonCredentialUpdateAutomaticApprov validation_state=\'submitted\')\n for document in result:\n if document.getDestinationDecisionValue().getPortalType() == \'Person\':\n - document.activate().accept()\n + if document.getValidationState() == \'submitted\':\n + document.accept()\n elif not portal.portal_preferences.getPreferredPersonCredentialUpdateAutomaticApproval() and \\\n portal.portal_preferences.getPreferredOrganisationCredentialUpdateAutomaticApproval():\n module = context.getDefaultModule(\'Credential Update\')\n @@ -81,14 +84,16 @@ elif not portal.portal_preferences.getPreferredPersonCredentialUpdateAutomaticAp validation_state=\'submitted\')\n for document in result:\n if document.getDestinationDecisionValue().getPortalType() == \'Organisation\':\n - document.activate().accept()\n + if document.getValidationState() == \'submitted\':\n + document.accept()\n \n if portal.portal_preferences.getPreferredCredentialRecoveryAutomaticApproval():\n module = context.getDefaultModule(\'Credential Recovery\')\n result = module.searchFolder(portal_type=\'Credential Recovery\',\n validation_state=\'submitted\')\n for document in result:\n - document.activate().accept()\n + if document.getValidationState() == \'submitted\':\n + document.accept()\n </string> </value> </item> <item> diff --git a/bt5/erp5_credential/bt/revision b/bt5/erp5_credential/bt/revision index be6652a2ab7bd0c8450fb25bd74ece961efb90bb..5e801cee880d1bdf4d33a876b8bb09b3d231da22 100644 --- a/bt5/erp5_credential/bt/revision +++ b/bt5/erp5_credential/bt/revision @@ -1 +1 @@ -415 \ No newline at end of file +416 \ No newline at end of file diff --git a/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_init.xml b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_init.xml index 3ca8534f409ab9a577e216391fa7c7ca6e502fac..dce94095eff91867d2f303856105a36a1e4f8340 100644 --- a/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_init.xml +++ b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_init.xml @@ -60,6 +60,9 @@ if me is not None:\n if section is not None:\n context.setSourceSectionValue(section)\n context.setPriceCurrency(section.getPriceCurrency())\n +new_id = context.portal_ids.generateNewLengthId(id_group = "PTGR", default=1)\n +reference = "PTGR-%06d" % (new_id)\n +context.setSourceReference(reference)\n </string> </value> </item> <item> diff --git a/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view.xml b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view.xml index 378c6f4282284ecc2183d40e99a3aa3d82d69ceb..46119d2ad78f6e67658fda530c35772340617d4f 100644 --- a/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view.xml +++ b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view.xml @@ -101,6 +101,7 @@ <value> <list> <string>my_title</string> + <string>my_source_reference</string> <string>my_reference</string> <string>my_source_section</string> <string>my_source_payment</string> @@ -111,6 +112,7 @@ <key> <string>right</string> </key> <value> <list> + <string>my_destination_reference</string> <string>my_stop_date</string> <string>my_payment_transaction_group_type</string> <string>my_payment_mode</string> diff --git a/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view/my_destination_reference.xml b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view/my_destination_reference.xml new file mode 100644 index 0000000000000000000000000000000000000000..1e73a96b8982ca39f9107f893e6619d7a2e9bd99 --- /dev/null +++ b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view/my_destination_reference.xml @@ -0,0 +1,96 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list> + <string>title</string> + </list> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>my_destination_reference</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_view_mode_reference</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Base_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Destination Reference</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view/my_source_reference.xml b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view/my_source_reference.xml new file mode 100644 index 0000000000000000000000000000000000000000..c1510edc085e2faaec28c8b86c361bc9cc4559c3 --- /dev/null +++ b/bt5/erp5_payment_mean/SkinTemplateItem/portal_skins/erp5_payment_mean/PaymentTransactionGroup_view/my_source_reference.xml @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list> + <string>editable</string> + <string>title</string> + </list> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>my_source_reference</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>editable</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_view_mode_reference</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Base_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Source Reference</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/1_draft_payment_transaction_group_list.xml b/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/1_draft_payment_transaction_group_list.xml index 46caec4b9755bc30c7e7cd37c398176cd5b66db3..53452a4bb5e5dec8033d9e6f983b5e732b06223f 100644 --- a/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/1_draft_payment_transaction_group_list.xml +++ b/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/1_draft_payment_transaction_group_list.xml @@ -22,7 +22,7 @@ <key> <string>actbox_url</string> </key> <value> <string encoding="cdata"><![CDATA[ -payment_transaction_group_module/view?reset:int=1&portal_type=Payment Transaction Group&local_roles=Assignee&validation_state=draft +payment_transaction_group_module?validation_state=draft&portal_type:list=%(portal_type)s&local_roles:list=%(local_roles)s&reset:int=1 ]]></string> </value> </item> diff --git a/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/2_open_payment_transaction_group_list.xml b/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/2_open_payment_transaction_group_list.xml index 7d67b98bc9c3bc6b222d29698bc6c225a5b6066b..922926d238124148ffac14e19de23401587ca967 100644 --- a/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/2_open_payment_transaction_group_list.xml +++ b/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/2_open_payment_transaction_group_list.xml @@ -22,7 +22,7 @@ <key> <string>actbox_url</string> </key> <value> <string encoding="cdata"><![CDATA[ -payment_transaction_group_module/view?reset:int=1&portal_type=Payment Transaction Group&local_roles=Assignee&validation_state=open +payment_transaction_group_module?validation_state=open&portal_type:list=%(portal_type)s&local_roles:list=%(local_roles)s&reset:int=1 ]]></string> </value> </item> diff --git a/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/3_closed_payment_transaction_group_list.xml b/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/3_closed_payment_transaction_group_list.xml index 96d72bc44a4ef26b572dbd4d1b04e5df34928534..a873e10b28075291ff19e1e98851670a9120761a 100644 --- a/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/3_closed_payment_transaction_group_list.xml +++ b/bt5/erp5_payment_mean/WorkflowTemplateItem/portal_workflow/payment_transaction_group_validation_workflow/worklists/3_closed_payment_transaction_group_list.xml @@ -22,7 +22,7 @@ <key> <string>actbox_url</string> </key> <value> <string encoding="cdata"><![CDATA[ -payment_transaction_group_module/view?reset:int=1&portal_type=Payment Transaction Group&local_roles=Assignor&validation_state=closed +payment_transaction_group_module?validation_state=closed&portal_type:list=%(portal_type)s&local_roles:list=%(local_roles)s&reset:int=1 ]]></string> </value> </item> diff --git a/bt5/erp5_payment_mean/bt/revision b/bt5/erp5_payment_mean/bt/revision index da2d3988d7d1a255376770b1e87394ebb42febb3..19c7bdba7b1e9bfe80365a50420a6d538ca503c3 100644 --- a/bt5/erp5_payment_mean/bt/revision +++ b/bt5/erp5_payment_mean/bt/revision @@ -1 +1 @@ -14 \ No newline at end of file +16 \ No newline at end of file diff --git a/bt5/erp5_user_tutorial_ui_test/SkinTemplateItem/portal_skins/erp5_user_tutorial_ui_test/Zuite_checkPortalCatalog.xml b/bt5/erp5_user_tutorial_ui_test/SkinTemplateItem/portal_skins/erp5_user_tutorial_ui_test/Zuite_checkPortalCatalog.xml index 79dda3e34c522752272bef805ea8dd9b8b8fba35..944377928805256b9cf2abd46ab37529e6d78b5c 100644 --- a/bt5/erp5_user_tutorial_ui_test/SkinTemplateItem/portal_skins/erp5_user_tutorial_ui_test/Zuite_checkPortalCatalog.xml +++ b/bt5/erp5_user_tutorial_ui_test/SkinTemplateItem/portal_skins/erp5_user_tutorial_ui_test/Zuite_checkPortalCatalog.xml @@ -72,7 +72,7 @@ for result in result_list:\n if strict_check_mode and method() != kw[key]:\n raise RuntimeError, "One property is not the same that you wanted : you asked \'%s\' and expecting \'%s\' but get \'%s\'" % (key, kw[key], method())\n # check that every object are owner by you\n - if strict_check_mode and object.Base_getOwnerId() not in [owner_id, functional_test_username, \'__erp5security-=__\', functional_another_test_username]:\n + if strict_check_mode and object.Base_getOwnerId() not in [owner_id, functional_test_username, \'System Processes\', functional_another_test_username]:\n raise RuntimeError, "You have try to clean an item who haven\'t you as owner : %s is owned by %s and you are %s" % \\\n (object.getTitle(), object.Base_getOwnerId(), owner_id)\n \n diff --git a/bt5/erp5_web_ung_core/ActionTemplateItem/portal_types/Web%20Illustration/view_editor.xml b/bt5/erp5_web_ung_core/ActionTemplateItem/portal_types/Web%20Illustration/view_editor.xml index fe76ebc48e0cf36b87f5b31cada86eb0e6ad1c59..e31a34609e14b55cc5166644fb23301c28b37593 100644 --- a/bt5/erp5_web_ung_core/ActionTemplateItem/portal_types/Web%20Illustration/view_editor.xml +++ b/bt5/erp5_web_ung_core/ActionTemplateItem/portal_types/Web%20Illustration/view_editor.xml @@ -75,7 +75,7 @@ <dictionary> <item> <key> <string>text</string> </key> - <value> <string>string:${object_url}/WebIllustration_viewEditor</string> </value> + <value> <string>string:${object_url}/Base_viewSVGEditor</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_web_ung_core/PortalTypeTemplateItem/portal_types/Web%20Illustration.xml b/bt5/erp5_web_ung_core/PortalTypeTemplateItem/portal_types/Web%20Illustration.xml index 5148acff4e7cc2855663b7ae77fae535424977b7..3600d7aa9ebdb5a20fec829682dc8f5f91812eb8 100644 --- a/bt5/erp5_web_ung_core/PortalTypeTemplateItem/portal_types/Web%20Illustration.xml +++ b/bt5/erp5_web_ung_core/PortalTypeTemplateItem/portal_types/Web%20Illustration.xml @@ -66,7 +66,7 @@ </item> <item> <key> <string>init_script</string> </key> - <value> <string>WebPage_init</string> </value> + <value> <string>WebIllustration_init</string> </value> </item> <item> <key> <string>permission</string> </key> @@ -82,6 +82,18 @@ <key> <string>type_class</string> </key> <value> <string>TextDocument</string> </value> </item> + <item> + <key> <string>type_interface</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>type_mixin</string> </key> + <value> + <tuple/> + </value> + </item> </dictionary> </pickle> </record> diff --git a/bt5/erp5_web_ung_core/SkinTemplateItem/portal_skins/erp5_web_ung_core/WebIllustration_init.xml b/bt5/erp5_web_ung_core/SkinTemplateItem/portal_skins/erp5_web_ung_core/WebIllustration_init.xml new file mode 100644 index 0000000000000000000000000000000000000000..e0425d0669e314981c4e439353062a5a074e0186 --- /dev/null +++ b/bt5/erp5_web_ung_core/SkinTemplateItem/portal_skins/erp5_web_ung_core/WebIllustration_init.xml @@ -0,0 +1,67 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <global name="PythonScript" module="Products.PythonScripts.PythonScript"/> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>Script_magic</string> </key> + <value> <int>3</int> </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_container</string> </key> + <value> <string>container</string> </value> + </item> + <item> + <key> <string>name_context</string> </key> + <value> <string>context</string> </value> + </item> + <item> + <key> <string>name_m_self</string> </key> + <value> <string>script</string> </value> + </item> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_body</string> </key> + <value> <string>context.setContentType(\'image/svg+xml\')\n +</string> </value> + </item> + <item> + <key> <string>_params</string> </key> + <value> <string>*args, **kw</string> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>WebIllustration_init</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_web_ung_core/bt/revision b/bt5/erp5_web_ung_core/bt/revision index 613955421088a491231b1c6c7766f0f95a5c5824..8783e305111947a209a0689074d8dfa60d33582e 100644 --- a/bt5/erp5_web_ung_core/bt/revision +++ b/bt5/erp5_web_ung_core/bt/revision @@ -1 +1 @@ -52 \ No newline at end of file +53 \ No newline at end of file diff --git a/erp5/util/testbrowser/browser.py b/erp5/util/testbrowser/browser.py index 6e712aed79486f420c8409222ae5d895d4aa49be..346cac51733dcd75722ad18f92790dcc35d37f04 100644 --- a/erp5/util/testbrowser/browser.py +++ b/erp5/util/testbrowser/browser.py @@ -31,8 +31,9 @@ ############################################################################## import logging - import sys +import urllib + from urlparse import urljoin from z3c.etestbrowser.browser import ExtendedTestBrowser from zope.testbrowser.browser import onlyOne @@ -185,21 +186,73 @@ class Browser(ExtendedTestBrowser): super(Browser, self).__init__() - def open(self, url_or_path=None, data=None): + def open(self, url_or_path=None, data=None, site_relative=True): """ - Open a relative (to the ERP5 base URL) or absolute URL. If the - given URL is not given, then it will open the home ERP5 page. + Open a relative (to the ERP5 base URL) or absolute URL. If the given URL + is not given, then it will open the home ERP5 page. If C{site_relative} is + False, it will open the URL within the current context. @param url_or_path: Relative or absolute URL @type url_or_path: str """ - # In case url_or_path is an absolute URL, urljoin() will return - # it, otherwise it is a relative path and will be concatenated to - # ERP5 base URL - absolute_url = urljoin(self._erp5_base_url, url_or_path) + if site_relative: + # In case url_or_path is an absolute URL, urljoin() will return + # it, otherwise it is a relative path and will be concatenated to + # ERP5 base URL + url_or_path = urljoin(self._erp5_base_url, url_or_path) + + if isinstance(data, dict): + data = urllib.urlencode(data) - self._logger.debug("Opening url: " + absolute_url) - super(Browser, self).open(absolute_url, data) + self._logger.debug("Opening: " + url_or_path) + super(Browser, self).open(url_or_path, data) + + def openNoVisit(self, url_or_path, data=None, site_relative=True): + """ + Copy/paste from zope.testbrowser.Browser.open() to allow opening an URL + without changing the current page. See L{open}. + + @see zope.testbrowser.interfaces.IBrowser + """ + if site_relative: + # In case url_or_path is an absolute URL, urljoin() will return + # it, otherwise it is a relative path and will be concatenated to + # ERP5 base URL + url_or_path = urljoin(self._erp5_base_url, url_or_path) + + import mechanize + + if isinstance(data, dict): + data = urllib.urlencode(data) + + response = None + url_or_path = str(url_or_path) + self._logger.debug("Opening: " + url_or_path) + self._start_timer() + try: + try: + try: + response = self.mech_browser.open_novisit(url_or_path, data) + except Exception, e: + fix_exception_name(e) + raise + except mechanize.HTTPError, e: + if e.code >= 200 and e.code <= 299: + # 200s aren't really errors + pass + elif self.raiseHttpErrors: + raise + finally: + self._stop_timer() + + # if the headers don't have a status, I suppose there can't be an error + if 'Status' in self.headers: + code, msg = self.headers['Status'].split(' ', 1) + code = int(code) + if self.raiseHttpErrors and code >= 400: + raise mechanize.HTTPError(url_or_path, code, msg, self.headers, fp=None) + + return response def randomSleep(self, minimum, maximum): """ @@ -562,6 +615,33 @@ class Browser(ExtendedTestBrowser): return activity_counter + def waitForActivity(self, interval=20, maximum_attempt_number=30): + """ + Wait for activities every C{interval} seconds at most + C{maximum_attempt_number} of times and return the waiting time (excluding + loading time to get the number of remaining time). + + This is mainly relevant when a setup script triggering activities has to + be executed before running the actual script. + + @param interval: Interval between checking for remaining activities + @type interval: int + @param maximum_attempt_number: Number of attempts before failing + @type maximum_attempt_number: int + @return: Number of seconds spent waiting + @rtype: int + """ + current_attempt_counter = 0 + while current_attempt_counter < maximum_attempt_number: + if self.getRemainingActivityCounter() == 0: + return current_attempt_counter * interval + + time.sleep(interval) + current_attempt_counter += 1 + + raise AssertionError("Maximum number of attempts reached while waiting " + "for activities to be processed") + from zope.testbrowser.browser import Form, ListControl class LoginError(Exception): @@ -864,6 +944,13 @@ class ContextMainForm(MainForm): """ self.submit(name='Folder_create:method') + def submitClone(self): + """ + Clone the previously selected objects. Use the class attribute + rather than the name as the latter is dependent on the context. + """ + self.submit(class_attribute='clone') + def submitDelete(self): """ Delete the previously selected objects. @@ -1095,6 +1182,44 @@ class ContextMainForm(MainForm): return control +from zope.testbrowser.browser import SubmitControl + +class SubmitControlWithTime(SubmitControl): + """ + Only define to wrap click methods to measure the time spent + """ + __metaclass__ = measurementMetaClass(prefix='click') + +from zope.testbrowser.browser import ImageControl + +class ImageControlWithTime(ImageControl): + """ + Only define to wrap click methods to measure the time spent + """ + __metaclass__ = measurementMetaClass(prefix='click') + +import zope.testbrowser.browser + +browser_controlFactory = zope.testbrowser.browser.controlFactory +def controlFactory(control, *args, **kwargs): + """ + Monkey patch controlFactory in zope.testbrowser to get elapsed time on + ImageControl and SubmitControl + """ + try: + t = control.type + except AttributeError: + # This is a subcontrol + pass + else: + if t in ('submit', 'submitbutton'): + return SubmitControlWithTime(control, *args, **kwargs) + elif t == 'image': + return ImageControlWithTime(control, *args, **kwargs) + + return browser_controlFactory(control, *args, **kwargs) + +zope.testbrowser.browser.controlFactory = controlFactory from zope.testbrowser.browser import Link diff --git a/product/CMFActivity/ActivityTool.py b/product/CMFActivity/ActivityTool.py index f15d3dbd30558dd284f112b65c60978802008929..121f0d4e9009465ae753ed20d7cc530d13a15d74 100644 --- a/product/CMFActivity/ActivityTool.py +++ b/product/CMFActivity/ActivityTool.py @@ -1111,8 +1111,7 @@ class ActivityTool (Folder, UniqueObject): # runing unit tests. Recreate it if it does not exist. if getattr(request.other, 'PARENTS', None) is None: request.other['PARENTS'] = parents - # XXX: itools (used by Localizer) requires PATH_INFO to be set, and it's - # not when runing unit tests. Recreate it if it does not exist. + # XXX: PATH_INFO might not be set when runing unit tests. if request.environ.get('PATH_INFO') is None: request.environ['PATH_INFO'] = '/Control_Panel/timer_service/process_timer' diff --git a/product/ERP5/ERP5Site.py b/product/ERP5/ERP5Site.py index 6d22517644b0e0e0310783618304acd2112a7acf..8781f980576a5f2650f6f4014a942c3c9cb32b25 100644 --- a/product/ERP5/ERP5Site.py +++ b/product/ERP5/ERP5Site.py @@ -268,7 +268,7 @@ class ERP5Site(FolderMixIn, CMFSite, CacheCookieMixin): def _doTranslationDomainRegistration(self): from zope.i18n.interfaces import ITranslationDomain - from Products.ERP5Type.patches.Localizer import ( + from Products.Localizer.MessageCatalog import ( message_catalog_alias_sources ) sm = self.getSiteManager() diff --git a/product/ERP5/bootstrap/erp5_core/PathTemplateItem/portal_ids/mysql_non_continuous_increasing_non_zodb.xml b/product/ERP5/bootstrap/erp5_core/PathTemplateItem/portal_ids/mysql_non_continuous_increasing_non_zodb.xml new file mode 100644 index 0000000000000000000000000000000000000000..58ad43b19536a34cd9e5a361e7557566e53acb87 --- /dev/null +++ b/product/ERP5/bootstrap/erp5_core/PathTemplateItem/portal_ids/mysql_non_continuous_increasing_non_zodb.xml @@ -0,0 +1,42 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <global name="SQL Non Continuous Increasing Id Generator" module="erp5.portal_type"/> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>default_reference</string> </key> + <value> <string>mysql_non_continuous_increasing_non_zodb</string> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>mysql_non_continuous_increasing_non_zodb</string> </value> + </item> + <item> + <key> <string>portal_type</string> </key> + <value> <string>SQL Non Continuous Increasing Id Generator</string> </value> + </item> + <item> + <key> <string>sid</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>store_interval</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>stored_in_zodb</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>version</string> </key> + <value> <string>001</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/product/ERP5/bootstrap/erp5_core/bt/revision b/product/ERP5/bootstrap/erp5_core/bt/revision index bd31e088c0b000417c1e4289eef58e57ccfbf84a..dcd2dffeb9dd155b31d877d2fe293985281bc9b3 100644 --- a/product/ERP5/bootstrap/erp5_core/bt/revision +++ b/product/ERP5/bootstrap/erp5_core/bt/revision @@ -1 +1 @@ -41036 \ No newline at end of file +41040 \ No newline at end of file diff --git a/product/ERP5TioSafe/ConnectionPlugin/DocumentConnection.py b/product/ERP5TioSafe/ConnectionPlugin/DocumentConnection.py index bf77b5ec870e620ffb42d58d410ef8d276b127f5..32c1f44a567a552a9e1011a311c67fa7a954c39f 100644 --- a/product/ERP5TioSafe/ConnectionPlugin/DocumentConnection.py +++ b/product/ERP5TioSafe/ConnectionPlugin/DocumentConnection.py @@ -27,10 +27,6 @@ ############################################################################## from Products.ERP5Type.Tool.WebServiceTool import ConnectionError -from urllib import urlencode -from urllib2 import URLError, HTTPError, Request, \ - urlopen, HTTPBasicAuthHandler, build_opener, \ - install_opener from Products.ERP5.ERP5Site import getSite class MethodWrapper(object): @@ -65,7 +61,7 @@ class DocumentConnection: """ """ self.reference=url - + def connect(self): """Get a handle to a remote connection.""" return self diff --git a/product/ERP5Type/Core/Folder.py b/product/ERP5Type/Core/Folder.py index 6a26bd6ea051d7a44b9934768d170074641d0838..33c4a612ca68c5aa0f76396d699c94b32cbf8717 100644 --- a/product/ERP5Type/Core/Folder.py +++ b/product/ERP5Type/Core/Folder.py @@ -70,8 +70,6 @@ except ImportError: pass -from AccessControl import getSecurityManager -from Products.ERP5Type import Permissions from DateTime import DateTime from random import randint @@ -186,7 +184,7 @@ class FolderMixIn(ExtensionClass.Base): Generate id base on date, useful for HBTreeFolder We also append random id """ - current_date = str(DateTime().Date()).replace("/", "") + current_date = DateTime().strftime('%Y%m%d') my_id = self._generateRandomId() return "%s-%s" %(current_date, my_id) @@ -1200,7 +1198,6 @@ class Folder(CopyContainer, CMFBTreeFolder, CMFHBTreeFolder, Base, FolderMixIn): if isinstance(to_class, type('')): to_class = getClassFromString(to_class) - folder = self.getObject() for o in self.listFolderContents(): # Make sure this sub object is not the same as object if o.getPhysicalPath() != self.getPhysicalPath(): @@ -1485,7 +1482,6 @@ class Folder(CopyContainer, CMFBTreeFolder, CMFHBTreeFolder, Base, FolderMixIn): corrected_list = [] for object in from_object_related_object_list: #LOG('Folder.mergeContent, working on object:',0,object) - object_url = object.getRelativeUrl() new_category_list = [] found = 0 for category in object.getCategoryList(): # so ('destination/person/1',...) diff --git a/product/ERP5Type/ZopePatch.py b/product/ERP5Type/ZopePatch.py index d2ea43f248bbc341a9dc9a5f3223310e75118f76..6f6ef3bb68449d87f115b6bdcc2368789a02415b 100644 --- a/product/ERP5Type/ZopePatch.py +++ b/product/ERP5Type/ZopePatch.py @@ -44,8 +44,6 @@ from Products.ERP5Type.patches import ActionInformation from Products.ERP5Type.patches import ActionProviderBase from Products.ERP5Type.patches import ActionsTool from Products.ERP5Type.patches import CookieCrumbler -from Products.ERP5Type.patches import i18n -from Products.ERP5Type.patches import Localizer from Products.ERP5Type.patches import PropertySheets from Products.ERP5Type.patches import CMFCoreSkinnable from Products.ERP5Type.patches import CMFCoreSkinsTool diff --git a/product/ERP5Type/patches/Localizer.py b/product/ERP5Type/patches/Localizer.py deleted file mode 100644 index 785fe34f382221672382849f6e3672b23ec6225b..0000000000000000000000000000000000000000 --- a/product/ERP5Type/patches/Localizer.py +++ /dev/null @@ -1,279 +0,0 @@ -############################################################################## -# -# Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved. -# Copyright (c) 2002-2006 Nexedi SARL and Contributors. All Rights Reserved. -# -# This software is subject to the provisions of the Zope Public License, -# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution. -# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED -# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS -# FOR A PARTICULAR PURPOSE -# -############################################################################## - -from string import Template -from itools import i18n -from Products.ERP5Type.Message import Message -from zLOG import LOG, ERROR - -# This patch will not work if Translation Service Zope product exist on the system -try: - from Products import TranslationService - LOG("ERP5Type.patches.Localizer", ERROR, "Translation Service Zope Product" - " (%s) and Translation Service tools must be deleted to let Localizer " - "Patch work." % (repr(TranslationService))) -except ImportError: - pass - -# This dict define the alias between old Translation Service catalog id -# and new Localizer Message Catalog. -message_catalog_aliases = { "Default": "default" - , "ui" : "erp5_ui" - , "content": "erp5_content" - } - -# "invert" message_catalog_aliases mapping -message_catalog_alias_sources = {} -for name, value in message_catalog_aliases.items(): - message_catalog_alias_sources.setdefault(value, []).append(name) - -# BACK: This method is not used in Zope 2.12. Drop when we drop support for -# Zope 2.8 -def Localizer_translate(self, domain, msgid, lang=None, mapping=None, *args, **kw): - """ - This translate() method use Localizer and support catalog aliases. - """ - # Get the Localizer catalog id - catalog_id = message_catalog_aliases.get(domain, domain) - catalog_obj = self._getOb(catalog_id, None) - if catalog_obj is None: - # No catalog found: use the default one - catalog_obj = self['default'] - - # Call the Message Catalog gettext method - params = {} - for key in ('add', 'default'): - try: - params[key] = kw[key] - except KeyError: - pass - if lang is not None: - params['lang'] = lang - else: - try: - params['lang'] = kw['target_language'] - except KeyError: - pass - translated_str = catalog_obj.gettext(msgid, **params) - - # Map the translated string with given parameters - if isinstance(mapping, dict) and mapping: - unicode_mapping = {} - if not isinstance(translated_str, unicode): - translated_str = translated_str.decode('utf8') - # make sure all values in the mapping are unicode - for k, v in mapping.iteritems(): - if isinstance(v, str): - v = v.decode('utf8') - elif isinstance(v, Message): - v = str(v).decode('utf8') - unicode_mapping[k] = v - - translated_str = Template(translated_str).substitute(unicode_mapping) - return translated_str - -# Apply the monkey patch. -from Products.Localizer.Localizer import Localizer -Localizer.translate = Localizer_translate -Localizer.translate__roles__ = None # public - -# Fix MessageCatalog's manage_export that fails with unicode strings -from Products.Localizer.MessageCatalog import MessageCatalog -original_manage_export = MessageCatalog.manage_export -def cleanup_and_export(self, x, REQUEST=None, RESPONSE=None): - """Path manage_export to cleanup messages whose keys are unicode objects - before exporting. - """ - message_keys = self._messages.keys() - for k in message_keys: - if isinstance(k, unicode): - message = self._messages.get(k.encode('utf8'), - self._messages.get(k)) - del self._messages[k] - self._messages[k.encode('utf8')] = message - return original_manage_export(self, x, REQUEST=REQUEST, RESPONSE=RESPONSE) -MessageCatalog.manage_export = cleanup_and_export - - -# Add a feature which allows users to be able to add a new language. -# -# Patch to LanguageManager.py -# -def get_languages_mapping(self): - """ - Returns a list of dictionary, one for each objects language. The - dictionary contains the language code, its name and a boolean - value that tells wether the language is the default one or not. - """ - return [ {'code': x, - 'name': self.get_language_name(x), - 'default': x == self._default_language} - for x in self._languages ] - -def get_language_name(self, id=None): - """ - Returns the name of the given language code. - - XXX Kept here for backwards compatibility only - """ - if id is None: - id = self.get_default_language() - language_name = i18n.get_language_name(id) - if language_name=='???': - return self.get_user_defined_language_name(id) or language_name - else: - return language_name - -# New method -def get_user_defined_language_name(self, id=None): - """ - Returns the name of the given user defined language code. - """ - for language_dict in self.get_user_defined_languages(): - if language_dict['code']==id: - return language_dict['name'] - -def get_all_languages(self): - """ - Returns all ISO languages, used by 'manage_languages'. - """ - return i18n.get_languages() + self.get_user_defined_languages() - -# New method -def get_user_defined_languages(self): - user_define_language_dict_list = [] - localizer = getattr(self, 'Localizer', None) - if localizer is not None: - for value in getattr(self, 'user_defined_languages', ()): - splitted_value = value.split(' ', 1) - if len(splitted_value)==2: - user_define_language_dict_list.append( - {'name':splitted_value[0].strip(), - 'code':splitted_value[1].strip(),}) - return user_define_language_dict_list - -# New method -def _add_user_defined_language(self, language_name, language_code): - self.user_defined_languages = ( - getattr(self, 'user_defined_languages', ())+ - ('%s %s' % (language_name, language_code),) - ) - self._p_changed = True - -# New method -def _del_user_defined_language(self, language_code): - user_defined_languages = [] - for language_dict in self.get_user_defined_languages(): - if language_dict['code']!=language_code: - user_defined_languages.append('%s %s' % - (language_dict['name'], - language_dict['code'])) - self.user_defined_languages = tuple(user_defined_languages) - self._p_changed = True - -# Override add_language so that languages are always sorted. -# Otherwise, selected languages can be nearly random. -def add_language(self, language): - """ - Adds a new language. - """ - if language not in self._languages: - new_language_list = tuple(self._languages) + (language,) - new_language_list = tuple(sorted(new_language_list)) - self._languages = new_language_list - -from Products.Localizer import LanguageManager -LanguageManager.LanguageManager.get_languages_mapping = get_languages_mapping -LanguageManager.LanguageManager.get_language_name = get_language_name -LanguageManager.LanguageManager.get_all_languages = get_all_languages -LanguageManager.LanguageManager.get_user_defined_language_name = get_user_defined_language_name -LanguageManager.LanguageManager.get_user_defined_languages = get_user_defined_languages -LanguageManager.LanguageManager._add_user_defined_language = _add_user_defined_language -LanguageManager.LanguageManager._del_user_defined_language = _del_user_defined_language -LanguageManager.LanguageManager.add_language = add_language -LanguageManager.InitializeClass(LanguageManager.LanguageManager) - -# -# Patch to Localizer.py -# -_properties = ({'id': 'title', 'type': 'string'}, - {'id': 'accept_methods', 'type': 'tokens'}, - {'id': 'user_defined_languages', 'type': 'lines'},) - -user_defined_languages = () - -def get_languages_map(self): - """ - Return a list of dictionaries, each dictionary has the language - id, its title and a boolean value to indicate wether it's the - user preferred language, for example: - [{'id': 'en', 'title': 'English', 'selected': 1}] - Used in changeLanguageForm. - """ - # For now only LPM instances are considered to be containers of - # multilingual data. - try: - ob = self.getLocalPropertyManager() - except AttributeError: - ob = self - - ob_language = ob.get_selected_language() - ob_languages = ob.get_available_languages() - - langs = [] - for x in ob_languages: - langs.append({'id': x, 'title': self.get_language_name(x), - 'selected': x == ob_language}) - return langs - -from Products.Localizer import Localizer -Localizer.Localizer._properties = _properties -Localizer.Localizer.user_defined_languages = user_defined_languages -Localizer.Localizer.get_languages_map = get_languages_map -Localizer.InitializeClass(Localizer.Localizer) - -# BACK: Can't write a configure.zcml that works on both Zope 2.8 and Zope 2.12 -# So we monkeypatch the subscriber instead. When we drop support for Zope 2.8 -# write a proper subscriber for MessageCatalog and IObjectMovedEvent -if 1: - from Products.Localizer.MessageCatalog import (MessageCatalog_moved as - MessageCatalog_moved_orig) - from zope.component import getSiteManager - from zope.i18n.interfaces import ITranslationDomain - import Products.Localizer.MessageCatalog - def MessageCatalog_moved(object, event): - """ - Install ITranslationDomain aliases alongside the original - MessageCatalog names - """ - MessageCatalog_moved_orig(object, event) - if event.oldParent is not None: - # unregister old aliases - oldAliases = message_catalog_alias_sources.get(event.oldName, ()) - sm = getSiteManager(event.oldParent) - for alias in oldAliases: - sm.unregisterUtility(object, ITranslationDomain, alias) - - if event.newParent is not None: - # register new aliases - newAliases = message_catalog_alias_sources.get(event.newName, ()) - sm = getSiteManager(event.newParent) - # FIXME: install aliases only if inside an ERP5Site - # but how to do that without causing circular dependencies? ERP5Site - # needs to implement an IERP5Site interface, declared inside - # Products.ERP5Type.interfaces - for alias in newAliases: - sm.registerUtility(object, ITranslationDomain, alias) - - Products.Localizer.MessageCatalog.MessageCatalog_moved = MessageCatalog_moved diff --git a/product/ERP5Type/patches/i18n.py b/product/ERP5Type/patches/i18n.py deleted file mode 100644 index 2ec19750e90177bff031efc9d9bb1bc058416d45..0000000000000000000000000000000000000000 --- a/product/ERP5Type/patches/i18n.py +++ /dev/null @@ -1,33 +0,0 @@ -############################################################################## -# -# Copyright (c) 2009 Nexedi SA and Contributors. All Rights Reserved. -# -# WARNING: This program as such is intended to be used by professional -# programmers who take the whole responsibility of assessing all potential -# consequences resulting from its eventual inadequacies and bugs -# End users who are looking for a ready-to-use solution with commercial -# guarantees and support are strongly adviced to contract a Free Software -# Service Company -# -# This program is Free Software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. -# -############################################################################## - -# allow access to AcceptLanguage for itools 0.16.2 or later -from itools.i18n.accept import AcceptLanguage -if getattr(AcceptLanguage, '__allow_access_to_unprotected_subobjects__', - None) is None: - AcceptLanguage.__allow_access_to_unprotected_subobjects__ = 1 -del AcceptLanguage diff --git a/product/ERP5Type/tests/ERP5TypeTestCase.py b/product/ERP5Type/tests/ERP5TypeTestCase.py index d095bce5c4504996f54ee293a1c56fb7b705daf8..cafbfef7dc27c84832876c46ea8fa0ee24a2f457 100644 --- a/product/ERP5Type/tests/ERP5TypeTestCase.py +++ b/product/ERP5Type/tests/ERP5TypeTestCase.py @@ -53,12 +53,6 @@ Globals.get_request = get_request from zope.site.hooks import setSite -try: - import itools.zope - itools.zope.get_context = get_context -except ImportError: - pass - from Testing import ZopeTestCase from Testing.ZopeTestCase import PortalTestCase, user_name from Products.CMFCore.utils import getToolByName diff --git a/product/Localizer/.gitignore b/product/Localizer/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..0b82cfba7384abf853aa3f56cefa2868ebf51414 --- /dev/null +++ b/product/Localizer/.gitignore @@ -0,0 +1,4 @@ +*.pyc +*.swp +locale/*.mo +locale/*~ diff --git a/product/Localizer/GettextTag.py b/product/Localizer/GettextTag.py new file mode 100644 index 0000000000000000000000000000000000000000..89914bcc457ef259dfd973022153ad3092f4d2e1 --- /dev/null +++ b/product/Localizer/GettextTag.py @@ -0,0 +1,102 @@ +# -*- coding: UTF-8 -*- +# Copyright (C) 2000-2002 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +Localizer + +Adds a new DTML tag: + +<dtml-gettext [lang=<language>|lang_expr=<expression>] [verbatim] [catalog=<id>] [data=<expression>]> + ... +</dtml-gettext> +""" + +# Import from Zope +from DocumentTemplate.DT_Util import Eval, ParseError, parse_params, \ + InstanceDict, namespace, render_blocks + + + +# Auxiliar functions +def name_or_expr(mapping, name_attr, expr_attr, default): + name = mapping.get(name_attr, None) + expr = mapping.get(expr_attr, None) + + if name is None: + if expr is None: + return default + return Eval(expr) + if expr is None: + return name + raise ParseError, ('%s and %s given' % (name_attr, expr_attr), 'calendar') + + + +class GettextTag: + """ """ + + name = 'gettext' + blockContinuations = () + + def __init__(self, blocks): + tname, args, section = blocks[0] + self.section = section.blocks + + args = parse_params(args, lang=None, lang_expr=None, verbatim=1, + catalog=None, data=None) + + self.lang = name_or_expr(args, 'lang', 'lang_expr', None) + + self.verbatim = args.get('', None) == 'verbatim' \ + or args.get('verbatim', None) + + self.catalog = args.get('catalog', None) + + self.data = args.get('data', None) + if self.data is not None: + self.data = Eval(self.data) + + + def __call__(self, md): + # In which language, if any? + lang = self.lang + if lang is not None and type(lang) is not str: + lang = lang.eval(md) + + # Get the message!! + ns = namespace(md)[0] + md._push(InstanceDict(ns, md)) + message = render_blocks(self.section, md) + md._pop(1) + + # Interpret the message as verbatim or not + if not self.verbatim: + message = ' '.join([ x.strip() for x in message.split() ]) + + # Search in a specific catalog + if self.catalog is None: + gettext = md.getitem('gettext', 0) + else: + gettext = md.getitem(self.catalog, 0).gettext + + translation = gettext(message, lang) + + # Variable substitution + if self.data is not None: + data = self.data.eval(md) + translation = translation % data + + return translation diff --git a/product/Localizer/LICENSE.txt b/product/Localizer/LICENSE.txt new file mode 100644 index 0000000000000000000000000000000000000000..94a9ed024d3859793618152ea559a168bbcbb5e2 --- /dev/null +++ b/product/Localizer/LICENSE.txt @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + <program> Copyright (C) <year> <name of author> + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +<http://www.gnu.org/licenses/>. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +<http://www.gnu.org/philosophy/why-not-lgpl.html>. diff --git a/product/Localizer/LanguageManager.py b/product/Localizer/LanguageManager.py new file mode 100644 index 0000000000000000000000000000000000000000..8ee5da04bd7827945aa7f3b96908adef52d8714f --- /dev/null +++ b/product/Localizer/LanguageManager.py @@ -0,0 +1,298 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2004 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from the Standard Library +from urlparse import urlparse + +# Import from itools +from .itools.i18n import get_language_name, get_languages + +# Import from Zope +from App.class_init import InitializeClass +from App.Management import Tabs +from AccessControl import ClassSecurityInfo + +# Import from Localizer +from LocalFiles import LocalDTMLFile +from utils import lang_negotiator, _ + + +class LanguageManager(Tabs): + """ """ + + security = ClassSecurityInfo() + + # TODO For backwards compatibility with Python 2.1 the variable + # _languages is a tuple. Change it to a frozenset. + _languages = () + _default_language = None + + + ######################################################################## + # API + ######################################################################## + def get_languages(self): + """Returns all the object languages. + """ + return self._languages + + + def set_languages(self, languages): + """Sets the object languages. + """ + self._languages = tuple(languages) + + + def add_language(self, language): + """Adds a new language. + """ + if language not in self._languages: + # Sort the language list, else selected languages + # can be nearly random. + new_language_list = tuple(self._languages) + (language,) + new_language_list = tuple(sorted(new_language_list)) + self._languages = new_language_list + + def del_language(self, language): + """Removes a language. + """ + if language in self._languages: + languages = [ x for x in self._languages if x != language ] + self._languages = tuple(languages) + + + def get_languages_mapping(self): + """Returns a list of dictionary, one for each objects language. The + dictionary contains the language code, its name and a boolean value + that tells wether the language is the default one or not. + """ + return [ {'code': x, + 'name': self.get_language_name(x), + 'default': x == self._default_language} + for x in self._languages ] + + + def get_available_languages(self, **kw): + """Returns the langauges available. For example, a language could be + considered as available only if there is some data associated to it. + + This method is used by the language negotiation code (see + 'get_selected_language'), sometimes you will want to redefine it in + your classes. + """ + return self._languages + + + def get_default_language(self): + """Returns the default language. + + This method is used by the language negotiation code (see + 'get_selected_language'), sometimes you will want to redefine it in + your classes. + + For example, maybe you will want to define it to return always a + default language, even when internally it is None. + """ + return self._default_language + + + ######################################################################## + # Web API + ######################################################################## + + # Security settings + security.declarePublic('get_languages') + security.declareProtected('Manage languages', 'set_languages') + security.declareProtected('Manage languages', 'add_language') + security.declareProtected('Manage languages', 'del_language') + security.declarePublic('get_languages_mapping') + + + security.declarePublic('get_language_name') + def get_language_name(self, id=None): + """ + Returns the name of the given language code. + + XXX Kept here for backwards compatibility only + """ + if id is None: + id = self.get_default_language() + language_name = get_language_name(id) + if language_name=='???': + return self.get_user_defined_language_name(id) or language_name + else: + return language_name + + + security.declarePublic('get_available_languages') + security.declarePublic('get_default_language') + + + # XXX Kept here temporarily, further refactoring needed + security.declarePublic('get_selected_language') + def get_selected_language(self, **kw): + """ + Returns the selected language. Here the language negotiation takes + place. + + Accepts keyword arguments which will be passed to + 'get_available_languages'. + """ + available_languages = apply(self.get_available_languages, (), kw) + + return lang_negotiator(available_languages) \ + or self.get_default_language() + + + ######################################################################## + # ZMI + ######################################################################## + manage_options = ( + {'action': 'manage_languages', 'label': u'Languages', + 'help': ('Localizer', 'LM_languages.stx')},) + + + def filtered_manage_options(self, REQUEST=None): + options = Tabs.filtered_manage_options(self, REQUEST=REQUEST) + + # Insert the upgrade form if needed + if self._needs_upgrade(): + options.insert(0, + {'action': 'manage_upgradeForm', + 'label': u'Upgrade', + 'help': ('Localizer', 'LM_upgrade.stx')}) + + # Translate the labels + r = [] + for option in options: + option = option.copy() + option['label'] = _(option['label']) + r.append(option) + + # Ok + return r + + + security.declareProtected('View management screens', 'manage_languages') + manage_languages = LocalDTMLFile('ui/LM_languages', globals()) + + + security.declarePublic('get_all_languages') + def get_all_languages(self): + """ + Returns all ISO languages, used by 'manage_languages'. + """ + return get_languages() + self.get_user_defined_languages() + + + security.declareProtected('Manage languages', 'manage_addLanguage') + def manage_addLanguage(self, language, REQUEST=None, RESPONSE=None): + """ """ + self.add_language(language) + + if RESPONSE is not None: + RESPONSE.redirect("%s/manage_languages" % REQUEST['URL1']) + + + security.declareProtected('Manage languages', 'manage_delLanguages') + def manage_delLanguages(self, languages, REQUEST, RESPONSE): + """ """ + for language in languages: + self.del_language(language) + + RESPONSE.redirect("%s/manage_languages" % REQUEST['URL1']) + + + security.declareProtected('Manage languages', 'manage_changeDefaultLang') + def manage_changeDefaultLang(self, language, REQUEST=None, RESPONSE=None): + """ """ + self._default_language = language + + if REQUEST is not None: + RESPONSE.redirect("%s/manage_languages" % REQUEST['URL1']) + + + # Unicode support, custom ZMI + manage_page_header = LocalDTMLFile('ui/manage_page_header', globals()) + + + ######################################################################## + # Upgrade + def _needs_upgrade(self): + return False + + + def _upgrade(self): + pass + + + security.declarePublic('need_upgrade') + def need_upgrade(self): + """ """ + return self._needs_upgrade() + + + security.declareProtected( + 'Manage Access Rules', 'manage_upgradeForm', 'manage_upgrade') + manage_upgradeForm = LocalDTMLFile('ui/LM_upgrade', globals()) + def manage_upgrade(self, REQUEST, RESPONSE): + """ """ + self._upgrade() + RESPONSE.redirect('manage_main') + + # Add a feature which allows users to be able to add a new language. + security.declarePublic('get_user_defined_language_name') + def get_user_defined_language_name(self, id=None): + """ + Returns the name of the given user defined language code. + """ + for language_dict in self.get_user_defined_languages(): + if language_dict['code']==id: + return language_dict['name'] + + security.declarePublic('get_user_defined_languages') + def get_user_defined_languages(self): + user_define_language_dict_list = [] + localizer = getattr(self, 'Localizer', None) + if localizer is not None: + for value in getattr(self, 'user_defined_languages', ()): + splitted_value = value.split(' ', 1) + if len(splitted_value)==2: + user_define_language_dict_list.append( + {'name':splitted_value[0].strip(), + 'code':splitted_value[1].strip(),}) + return user_define_language_dict_list + + def _add_user_defined_language(self, language_name, language_code): + self.user_defined_languages = ( + getattr(self, 'user_defined_languages', ())+ + ('%s %s' % (language_name, language_code),) + ) + self._p_changed = True + + def _del_user_defined_language(self, language_code): + user_defined_languages = [] + for language_dict in self.get_user_defined_languages(): + if language_dict['code']!=language_code: + user_defined_languages.append('%s %s' % + (language_dict['name'], + language_dict['code'])) + self.user_defined_languages = tuple(user_defined_languages) + self._p_changed = True + + + +InitializeClass(LanguageManager) diff --git a/product/Localizer/LocalFiles.py b/product/Localizer/LocalFiles.py new file mode 100644 index 0000000000000000000000000000000000000000..cdbe4dbd4b727c353865e38f043f8c6e820ab081 --- /dev/null +++ b/product/Localizer/LocalFiles.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2005 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +Localizer + +This module provides several localized classes, that is, classes with the +locale attribute. Currently it only defines the classes LocalDTMLFile and +LocalPageTemplateFile, which should be used instead of DTMLFile and +PageTemplateFile. +""" + +# Import from the Standard Library +import os + +# Import Zope modules +from App.special_dtml import DTMLFile + +# Import from Localizer +from utils import DomainAware + + + +class LocalDTMLFile(DomainAware, DTMLFile): + """ """ + + def __init__(self, name, _prefix=None, **kw): + DTMLFile.__init__(self, name, _prefix, **kw) + DomainAware.__init__(self, _prefix) + + + def _exec(self, bound_data, args, kw): + # Add our gettext first + bound_data['gettext'] = self.gettext + return apply(LocalDTMLFile.inheritedAttribute('_exec'), + (self, bound_data, args, kw)) diff --git a/product/Localizer/Localizer.py b/product/Localizer/Localizer.py new file mode 100644 index 0000000000000000000000000000000000000000..3186214e1938115764f5cd986722ad0ab57c6a7f --- /dev/null +++ b/product/Localizer/Localizer.py @@ -0,0 +1,264 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2004 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from the Standard Library +from urllib import unquote + +# Import from Zope +from AccessControl import ClassSecurityInfo +from Acquisition import aq_parent +from App.class_init import InitializeClass +from OFS.Folder import Folder +from zLOG import LOG, ERROR, INFO, PROBLEM +from zope.interface import implements +from zope.i18n import translate +from ZPublisher.BeforeTraverse import registerBeforeTraverse, \ + unregisterBeforeTraverse, queryBeforeTraverse, NameCaller + +# Import Localizer modules +from interfaces import ILocalizer +from LocalFiles import LocalDTMLFile +from MessageCatalog import MessageCatalog +from utils import lang_negotiator +from LanguageManager import LanguageManager + + + +# Constructors +manage_addLocalizerForm = LocalDTMLFile('ui/Localizer_add', globals()) +def manage_addLocalizer(self, title, languages, REQUEST=None, RESPONSE=None): + """ + Add a new Localizer instance. + """ + self._setObject('Localizer', Localizer(title, languages)) + + if REQUEST is not None: + RESPONSE.redirect('manage_main') + + +class Localizer(LanguageManager, Folder): + """ + The Localizer meta type lets you customize the language negotiation + policy. + """ + + meta_type = 'Localizer' + implements(ILocalizer) + + id = 'Localizer' + + _properties = ({'id': 'title', 'type': 'string'}, + {'id': 'accept_methods', 'type': 'tokens'}, + {'id': 'user_defined_languages', 'type': 'lines'},) + + accept_methods = ('accept_path', 'accept_cookie', 'accept_url') + + security = ClassSecurityInfo() + + manage_options = \ + (Folder.manage_options[0],) \ + + LanguageManager.manage_options \ + + Folder.manage_options[1:] + + user_defined_languages = () + + def __init__(self, title, languages): + self.title = title + + self._languages = languages + self._default_language = languages[0] + + + ####################################################################### + # API / Private + ####################################################################### + def _getCopy(self, container): + return Localizer.inheritedAttribute('_getCopy')(self, container) + + + def _needs_upgrade(self): + return not self.hooked() + + + def _upgrade(self): + # Upgrade to 0.9 + if not self.hooked(): + self.manage_hook(1) + + + ####################################################################### + # API / Public + ####################################################################### + + # Get some data + security.declarePublic('get_supported_languages') + def get_supported_languages(self): + """ + Get the supported languages, that is the languages that the + are being working so the site is or will provide to the public. + """ + return self._languages + + + security.declarePublic('get_selected_language') + def get_selected_language(self): + """ """ + return lang_negotiator(self._languages) \ + or self._default_language + + + # Hooking the traversal machinery + # Fix this! a new permission needed? +## security.declareProtected('View management screens', 'manage_hookForm') +## manage_hookForm = LocalDTMLFile('ui/Localizer_hook', globals()) +## security.declareProtected('Manage properties', 'manage_hook') + security.declarePrivate('manage_hook') + def manage_hook(self, hook=0): + """ """ + if hook != self.hooked(): + if hook: + hook = NameCaller(self.id) + registerBeforeTraverse(aq_parent(self), hook, self.meta_type) + else: + unregisterBeforeTraverse(aq_parent(self), self.meta_type) + + + security.declarePublic('hooked') + def hooked(self): + """ """ + if queryBeforeTraverse(aq_parent(self), self.meta_type): + return 1 + return 0 + + + # New code to control the language policy + def accept_cookie(self, accept_language): + """Add the language from a cookie.""" + lang = self.REQUEST.cookies.get('LOCALIZER_LANGUAGE', None) + if lang is not None: + accept_language.set(lang, 2.0) + + + def accept_path(self, accept_language): + """Add the language from the path.""" + stack = self.REQUEST['TraversalRequestNameStack'] + if stack and (stack[-1] in self._languages): + lang = stack.pop() + accept_language.set(lang, 3.0) + + + def accept_url(self, accept_language): + """Add the language from the URL.""" + lang = self.REQUEST.form.get('LOCALIZER_LANGUAGE') + if lang is not None: + accept_language.set(lang, 2.0) + + + def __call__(self, container, REQUEST): + """Hooks the traversal path.""" + try: + accept_language = REQUEST['AcceptLanguage'] + except KeyError: + return + + for id in self.accept_methods: + try: + method = getattr(self, id) + method(accept_language) + except: + LOG(self.meta_type, PROBLEM, + 'method "%s" raised an exception.' % id) + + + # Changing the language, useful snippets + security.declarePublic('get_languages_map') + def get_languages_map(self): + """ + Return a list of dictionaries, each dictionary has the language + id, its title and a boolean value to indicate wether it's the + user preferred language, for example: + + [{'id': 'en', 'title': 'English', 'selected': 1}] + + Used in changeLanguageForm. + """ + # For now only LPM instances are considered to be containers of + # multilingual data. + try: + ob = self.getLocalPropertyManager() + except AttributeError: + ob = self + + ob_language = ob.get_selected_language() + ob_languages = ob.get_available_languages() + + langs = [] + for x in ob_languages: + langs.append({'id': x, 'title': self.get_language_name(x), + 'selected': x == ob_language}) + + return langs + + + security.declarePublic('changeLanguage') + changeLanguageForm = LocalDTMLFile('ui/changeLanguageForm', globals()) + def changeLanguage(self, lang, goto=None, expires=None): + """ """ + request = self.REQUEST + response = request.RESPONSE + + # Changes the cookie (it could be something different) + parent = aq_parent(self) + path = parent.absolute_url()[len(request['SERVER_URL']):] or '/' + if expires is None: + response.setCookie('LOCALIZER_LANGUAGE', lang, path=path) + else: + response.setCookie('LOCALIZER_LANGUAGE', lang, path=path, + expires=unquote(expires)) + # Comes back + if goto is None: + goto = request['HTTP_REFERER'] + + response.redirect(goto) + + security.declarePublic('translate') + def translate(self, domain, msgid, lang=None, *args, **kw): + """ + backward compatibility shim over zope.i18n.translate. Please avoid. + """ + # parameter reordering/mangling necessary + assert not args + if lang is not None: + kw['target_language'] = lang + return translate(msgid, domain=domain, **kw) + +InitializeClass(Localizer) + + +# Hook/unhook the traversal machinery +# Support for copy, cut and paste operations + +def Localizer_moved(object, event): + container = event.oldParent + if container is not None: + unregisterBeforeTraverse(container, object.meta_type) + + container = event.newParent + if container is not None: + id = object.id + container = container.this() + hook = NameCaller(id) + registerBeforeTraverse(container, hook, object.meta_type) diff --git a/product/Localizer/MessageCatalog.py b/product/Localizer/MessageCatalog.py new file mode 100644 index 0000000000000000000000000000000000000000..38c5aae591d65542a62ada954537e2d7f1bfaf0d --- /dev/null +++ b/product/Localizer/MessageCatalog.py @@ -0,0 +1,732 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2007 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# Copyright (C) 2003 Roberto Quero, Eduardo Corrales +# Copyright (C) 2004 Søren Roug +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +This module provides the MessageCatalog base class, which +provides message catalogs for the web. +""" + +# Import from the Standard Library +from base64 import encodestring, decodestring +from hashlib import md5 +from re import compile +from time import gmtime, strftime, time +from urllib import quote + +# Import from polib +import polib + +# Import from Zope +from AccessControl import ClassSecurityInfo +from Acquisition import aq_base +from App.class_init import InitializeClass +from App.Dialogs import MessageDialog +from OFS.ObjectManager import ObjectManager +from OFS.SimpleItem import SimpleItem +from Persistence import PersistentMapping +from ZPublisher import HTTPRequest +from zope.component import getSiteManager +from zope.i18n import interpolate +from zope.i18n.interfaces import ITranslationDomain +from zope.interface import implements + +# Import from Localizer +from interfaces import IMessageCatalog +from LanguageManager import LanguageManager +from LocalFiles import LocalDTMLFile +from utils import charsets, lang_negotiator, _ + + + +########################################################################### +# Utility functions and constants +########################################################################### +def md5text(str): + """Create an MD5 sum (or hash) of a text. It is guaranteed to be 32 bytes + long. + """ + return md5(str.encode('utf-8')).hexdigest() + + +def to_unicode(x, encoding=HTTPRequest.default_encoding): + """In Zope the ISO-8859-1 encoding has an special status, normal strings + are considered to be in this encoding by default. + """ + if isinstance(x, unicode): + return x + return unicode(x, encoding) + + +def to_str(x): + """Make sure we have an (utf-8 encoded) string""" + if isinstance(x, str): + return x + x.encode('utf-8') + +def message_encode(message): + """Encodes a message to an ASCII string. + + To be used in the user interface, to avoid problems with the + encodings, HTML entities, etc.. + """ + if isinstance(message, unicode): + encoding = HTTPRequest.default_encoding + message = message.encode(encoding) + + return encodestring(message) + + +def message_decode(message): + """Decodes a message from an ASCII string. + + To be used in the user interface, to avoid problems with the + encodings, HTML entities, etc.. + """ + message = decodestring(message) + encoding = HTTPRequest.default_encoding + return unicode(message, encoding) + + +def filter_sort(x, y): + return cmp(to_unicode(x), to_unicode(y)) + + +def get_url(url, batch_start, batch_size, regex, lang, empty, **kw): + params = [] + for key, value in kw.items(): + if value is None: + continue + if isinstance(value, unicode): + value = value.encode('utf-8') + params.append('%s=%s' % (key, quote(value))) + + params.extend(['batch_start:int=%d' % batch_start, + 'batch_size:int=%d' % batch_size, + 'regex=%s' % quote(regex), + 'empty=%s' % (empty and 'on' or '')]) + + if lang: + params.append('lang=%s' % lang) + + return url + '?' + '&'.join(params) + + +# Empty header information for PO files (UTF-8 is the default encoding) +empty_po_header = {'last_translator_name': '', + 'last_translator_email': '', + 'language_team': '', + 'charset': 'UTF-8'} + + +########################################################################### +# The Message Catalog class, and ZMI constructor +########################################################################### +manage_addMessageCatalogForm = LocalDTMLFile('ui/MC_add', globals()) +def manage_addMessageCatalog(self, id, title, languages, sourcelang=None, + REQUEST=None): + """ """ + if sourcelang is None: + sourcelang = languages[0] + + self._setObject(id, MessageCatalog(id, title, sourcelang, languages)) + + if REQUEST is not None: + return self.manage_main(self, REQUEST) + + + +class MessageCatalog(LanguageManager, ObjectManager, SimpleItem): + """Stores messages and their translations... + """ + + meta_type = 'MessageCatalog' + implements(IMessageCatalog) + + + security = ClassSecurityInfo() + + + def __init__(self, id, title, sourcelang, languages): + self.id = id + + self.title = title + + # Language Manager data + self._languages = tuple(languages) + self._default_language = sourcelang + + # Here the message translations are stored + self._messages = PersistentMapping() + + # Data for the PO files headers + self._po_headers = PersistentMapping() + for lang in self._languages: + self._po_headers[lang] = empty_po_header + + + ####################################################################### + # ITranslationDomain interface + # zope.i18n.interfaces.ITranslationDomain + ####################################################################### + @property + def domain(self): + """ """ + return unicode(self.id) + + + def translate(self, msgid, mapping=None, context=None, + target_language=None, default=None): + """ """ + msgstr = self.gettext(msgid, lang=target_language, default=default) + return interpolate(msgstr, mapping) + + + ####################################################################### + # Private API + ####################################################################### + def get_message_key(self, message): + if message in self._messages: + return message + # A message may be stored as unicode or byte string + encoding = HTTPRequest.default_encoding + if isinstance(message, unicode): + message = message.encode(encoding) + else: + message = unicode(message, encoding) + if message in self._messages: + return message + + + def get_translations(self, message): + message = self.get_message_key(message) + return self._messages[message] + + + def get_tabs_message(self, REQUEST): + message = REQUEST.get('manage_tabs_message') + if message is None: + return None + return unicode(message, 'utf-8') + + + ####################################################################### + # Public API + ####################################################################### + security.declarePublic('message_exists') + def message_exists(self, message): + """ """ + return self._messages.has_key(message) + + + security.declareProtected('Manage messages', 'message_edit') + def message_edit(self, message, language, translation, note): + """ """ + self._messages[message][language] = translation + self._messages[message]['note'] = note + + + security.declareProtected('Manage messages', 'message_del') + def message_del(self, message): + """ """ + del self._messages[message] + + + security.declarePublic('gettext') + def gettext(self, message, lang=None, add=1, default=None): + """Returns the message translation from the database if available. + + If add=1, add any unknown message to the database. + If a default is provided, use it instead of the message id + as a translation for unknown messages. + """ + if not isinstance(message, (str, unicode)): + raise TypeError, 'only strings can be translated.' + + message = message.strip() + + if default is None: + default = message + + # Add it if it's not in the dictionary + if add and not self._messages.has_key(message) and message: + self._messages[message] = PersistentMapping() + + # Get the string + if self._messages.has_key(message): + m = self._messages[message] + + if lang is None: + # Builds the list of available languages + # should the empty translations be filtered? + available_languages = list(self._languages) + + # Imagine that the default language is 'en'. There is no + # translation from 'en' to 'en' in the message catalog + # The user has the preferences 'en' and 'nl' in that order + # The next two lines make certain 'en' is shown, not 'nl' + if not self._default_language in available_languages: + available_languages.append(self._default_language) + + # Get the language! + lang = lang_negotiator(available_languages) + + # Is it None? use the default + if lang is None: + lang = self._default_language + + if lang is not None: + return m.get(lang) or default + + return default + + + __call__ = gettext + + + ####################################################################### + # Management screens + ####################################################################### + manage_options = ( + {'label': u'Messages', 'action': 'manage_messages', + 'help': ('Localizer', 'MC_messages.stx')}, + {'label': u'Properties', 'action': 'manage_propertiesForm'}, + {'label': u'Import', 'action': 'manage_Import_form', + 'help': ('Localizer', 'MC_importExport.stx')}, + {'label': u'Export', 'action': 'manage_Export_form', + 'help': ('Localizer', 'MC_importExport.stx')}) \ + + LanguageManager.manage_options \ + + SimpleItem.manage_options + + + ####################################################################### + # Management screens -- Messages + ####################################################################### + security.declareProtected('Manage messages', 'manage_messages') + manage_messages = LocalDTMLFile('ui/MC_messages', globals()) + + + security.declarePublic('get_namespace') + def get_namespace(self, REQUEST): + """For the management interface, allows to filter the messages to + show. + """ + # Check whether there are languages or not + languages = self.get_languages_mapping() + if not languages: + return {} + + # Input + batch_start = REQUEST.get('batch_start', 0) + batch_size = REQUEST.get('batch_size', 15) + empty = REQUEST.get('empty', 0) + regex = REQUEST.get('regex', '') + message = REQUEST.get('msg', None) + + # Build the namespace + namespace = {} + namespace['batch_size'] = batch_size + namespace['empty'] = empty + namespace['regex'] = regex + + # The language + lang = REQUEST.get('lang', None) or languages[0]['code'] + namespace['language'] = lang + + # Filter the messages + query = regex.strip() + try: + query = compile(query) + except: + query = compile('') + + messages = [] + for m, t in self._messages.items(): + if query.search(m) and (not empty or not t.get(lang, '').strip()): + messages.append(m) + messages.sort(filter_sort) + # How many messages + n = len(messages) + namespace['n_messages'] = n + + # Calculate the start + while batch_start >= n: + batch_start = batch_start - batch_size + if batch_start < 0: + batch_start = 0 + namespace['batch_start'] = batch_start + # Select the batch to show + batch_end = batch_start + batch_size + messages = messages[batch_start:batch_end] + # Batch links + namespace['previous'] = get_url(REQUEST.URL, batch_start - batch_size, + batch_size, regex, lang, empty) + namespace['next'] = get_url(REQUEST.URL, batch_start + batch_size, + batch_size, regex, lang, empty) + + # Get the message + message_encoded = None + translations = {} + if message is None: + if messages: + message = messages[0] + translations = self.get_translations(message) + message = to_unicode(message) + message_encoded = message_encode(message) + else: + message_encoded = message + message = message_decode(message_encoded) + translations = self.get_translations(message) + message = to_unicode(message) + namespace['message'] = message + namespace['message_encoded'] = message_encoded + namespace['translations'] = translations + namespace['translation'] = translations.get(lang, '') + namespace['note'] = translations.get('note', '') + + # Calculate the current message + namespace['messages'] = [] + for x in messages: + x = to_unicode(x) + x_encoded = message_encode(x) + url = get_url( + REQUEST.URL, batch_start, batch_size, regex, lang, empty, + msg=x_encoded) + namespace['messages'].append({ + 'message': x, + 'message_encoded': x_encoded, + 'current': x == message, + 'url': url}) + + # The languages + for language in languages: + code = language['code'] + language['name'] = _(language['name'], language=code) + language['url'] = get_url(REQUEST.URL, batch_start, batch_size, + regex, code, empty, msg=message_encoded) + namespace['languages'] = languages + + return namespace + + + security.declareProtected('Manage messages', 'manage_editMessage') + def manage_editMessage(self, message, language, translation, note, + REQUEST, RESPONSE): + """Modifies a message. + """ + message_encoded = message + message = message_decode(message_encoded) + message_key = self.get_message_key(message) + self.message_edit(message_key, language, translation, note) + + url = get_url(REQUEST.URL1 + '/manage_messages', + REQUEST['batch_start'], REQUEST['batch_size'], + REQUEST['regex'], REQUEST.get('lang', ''), + REQUEST.get('empty', 0), + msg=message_encoded, + manage_tabs_message=_(u'Saved changes.')) + RESPONSE.redirect(url) + + + security.declareProtected('Manage messages', 'manage_delMessage') + def manage_delMessage(self, message, REQUEST, RESPONSE): + """ """ + message = message_decode(message) + message_key = self.get_message_key(message) + self.message_del(message_key) + + url = get_url(REQUEST.URL1 + '/manage_messages', + REQUEST['batch_start'], REQUEST['batch_size'], + REQUEST['regex'], REQUEST.get('lang', ''), + REQUEST.get('empty', 0), + manage_tabs_message=_(u'Saved changes.')) + RESPONSE.redirect(url) + + + ####################################################################### + # Management screens -- Properties + # Management screens -- Import/Export + # FTP access + ####################################################################### + security.declareProtected('View management screens', + 'manage_propertiesForm') + manage_propertiesForm = LocalDTMLFile('ui/MC_properties', globals()) + + + security.declareProtected('View management screens', 'manage_properties') + def manage_properties(self, title, REQUEST=None, RESPONSE=None): + """Change the Message Catalog properties. + """ + self.title = title + + if RESPONSE is not None: + RESPONSE.redirect('manage_propertiesForm') + + + # Properties management screen + security.declareProtected('View management screens', 'get_po_header') + def get_po_header(self, lang): + """ """ + # For backwards compatibility + if not hasattr(aq_base(self), '_po_headers'): + self._po_headers = PersistentMapping() + + return self._po_headers.get(lang, empty_po_header) + + + security.declareProtected('View management screens', 'update_po_header') + def update_po_header(self, lang, + last_translator_name=None, + last_translator_email=None, + language_team=None, + charset=None, + REQUEST=None, RESPONSE=None): + """ """ + header = self.get_po_header(lang) + + if last_translator_name is None: + last_translator_name = header['last_translator_name'] + + if last_translator_email is None: + last_translator_email = header['last_translator_email'] + + if language_team is None: + language_team = header['language_team'] + + if charset is None: + charset = header['charset'] + + header = {'last_translator_name': last_translator_name, + 'last_translator_email': last_translator_email, + 'language_team': language_team, + 'charset': charset} + + self._po_headers[lang] = header + + if RESPONSE is not None: + RESPONSE.redirect('manage_propertiesForm') + + + + security.declareProtected('View management screens', 'manage_Import_form') + manage_Import_form = LocalDTMLFile('ui/MC_Import_form', globals()) + + + security.declarePublic('get_charsets') + def get_charsets(self): + """ """ + return charsets[:] + + + security.declarePublic('manage_export') + def manage_export(self, x, REQUEST=None, RESPONSE=None): + """Exports the content of the message catalog either to a template + file (locale.pot) or to an language specific PO file (<x>.po). + """ + # Get the PO header info + header = self.get_po_header(x) + last_translator_name = header['last_translator_name'] + last_translator_email = header['last_translator_email'] + language_team = header['language_team'] + charset = header['charset'] + + # PO file header, empty message. + po_revision_date = strftime('%Y-%m-%d %H:%m+%Z', gmtime(time())) + pot_creation_date = po_revision_date + last_translator = '%s <%s>' % (last_translator_name, + last_translator_email) + + if x == 'locale.pot': + language_team = 'LANGUAGE <LL@li.org>' + else: + language_team = '%s <%s>' % (x, language_team) + + r = ['msgid ""', + 'msgstr "Project-Id-Version: %s\\n"' % self.title, + '"POT-Creation-Date: %s\\n"' % pot_creation_date, + '"PO-Revision-Date: %s\\n"' % po_revision_date, + '"Last-Translator: %s\\n"' % last_translator, + '"Language-Team: %s\\n"' % language_team, + '"MIME-Version: 1.0\\n"', + '"Content-Type: text/plain; charset=%s\\n"' % charset, + '"Content-Transfer-Encoding: 8bit\\n"', + '', ''] + + + # Get the messages, and perhaps its translations. + # Convert keys to unicode for proper sorting. + d = {} + if x == 'locale.pot': + filename = x + for k in self._messages.keys(): + d[to_unicode(k, encoding=charset)] = u"" + else: + filename = '%s.po' % x + for k, v in self._messages.items(): + k = to_unicode(k, encoding=charset) + d[k] = to_unicode(v.get(x, ""), encoding=charset) + + # Generate the file + def backslashescape(x): + x = to_str(x) + quote_esc = compile(r'"') + x = quote_esc.sub('\\"', x) + + trans = [('\n', '\\n'), ('\r', '\\r'), ('\t', '\\t')] + for a, b in trans: + x = x.replace(a, b) + + return x + + # Generate sorted msgids to simplify diffs + dkeys = d.keys() + dkeys.sort() + for k in dkeys: + r.append('msgid "%s"' % backslashescape(k)) + v = d[k] + r.append('msgstr "%s"' % backslashescape(v)) + r.append('') + + if RESPONSE is not None: + RESPONSE.setHeader('Content-type','application/data') + RESPONSE.setHeader('Content-Disposition', + 'inline;filename=%s' % filename) + + return '\n'.join(r2) + + + security.declareProtected('Manage messages', 'po_import') + def po_import(self, lang, data): + """ """ + messages = self._messages + + # Load the data + po = polib.pofile(data) + encoding = to_str(po.encoding) + for entry in po: + msgid = to_unicode(entry.msgid, encoding=encoding) + if msgid: + msgstr = to_unicode(entry.msgstr or '', encoding=encoding) + if not messages.has_key(msgid): + messages[msgid] = PersistentMapping() + messages[msgid][lang] = msgstr + + # Set the encoding (the full header should be loaded XXX) + self.update_po_header(lang, charset=encoding) + + + security.declareProtected('Manage messages', 'manage_import') + def manage_import(self, lang, file, REQUEST=None, RESPONSE=None): + """ """ + # XXX For backwards compatibility only, use "po_import" instead. + if isinstance(file, str): + content = file + else: + content = file.read() + + self.po_import(lang, content) + + if RESPONSE is not None: + RESPONSE.redirect('manage_messages') + + + def objectItems(self, spec=None): + """ """ + for lang in self._languages: + if not hasattr(aq_base(self), lang): + self._setObject(lang, POFile(lang)) + + r = MessageCatalog.inheritedAttribute('objectItems')(self, spec) + return r + + + ####################################################################### + # TMX support + security.declareProtected('View management screens', 'manage_Export_form') + manage_Export_form = LocalDTMLFile('ui/MC_Export_form', globals()) + + + ####################################################################### + # Backwards compatibility (XXX) + ####################################################################### + + hasmsg = message_exists + hasLS = message_exists # CMFLocalizer uses it + +class POFile(SimpleItem): + """ """ + + security = ClassSecurityInfo() + + + def __init__(self, id): + self.id = id + + + security.declareProtected('FTP access', 'manage_FTPget') + def manage_FTPget(self): + """ """ + return self.manage_export(self.id) + + + security.declareProtected('Manage messages', 'PUT') + def PUT(self, REQUEST, RESPONSE): + """ """ + body = REQUEST['BODY'] + self.po_import(self.id, body) + RESPONSE.setStatus(204) + return RESPONSE + +InitializeClass(MessageCatalog) +InitializeClass(POFile) + + +# This dict define the alias between old Translation Service catalog id +# and new Localizer Message Catalog. +message_catalog_aliases = { "Default": "default" + , "ui" : "erp5_ui" + , "content": "erp5_content" + } + +# "invert" message_catalog_aliases mapping +message_catalog_alias_sources = {} +for name, value in message_catalog_aliases.items(): + message_catalog_alias_sources.setdefault(value, []).append(name) + +def MessageCatalog_moved(object, event): + # FIXME This does not work if what we move is the folder that contains + # the message catalog + container = event.oldParent + if container is not None: + sm = getSiteManager(container) + sm.unregisterUtility(object, ITranslationDomain, event.oldName) + # unregister old aliases + oldAliases = message_catalog_alias_sources.get(event.oldName, ()) + sm = getSiteManager(event.oldParent) + for alias in oldAliases: + sm.unregisterUtility(object, ITranslationDomain, alias) + + container = event.newParent + if container is not None: + sm = getSiteManager(container) + sm.registerUtility(object, ITranslationDomain, event.newName) + + # register new aliases + newAliases = message_catalog_alias_sources.get(event.newName, ()) + sm = getSiteManager(event.newParent) + for alias in newAliases: + sm.registerUtility(object, ITranslationDomain, alias) diff --git a/product/Localizer/README.txt b/product/Localizer/README.txt new file mode 100644 index 0000000000000000000000000000000000000000..0737439eab7988edb75abb855663b98c6a246e76 --- /dev/null +++ b/product/Localizer/README.txt @@ -0,0 +1,30 @@ +This is a fork of the Localizer product, as found originally at: + +https://github.com/hforge/Localizer + +All functionality not explicitly used by ERP5 has been or will be removed. + +Moreover, all monkey-patches, and all dependencies on itools should be +moved into native Zope APIs. + +The copyright notice of the original code is as follows: + +Author and License + + Copyright 2001-2010 J. David Ibáñez (jdavid@itaapy.com) + 2001 Universitat Jaume I + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see + "http://www.gnu.org/licenses/":http://www.gnu.org/licenses/ + diff --git a/product/Localizer/__init__.py b/product/Localizer/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..d13417c44302bd8de4422960492a6c05efb02eb9 --- /dev/null +++ b/product/Localizer/__init__.py @@ -0,0 +1,72 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2005 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from the Standard Library +import os.path + +# Import from Zope +from App.ImageFile import ImageFile +from DocumentTemplate.DT_String import String + +# Import from Localizer +from patches import get_request +import Localizer, MessageCatalog +from LocalFiles import LocalDTMLFile +from GettextTag import GettextTag + + + +misc_ = {'arrow_left': ImageFile('img/arrow_left.gif', globals()), + 'arrow_right': ImageFile('img/arrow_right.gif', globals()), + 'eye_opened': ImageFile('img/eye_opened.gif', globals()), + 'eye_closed': ImageFile('img/eye_closed.gif', globals()), + 'obsolete': ImageFile('img/obsolete.gif', globals())} + + +def initialize(context): + # Check Localizer is not installed with a name different than Localizer + # (this is a common mistake). + filename = os.path.split(os.path.split(__file__)[0])[1] + if filename != 'Localizer': + message = ( + "The Localizer product must be installed within the 'Products'" + " folder with the name 'Localizer' (not '%s').") % filename + raise RuntimeError, message + + # XXX This code has been written by Cornel Nitu, it may be a solution to + # upgrade instances. +## root = context._ProductContext__app +## for item in root.PrincipiaFind(root, obj_metatypes=['LocalContent'], +## search_sub=1): +## item[1].manage_upgrade() + + # Register the Localizer + context.registerClass(Localizer.Localizer, + constructors = (Localizer.manage_addLocalizerForm, + Localizer.manage_addLocalizer), + icon = 'img/localizer.gif') + + # Register MessageCatalog + context.registerClass( + MessageCatalog.MessageCatalog, + constructors = (MessageCatalog.manage_addMessageCatalogForm, + MessageCatalog.manage_addMessageCatalog), + icon='img/message_catalog.gif') + + context.registerHelp() + + # Register the dtml-gettext tag + String.commands['gettext'] = GettextTag diff --git a/product/Localizer/charsets.txt b/product/Localizer/charsets.txt new file mode 100644 index 0000000000000000000000000000000000000000..ed9b3e8f7ddb6994ebf3719a16fef5889dd0c8a5 --- /dev/null +++ b/product/Localizer/charsets.txt @@ -0,0 +1,41 @@ +ASCII +ISO-8859-1 +ISO-8859-2 +ISO-8859-3 +ISO-8859-4 +ISO-8859-5 +ISO-8859-6 +ISO-8859-7 +ISO-8859-8 +ISO-8859-9 +ISO-8859-13 +ISO-8859-15 +KOI8-R +KOI8-U +CP850 +CP866 +CP874 +CP932 +CP949 +CP950 +CP1250 +CP1251 +CP1252 +CP1253 +CP1254 +CP1255 +CP1256 +CP1257 +GB2312 +EUC-JP +EUC-KR +EUC-TW +BIG5 +BIG5-HKSCS +GBK +GB18030 +SHIFT_JIS +JOHAB +TIS-620 +VISCII +UTF-8 diff --git a/product/Localizer/configure.zcml b/product/Localizer/configure.zcml new file mode 100644 index 0000000000000000000000000000000000000000..08f9ff804068209ddc704a322e7a742a1c0c079b --- /dev/null +++ b/product/Localizer/configure.zcml @@ -0,0 +1,13 @@ +<configure xmlns="http://namespaces.zope.org/zope"> + + <subscriber + for="Products.Localizer.Localizer.Localizer + zope.lifecycleevent.interfaces.IObjectMovedEvent" + handler="Products.Localizer.Localizer.Localizer_moved" /> + + <subscriber + for="Products.Localizer.MessageCatalog.MessageCatalog + zope.lifecycleevent.interfaces.IObjectMovedEvent" + handler="Products.Localizer.MessageCatalog.MessageCatalog_moved" /> + +</configure> diff --git a/product/Localizer/docs/.gitignore b/product/Localizer/docs/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..269ab03a2369dc872d2484ee3cedf245e9135301 --- /dev/null +++ b/product/Localizer/docs/.gitignore @@ -0,0 +1,3 @@ +_build +figures +autodoc/modules diff --git a/product/Localizer/docs/conf.py b/product/Localizer/docs/conf.py new file mode 100644 index 0000000000000000000000000000000000000000..ddd61c57c014ec9afc01e9e2f2052f24022ec7ce --- /dev/null +++ b/product/Localizer/docs/conf.py @@ -0,0 +1,216 @@ +# -*- coding: utf-8 -*- +# +# Localizer documentation build configuration file, created by +# sphinx-quickstart on Fri Nov 19 19:55:33 2010. +# +# This file is execfile()d with the current directory set to its containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys, os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) + +# -- General configuration ----------------------------------------------------- + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be extensions +# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +extensions = [] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'Localizer' +copyright = u'2010, J. David Ibáñez' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '1.2' +# The full version, including alpha/beta/rc tags. +release = '1.2.3' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = ['_build'] + +# The reST default role (used for this markup: `text`) to use for all documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + + +# -- Options for HTML output --------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'default' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# "<project> v<release> documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a <link> tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'Localizerdoc' + + +# -- Options for LaTeX output -------------------------------------------------- + +# The paper size ('letter' or 'a4'). +#latex_paper_size = 'letter' + +# The font size ('10pt', '11pt' or '12pt'). +#latex_font_size = '10pt' + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, documentclass [howto/manual]). +latex_documents = [ + ('index', 'Localizer.tex', u'Localizer Documentation', + u'J. David Ibáñez', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Additional stuff for the LaTeX preamble. +#latex_preamble = '' + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output -------------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'localizer', u'Localizer Documentation', + [u'J. David Ibáñez'], 1) +] diff --git a/product/Localizer/docs/index.rst b/product/Localizer/docs/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..b3187ae891270bdc8fad959ea2e4a8e1a8b7e3b1 --- /dev/null +++ b/product/Localizer/docs/index.rst @@ -0,0 +1,117 @@ +.. Localizer documentation master file, created by + sphinx-quickstart on Fri Nov 19 19:55:33 2010. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Welcome to Localizer's documentation! +===================================== + +Localizer is a Zope product that allows to build multilingual web +applictaions. + +.. note:: + + This documentation was written for Localizer 0.9, and has not been + updated since. Though most of it should apply to newer versions of + Localizer, because the API has not changed much. + +Documentation, table of contents: + +.. toctree:: + :maxdepth: 2 + + quick-start + introduction/index + tutorial/index + python-programmers/index + +Other documents of interest (external links): + +* `List of tips <http://www.zope.org/Members/CodeSyntax/DTML_Localizer>`_, by + Luistxo from Code&Syntax. +* The `slides <http://>`_ and the `example <http://>`_ I used for the + talk about Localizer at the fifth Hispalinux congress held in Madrid + (Spain). The `article + <http://congreso.hispalinux.es/ponencias/index.en.html>`_ is available too. + Everything is in spanish only. + + +Products based on Localizer +=========================== + +* `CMFLocalizer <http://zope.org/Members/fafhrd/CMFLocalizer>`_, adds + filesystem based message catalogs to the CMF. By Kim Nikolay. +* `Base18 + <http://www.nexedi.org/sections/software/base18_multilingual/view>`_, + explores new ways to + manage multilingual content (for the CMF). By Jean-Paul Smets. +* `Localizer + CMF <http://www.zope.org/Members/rthaden/HowToLocCMFProduct>`_ + HowTo and product. Multilingual content for the CMF with Localizer. By + Rainer Thaden. +* `Translation Service + <http://www.zope.org/Members/efge/TranslationService>`_. Lets to use the + i18n ZPT namespace with Localizer. By Florent Guillaume. + + +Sites powered by Localizer +========================== + +Here is a list of multilingual web sites that use Localizer. If you've used +Localizer to build a web site or to develop a multilingual Python product or +for something else, please tell me, send me a url if it's public and a short +explanation of how you used Localizer or your experience with it, and I'll +include it on the list. + +* `LLEU <http://lleu2001.uji.es/>`_ + + I developed Localizer to build this web site, it included workflow for + multilingual documents and an automatic translation system to aid human + translators. + +* `Code&Syntax <http://www.codesyntax.com/>`_ + + Code&Syntax is a Zope company specialized in internationalization and + localization. They're the Localizer users number 1, and have provided me + very valuable feedback. Other multilingual web sites based on Localizer of + this company are: + + + `Udal Euskaltegiak <http://www.udaleuskaltegiak.net/>`_ + + `Egoibarra <http://www.egoibarra.com/>`_ + + `Hotsak.com <http://www.hotsak.com/>`_ + +* `Castagnari <http://www.castagnari.com/>`_ + + + +Credits +======= + +This list has not been updated for a while. + + +----------------------+----------------------------------+ + | Lead developer | **Juan David Ibáñez Palomar** | + +----------------------+----------------------------------+ + | Developers | **Andrés Marzal Varó** | + | + + + | | **Bjorn Stabell** | + | + + + | | **Florent Guillaume** | + | + + + | | **Jean-Paul Smets** | + +----------------------+----------------------------------+ + | Graphic designers | **Maite Rementeria** | + +----------------------+----------------------------------+ + | Product translators | **Arnaud Lefèvre** (french) | + | + + + | | **Danny William Adair** (german) | + | + + + | | **Gabor Suveg** (hungarian) | + | + + + | | **Kazuya Fukamachi** (japanese) | + | + + + | | **Serge Stinckwich** (french) | + | + + + | | **Garikoitz Araolaza** (basque) | + | + + + | | **Luistxo Fernandez** (basque) | + +----------------------+----------------------------------+ diff --git a/product/Localizer/docs/introduction/i18n.rst b/product/Localizer/docs/introduction/i18n.rst new file mode 100644 index 0000000000000000000000000000000000000000..03f0e28674e198f38301e68de11f1f1dbec14a19 --- /dev/null +++ b/product/Localizer/docs/introduction/i18n.rst @@ -0,0 +1,81 @@ +Internationalization and localization +===================================== + +Software needs to be adapted to the local conditions. For example, a word +processor has labels, menus and buttons that need to be translated, the dates +must be shown in the rigth locale format, the help system and any other text +must be available in the user's language. The software industry has faced this +problem for years, I've tried to learn from other's experience to provide Zope +users a solution for their needs. The name of this solution is Localizer. + + +To be multilingual +------------------ + +Imagine that you've developed an application, it provides a user interface +with text for example in english. Then your application gets success and +starts to be used in non-english speaking regions. These new users will begin +to ask you about a version in their language. Then, how to do it? + +There're several approaches to solve this problem, you could for example fork +the software and provide a version in english, another in spanish, etc.. This +is the quickest solution as you won't need any special infrastructure to +implement it, just fork. But, of course, fork is not an option, it would be +too much work to keep the different versions in sync. + +The best you can do is to look at what other developers have already done for +their software. Then you'll discover that this problem is addressed in two +steps: + +* Internationalization (i18n) + + The operation by which a program is made aware of and able to support + multiple languages. This is done once and forever. + + Of course, you could write internationalized software since the begining. + You'll probably do it this way if you've already developed multilingual + software before. + + In written language the **i18n** abbreviation is usually used for the term + internationalization. The letter **i** is the first letter of the term, the + letter **n** is the last letter of the term, **18** is the number of letters + between the **i** and the **n**. + +* Localization (l10n) + + The operation by which, in a program already internationalized, one gives + the program all the needed information so that it can adapt itself to handle + its input and output in a fashion which is correct for some native language + and cultural habits. This is done once per language. + + This information needs to be maintained to keep it updated in every version + of the software. + + For the term localization the abbreviation **l10n** is used. I'm sure you + already know where the **l**, the **n** and the **10** come from. + + +To localize +----------- + +But this is not only about being multilingual, this is about adapting your +software, your application, your web site to the local conditions of the +users. + +For example, imagine you work for a company that sells computers in the U.S.A. +and in the United Kingdom. The language of the both countries is english, you +don't need to translate the text of the company's web site. But perhaps the +company offers different computer models in each country, the contact address +will probably be different too. This means that the web site will show +different content for each market, you'll need to adapt it to the users local +conditions. + + +Continue reading please +----------------------- + +In this introduction I've tried to answer the question : what +internationalization and localization are about?. In the following sections +we'll see the details of every concrete problem, at least the ones that for +now Localizer address. + diff --git a/product/Localizer/docs/introduction/index.rst b/product/Localizer/docs/introduction/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..f9cc8e4e290b9e2a3709672cbb50210837a99b61 --- /dev/null +++ b/product/Localizer/docs/introduction/index.rst @@ -0,0 +1,15 @@ +Introduction +============ + +This chapter provides background information about the topic. And also links +if you want to learn more. The sections are: + +.. toctree:: + :maxdepth: 1 + + i18n + unicode + multilingual-software + multilingual-data + web + diff --git a/product/Localizer/docs/introduction/multilingual-data.rst b/product/Localizer/docs/introduction/multilingual-data.rst new file mode 100644 index 0000000000000000000000000000000000000000..1d2f781af1ab0b256ebcba43560c4deb360f45f7 --- /dev/null +++ b/product/Localizer/docs/introduction/multilingual-data.rst @@ -0,0 +1,93 @@ +Multilingual data +================= + +Internatiolizing software is the easy part, managing multilingual content is +the hard one. + +In a multilingual information system there will be people that introduces +content and people that translates it. To keep the information synchronized +and to reduce the translation costs as much as possible are the goals. + + +The problem +----------- + +Here are some elements to be considered: + +* A translator aware workflow + + When a new document is introduced into the system or when an existing + document changes, the translators must be notified. The same document could + be in different states depending on the language, for example the english + version could be ready to be published while the french version could be + unfinished yet. + + Translators are specialized, they can't translate from any language to any + language. For example a translator could do translations from spanish to + french, while another one could translate from english to french and + spanish, or between spanish and french (in both directions). + +* Identify the original content. + + It's better to translate from the original content than from another + translation because, usually, through the translation process there's a + quality loss. This information is important to improve the translation + process and also for the end user, who always should know which is the + original version of the document, the one that contains the more accurate + data. + +* Reduce the translation cost + + Translations are expensive, you should use automatic translation systems to + reduce the cost. The output of these systems is not good enough to directly + publish it, but can help a lot to the human translators to do their work + quickly. + + It's also important to provide translators the possibility to work off-line, + this is specially important when external translators are used, sometimes + freelancers. + + +Translation memories +-------------------- + +The standard solution to address these problems is known as translation +memories systems. Basically, the procedure used is: + +1. First the text is splitted in sentences +2. Each sentence is automatically translated, usually using fuzzy matching + against a database. The result is proposed to the translator. +3. The translator corrects the translation and the good one is re-introduced + in the system to improve future translations. + +Sophisticated tools for translators with easy to use interfaces, workflow and +versioning systems to manage the content and advanced automatic translation +engines are an important part of the solution. + + +.. seealso:: + + Related links + + Institutions: + + * the `Localisation Research Centre <http://www.localisation.ie/>`_ + * the `Localisation Standards Industry Association + <http://www.lisa.org/>`_ + + Publications: + + * `Localisation focus + <http://www.localisation.ie/resources/locfocus/index.htm>`_ + + Standards: + + * the `Translation Memory eXchange <http://www.lisa.org/tmx>`_ + standard; + + Papers: + + * `Evaluation of Natural Language Processing Systems + <http://www.issco.unige.ch/ewg95>`_, final report + + diff --git a/product/Localizer/docs/introduction/multilingual-software.rst b/product/Localizer/docs/introduction/multilingual-software.rst new file mode 100644 index 0000000000000000000000000000000000000000..f27768c8bd05aad2ff0719f17d2cb675d608a3a6 --- /dev/null +++ b/product/Localizer/docs/introduction/multilingual-software.rst @@ -0,0 +1,34 @@ +Multilingual software +===================== + +Software provides always a user interface, doesn't matters wether it's a text +based interface, a graphical application or a web site. The error messages, +the buttons, the labels, etc.. need to be translated. + +This is a well known problem for which there're available mature solutions. +But first we'll introduce some basic terminology that will be needed to read +the rest of this guide: + +Message + A piece of text that needs to be translated. +Message translation + The translation of a message. +Message catalog + A database that stores the message translations, and provides ways to get + them. + + +Gettext +------- + +In the free software world the de facto standard solution to translate the +user interfaces are the `GNU gettext +<http://www.gnu.org/software/gettext/gettext.html>`_ utilities. Gettext is +used to translate the GNU software and also other projects like KDE. + +Initially developed to translate C or C++ programs its usage has grown and now +it's also used with other languages. For example, Python 2.x includes a +gettext module that lets to use the GNU gettext tools, and the last versions +of the well know `Mailman <http://www.list.org/>`_ application use it to +provide a multilingual interface. + diff --git a/product/Localizer/docs/introduction/unicode.rst b/product/Localizer/docs/introduction/unicode.rst new file mode 100644 index 0000000000000000000000000000000000000000..d02170f1d74c3dd82d681eb7c5255b39414583a2 --- /dev/null +++ b/product/Localizer/docs/introduction/unicode.rst @@ -0,0 +1,69 @@ +Unicode +======= + + +Encoding systems +---------------- + +Computers deal with numbers, this means that letters and other characters are +internally represented as numbers. Basically, an encoding system associates +each character with a number. For example, for the encoding named ASCII the +number 97 represents the character "a". So a text is just a sequence of +characters, and for computers it's just a sequence of numbers. + +There're many different encoding systems, each one is used to represent +characters from one or more languages. For example the ASCII encoding is used +for english; ISO-8859-1 can be used with spanish, french or german; EUC-JP +represents japanese characters; etc.. + +The problem is that different encodings can use the same number to represent +different charecters, then they're incompatible. This is a problem for example +if you want to mix different languages in the same text. + + +Unicode +------- + +To solve this problem Unicode appeared. Unicode is an encoding system that is +able to represent all the characters in the world. Using Unicode it's possible +to mix different languages in the same text without problems. + + +Python +------ + +The Python programming language provides two types of strings, normal strings +and unicode strings. Internationalized software written in Python always +should use unicode strings for text. + +Normal strings represent sequences of bytes while unicode strings represent +sequences of characters. Unicode strings provide a higher abstraction layer +for the programmer that lets to forget, most of the time, about the encoding +issues. + +Encoding becomes an issue when an unicode string needs to be serialized, for +example when the server response is sent to the browser. Then an specific +encoding needs to be choosen. For fully multilingual applications this should +be UTF-8, which is a particular representation of the Unicode character set. + + +.. seealso:: + + Related links + + General information about Unicode: + + * `Official Unicode web site <http://www.unicode.org/>`_ + * `UTF-8 and Unicode FAQ for Unix/Linux + <http://www.cl.cam.ac.uk/~mgk25/unicode.html>`_ + * `Unicode and Multilingual Support in HTML, Fonts, Web Browsers and + Other Applications <http://www.alanwood.net/unicode/>`_ + + Python resources for Unicode: + + * `Python Unicode Tutorial + <http://www.reportlab.com/i18n/python_unicode_tutorial.html>`_ + * `Python Internationalization Special Interest Group + <http://www.python.org/sigs/i18n-sig/>`_ + + diff --git a/product/Localizer/docs/introduction/web.rst b/product/Localizer/docs/introduction/web.rst new file mode 100644 index 0000000000000000000000000000000000000000..72da418e3820cb78c800a4b7c98d892cd23c2528 --- /dev/null +++ b/product/Localizer/docs/introduction/web.rst @@ -0,0 +1,31 @@ +The web +======= + +A personal computer is configured with what is known as a locale, it specifies +the encoding system, the user language, the timezone and other parameters that +will be used by the applications to show their interfaces adapted to the user. + +When an application starts, for example a word processor, it reads the locale +information, it only needs to be done once, at the begining. This process is +more complex in a networking environment like the web, where there are many +computers involved with different locale configurations. + +In the web the client must send the locale information to the server each time +it requests a page. With this information the server can decide in which +language send the data. + +Things become more complex when there is a cache between the server and the +client, then the needed dialog to choose the language involves more parties, +the server, the client and the cache. + + +.. seealso:: + + Related links + + * `HTTP 1.1 language negotiation + <http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4>`_ + * `Apache content negotiation + <http://httpd.apache.org/docs-2.0/content-negotiation.html>`_ + + diff --git a/product/Localizer/docs/python-programmers/index.rst b/product/Localizer/docs/python-programmers/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..38e0f318f534d4fda3d1567f418e7bf51dd329a9 --- /dev/null +++ b/product/Localizer/docs/python-programmers/index.rst @@ -0,0 +1,13 @@ +For Python programmers +====================== + +This chapter explains what you can do with Localizer if you're a Python +programmer. Right now there's only one section, this chapter is far to be +complete. + +.. toctree:: + :maxdepth: 1 + + python-products + multilingual-content + diff --git a/product/Localizer/docs/python-programmers/multilingual-content.rst b/product/Localizer/docs/python-programmers/multilingual-content.rst new file mode 100644 index 0000000000000000000000000000000000000000..1c9832ac1e74fbd9720dc7a53a6ce4f490651fd3 --- /dev/null +++ b/product/Localizer/docs/python-programmers/multilingual-content.rst @@ -0,0 +1,36 @@ +Multilingual content +==================== + + +LocalProperty and LocalPropertyManager +-------------------------------------- + +The multilingual features of the LocalContent class are actually provided by +the LocalPropertyManager mixin class. Now I'm going to explain how to develop +your own multilingual classes. + +Let's imagine that you want to manage multilingual articles, each article has +three multilingual properties, the title, the abstract and the body. The +commented code would be:: + + # Import the needed classes from Localizer + from Products.Localizer import LocalAttribute, LocalPropertyManager + + # The class must inherit from LocalPropertyManager + class Article(LocalPropertyManager, SimpleItem): + meta_type = 'Article' + + # The multilingual properties are instances of + # LocalAttribute, they can be class variables. + # The constructor takes 1 argument, which must + # be the name of the attribute. + title = LocalAttribute('title') + abstract = LocalAttribute('abstract') + body = LocalAttribute('body') + + # LocalPropertyManager needs some metadata, + # this is similar to the PropertyManager mixin class. + _local_properties_metadata = ({'id': 'title', 'type': 'string'}, + {'id': 'abstract', 'type': 'text'}, + {'id': 'body', 'type': 'text'}) + diff --git a/product/Localizer/docs/python-programmers/python-products.rst b/product/Localizer/docs/python-programmers/python-products.rst new file mode 100644 index 0000000000000000000000000000000000000000..dccf7935eaa2eed87b594766a32017795a6bf1af --- /dev/null +++ b/product/Localizer/docs/python-programmers/python-products.rst @@ -0,0 +1,76 @@ +Python products +=============== + +The Localizer product also provides facilities to internationalize and +localize python products. These facilities are built around the GNU gettext +utilities, the standard in the free software community. + + +Internationalize +---------------- + + +* DTML and ZPT + + The LocalDTMLFile and LocalPageTemplateFile classes must be used instead + of the DTMLfile and PageTemplateFile classes:: + + from Products.Localizer import LocalDTMLFile, LocalPageTemplateFile + + .... + + manage_addForm = LocalDTMLFile('addForm', globals()) + + Then the messages will be translated using the gettext method: + + .. code-block:: xml + + <dtml-var "gettext('Hello world!')"> + <span tal:replace="python:gettext('Hello world!')"> + Hello world! + </span> + + +* Python code + + Import the needed stuff:: + + from Products.Localizer import utils + + _ = utils.translation(globals()) + + The underscode (\_) is used to translate messages. + :: + + def x(self, ...): + return _(u'Hello world!') + + + Messages must be unicode strings (not byte strings), otherwise the + ``zgettext.py`` script (see below) won't detect them. + + +Localize +-------- + +The messages and their translations are stored in ".po" and ".mo" files, in +the locale directory within the product. + +To help with the localization task Localizer includes the script zgettext.py. +Use it from your product directory, for example: + +.. code-block:: sh + + ../Localizer/zgettext.py *.dtml -l es fr + +will create the locale directory and the locale.pot, es.po and fr.po files +inside. Then the human translators will translate the messages in the ".po" +files. Finally, type: + +.. code-block:: sh + + ../Localizer/zgettext.py -m + +to compile the ".po" files and generate the ".mo" files that will be used at +run time to get the translations. + diff --git a/product/Localizer/docs/quick-start.rst b/product/Localizer/docs/quick-start.rst new file mode 100644 index 0000000000000000000000000000000000000000..20b487e8143db50bd45bff8aab1354bb3505e402 --- /dev/null +++ b/product/Localizer/docs/quick-start.rst @@ -0,0 +1,37 @@ +Quick start (5 min) +=================== + +.. highlight:: xml + + +Output the "Hello world" message in multiple languages +------------------------------------------------------ + +#. Create a folder named, for example, TestLocalizer, and go inside it. +#. Create a MessageCatalog named, for example, gettext. +#. Go to the management interfaces of the message catalog, go to the tab + languages and add the languages you want. +#. Create a DTML method named test_gettext. +#. In the DTML method type:: + + <dtml-var "gettext('Hello world!')"> + +#. View the DTML method. +#. Go to the management screens of the message catalog, provide translations + to the message "Hello world!". +#. View again the DTML method, change the language configuration of your + browser and reload the page to see how the message changes. + + +Add a language selection box +---------------------------- + +1. Add a Localizer instance. +2. Edit the DTML method test_gettext and add:: + + <dtml-var "Localizer.changeLanguageForm()"> + +3. View again the DTML method and use the selection box to change the language + (you need to active cookies and javascript in your browser). + + diff --git a/product/Localizer/docs/tutorial/LocalContent.rst b/product/Localizer/docs/tutorial/LocalContent.rst new file mode 100644 index 0000000000000000000000000000000000000000..4deadb30e8229bfa252261ff6c9eaf15f321898f --- /dev/null +++ b/product/Localizer/docs/tutorial/LocalContent.rst @@ -0,0 +1,66 @@ +LocalContent +============ + +The **LocalContent** meta type is used to store and manage multilingual data. +A single object has different properties, multilingual and monolingual, for +the multilingual ones it's possible to have different language versions. + +To explain how to use local content objects we'll go through an step by step +example: + +1. Go to the management screens and create a new LocalContent object. + + Just type an id, for example "index_html", and a list of languages (iso + codes) separated by spaces, for example "en es fr" for english, spanish, + and french (later you'll be able to add and remove languages through the + management screens). + +2. Edit the object, put some text in the "title" and "body" properties for + each language. + +3. Create a template to view the object, for example a Page Template named + view + + .. code-block:: html + + <html> + <head> + <title tal:content="here/title">Title</title> + </head> + <body> + <h1 tal:content="here/title">Title</h1> + <p tal:content="here/body">Body</p> + </body> + </html> + +4. View the object with the url <path>/index_html/view. Try to change the + language configuration of your browser and reload the page to see how it + changes. + +5. Try to look the url <path>/index_html, it doesn't works. Rename the + template view to default_template and try again. + + When no template is specified a default one named default_template is used. + +6. You can change the default template too, just go to the object index_html, + go to the Properties tab and add a new property named default_template of + type string, choose for example view as its value. Now rename + default_template to view, and visit the url <path>/index_html again. + + This is useful because sometimes different "LocalContent" objects should + have different default templates. + + +Indexing and searching +---------------------- + +Local content objects are catalog aware, if you have a catalog named Catalog +in the acquisition path your local content objects will be automatically +cataloged when you create, modify or delete them. + +Local content objects have computed attributes of the form <property>_<lang>, +for instance title_es returns the title of the object in spanish and body_en +returns the english version of the body. This feature lets you, for example, +search through all language versions of a local content object simply by using +these attributes as indexes in the catalog. + diff --git a/product/Localizer/docs/tutorial/LocalFolder.rst b/product/Localizer/docs/tutorial/LocalFolder.rst new file mode 100644 index 0000000000000000000000000000000000000000..3082b3cdfb17fd892953e9385580567bb59ea37a --- /dev/null +++ b/product/Localizer/docs/tutorial/LocalFolder.rst @@ -0,0 +1,51 @@ +LocalFolder +=========== + +The LocalFolder meta type provides a generic solution to internationalize any +Zope object. Use it to provide images in multiple languages, output dates in +locale formats, etc.. + +To explain how to use local folder objects we will go through an step by step +example: + +1. Go to the management screens and create a new LocalFolder object. + + Use "datetime" as the id and "en es" (for english and spanish) as the list + of languages (later you'll be able to add and remove languages through the + management screens). + +2. Go to the management screens, to the Attributes tab, and add the ids of the + multilingual objects you want to have, for example, add short_date. + +3. Go to the Contents tab and add an object for each language. For example, + add two Python scripts, short_date_en and short_date_es (put datetime in + their parameters list). The body of the english version could be:: + + return datetime.strftime('%Y/%m/%d') + + + The body of the spanish version could be:: + + return datetime.strftime('%d/%m/%Y') + +4. Now leave the local folder object and create, for example, a DTML method, + call it today. Its body could be: + + .. code-block:: xml + + <dtml-var standard_html_header> + + <dtml-var "datetime.short_date(_.DateTime())"> + + <dtml-var standard_html_footer> + +5. View the today method and change the configuration of your browser between + english and spanish to see how it changes. + +In short, what local folder objects do is to let to use different language +versions of any Zope object (Python scripts, images, folders, etc..), which +version is used with each request depends on the language negotiation +facilities. Each multilingual object must be specified in the Attributes tab, +each language version has the form <name>_<language>. For example, if the +multilingual attribute is logo the spanish version's id is logo_es. + diff --git a/product/Localizer/docs/tutorial/Localizer.rst b/product/Localizer/docs/tutorial/Localizer.rst new file mode 100644 index 0000000000000000000000000000000000000000..d103689054c503452e92b893f8922cf3bfb1044d --- /dev/null +++ b/product/Localizer/docs/tutorial/Localizer.rst @@ -0,0 +1,79 @@ +Localizer +========= + +.. highlight:: xml + +By default only the browser configuration (the **AcceptLanguage** header) is +used to choose the language. Localizer implements the HTTP standard, it +represents the user prefered languages as a tree where each node has a quality +between 0.0 and 1.0 (a higher quality means the language is more prefered by +the user). For more information see the HTTP protocol specification. + +The **Localizer** meta type lets to use other criterias to choose the +language. Usually there's one instance in the root of the web site. Its id is +always Localizer and can't be changed. + +A Localizer object has a property named **accept_methods** (of type tokens) +which contains a list of method ids. Each method specified in this list will +be called every time the folder where the Localizer object lives is traversed. +By default it includes two builtin methods that add two new criterias to +choose the language: + +accept_cookie + + Lets to specify the language with the cookie LOCALIZER_LANGUAGE, which + must contain a language code. This method assigns a quality of 2.0 to the + language specified in the cookie. This way it takes precedence over the + browser configuration. + +accept_path + + Lets to specify the language in the url. For example, if there's a + Localizer object at the root of the web site, the url + http://www.example.com/es/index.html will set the quality for spanish to + 3.0, this way it will take precedence over the browser configuration and + the cookie. + + +Customize +--------- + +To change the language negotiation policy to fit your needs you have to modify +the property accept_methods. You can remove any of the builtin methods (if you +don't want to use cookies or to specify the language in the url) and add new +ones that usually will be implemeted as Python scripts. + +The functions that appear in the accept_methods list receive a parameter that +represents the tree of the user prefered languages. This object offers a +complete API, but usually only the method set will be used. + +For example, create a Python script within the Localizer instance named +accept_french, add accept_language to its parameter list. The body of the +script could be the line: + +.. code-block:: python + + accept_language.set("fr", 4.0) + +This would set french as the user prefered language with a quality of 4.0, +taking precedence over the browser, the cookie and the laguage specified in +the url. Finally just add its id to the list accept_methods. + + +The change language form +------------------------ + +The Localizer object also provides the HTML form changeLanguageForm and its +action, changeLanguage. They provide a quick way to implement a language +selection box, the action modifies the LOCALIZER_LANGUAGE cookie. + +For DTML type:: + + <dtml-var "Localizer.changeLanguageForm()"> + +For ZPT type:: + + <tal:block content="structure here/Localizer/changeLanguageForm" /> + + + diff --git a/product/Localizer/docs/tutorial/MessageCatalog.rst b/product/Localizer/docs/tutorial/MessageCatalog.rst new file mode 100644 index 0000000000000000000000000000000000000000..f6204b1a68678543486e18cb072a2fa6df99c749 --- /dev/null +++ b/product/Localizer/docs/tutorial/MessageCatalog.rst @@ -0,0 +1,97 @@ +MessageCatalog +============== + +.. highlight:: xml + +The Localizer product provides the class MessageCatalog, it stores messages +and their translations and provides a web interface to manage them. They're +useful to translate the application interface: labels, buttons, etc.. + +The messages are stored in the ZODB, though they can be exported and imported +to and from "po" files. It's also possible to manage a message catalog through +FTP. + + +Getting translations +-------------------- + +To get the translations message catalogs provide the gettext method, for +example:: + + <dtml-var "messages.gettext('Hello world!')"> + +The message catalog is callable, this means it's possible to use a shorter +version:: + + <dtml-var "messages('Hello world!')"> + +The gettext method accepts two optional parameters, it's signature is: + +.. code-block:: python + + gettext(message, language=None, add=1) + +The parameters are: + + +----------+--------------------------------------+ + | message | The message to be translated. | + +----------+--------------------------------------+ + | language | The destination language, if None | + | | (default) the selection language | + | | algortihm will be used to choose | + | | the destination language. | + +----------+--------------------------------------+ + | add | If true (default) the message will | + | | be automatically added to the | + | | catalog if it doesn't exists. | + +----------+--------------------------------------+ + + +dtml-gettext +------------ + +For long messages the tag dtml-gettext can be more comfortable:: + + <dtml-gettext> + This could be a very long message. + </dtml-gettext> + +It accepts several parameters, they're: + + +------------------------------+--------------------------------+ + | lang [#msg-catalog-rq]_ | The target language (string). | + +------------------------------+--------------------------------+ + | lang_expr [#msg-catalog-rq]_ | The target language (string | + | | expression). | + +------------------------------+--------------------------------+ + | verbatim | If set the message will be | + | | interpreted as it is, | + | | otherwise (default) any blank | + | | characters will be interpreted | + | | as just one space character. | + +------------------------------+--------------------------------+ + | catalog | The id of the catalog from | + | | where the translations will be | + | | obtained. | + +------------------------------+--------------------------------+ + | data | If present the message will be | + | | interpreted as a formatted | + | | string and data will contain | + | | the tuple or dictionary to be | + | | passed to the string. | + +------------------------------+--------------------------------+ + + +.. [#msg-catalog-rq] Only one (or none) can be provided. + + +Zope Page Templates +------------------- + +Message catalogs can also be used from ZPT, for example:: + + <span tal:replace="python:here.messages('Hello world!')"> + Hello world! + </span> + + diff --git a/product/Localizer/docs/tutorial/example.rst b/product/Localizer/docs/tutorial/example.rst new file mode 100644 index 0000000000000000000000000000000000000000..c17e9e7820729a0f067c5667883814d754036da4 --- /dev/null +++ b/product/Localizer/docs/tutorial/example.rst @@ -0,0 +1,6 @@ +Example of a Localizer web site +=============================== + +Nothing yet... + + diff --git a/product/Localizer/docs/tutorial/index.rst b/product/Localizer/docs/tutorial/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..a51e16f4bdd9d1c35a8220d7c6eb42b6f33f3b0f --- /dev/null +++ b/product/Localizer/docs/tutorial/index.rst @@ -0,0 +1,21 @@ +Tutorial +======== + +This chapter explains how to use and when to use the four meta types provided +by the Localizer product. They are: + +.. toctree:: + :maxdepth: 1 + + MessageCatalog + Localizer + LocalContent + LocalFolder + +Finally, to know how to put all this together we're going to see with an +example the typical organization of a Localizer based multilingual web site: + +.. toctree:: + :maxdepth: 1 + + example diff --git a/product/Localizer/help/LF_add.stx b/product/Localizer/help/LF_add.stx new file mode 100644 index 0000000000000000000000000000000000000000..73bc2c608cd8fabf5e99303f4fdf02ef55a0b799 --- /dev/null +++ b/product/Localizer/help/LF_add.stx @@ -0,0 +1,11 @@ +Localizer - Add Locale Folder + + Description + + This view allows to create a new Locale Folder. + + Controls + + Id -- The id of the Locale Folder, must be a language code. + + Title -- The optional title for the Locale Folder. diff --git a/product/Localizer/help/LM_languages.stx b/product/Localizer/help/LM_languages.stx new file mode 100644 index 0000000000000000000000000000000000000000..63d8ea9e20ca3070990a5b962dd27756cec19381 --- /dev/null +++ b/product/Localizer/help/LM_languages.stx @@ -0,0 +1,14 @@ +Localizer - Manage languages + + Description + + This view allows to manage the available languages (add and delete) and + to set the default language. + + Controls + + Add -- Adds a new language. + + Delete -- Removes the selected languages. + + Change -- Changes the default language. diff --git a/product/Localizer/help/LM_upgrade.stx b/product/Localizer/help/LM_upgrade.stx new file mode 100644 index 0000000000000000000000000000000000000000..c9546e407c8c02a509620ac49a5699c83e24c9ba --- /dev/null +++ b/product/Localizer/help/LM_upgrade.stx @@ -0,0 +1,12 @@ +Localizer - Upgrade LocalPropertyManager + + Description + + This view allows to upgrade an object when a new version of its class + has been installed that requires changes to the object. + + This feature is specific to the Localizer product. + + Controls + + Upgrade -- Upgrades the object. diff --git a/product/Localizer/help/LPM_properties.stx b/product/Localizer/help/LPM_properties.stx new file mode 100644 index 0000000000000000000000000000000000000000..0dd5eb93cab89b1923b47ae7c07dac7ed25df289 --- /dev/null +++ b/product/Localizer/help/LPM_properties.stx @@ -0,0 +1,32 @@ +Localizer - Manage local properties + + Description + + This view allows to manage the local properties. + + Add properties + + To add a new property enter its name and select its type, then click + the 'Add' button. + + + Property selector + + Below the form to add new properties there's an interface that allows + to modify and delete them. + + Only one local property is edited at a time, it's highlighted in the + property selection bar. To select a different one click on it's name. + + If there're lots of properties the selection bar will have two buttons + to browse the properties at the right side of the bar. + + Delete a property + + To delete the property being edited click the 'Delete' button. + + Edit properties + + The body of the interface shows all the language versions for the + selected property. To modify them introduce the right text and click + the 'Save changes' button. diff --git a/product/Localizer/help/LocalContent_add.stx b/product/Localizer/help/LocalContent_add.stx new file mode 100644 index 0000000000000000000000000000000000000000..92303d6f2ed0369251e71ed2ba3ab232c3333336 --- /dev/null +++ b/product/Localizer/help/LocalContent_add.stx @@ -0,0 +1,12 @@ +Localizer - Add Local Content + + Description + + This view allows to create a new Local Content object. + + Controls + + Id -- The id of the object. + + Languages -- The list of available languages that the Local Content + will have. \ No newline at end of file diff --git a/product/Localizer/help/LocalFolder_add.stx b/product/Localizer/help/LocalFolder_add.stx new file mode 100644 index 0000000000000000000000000000000000000000..23072fe0bd401a12c1886c5d95542437e755f810 --- /dev/null +++ b/product/Localizer/help/LocalFolder_add.stx @@ -0,0 +1,14 @@ +Localizer - Add Local Folder + + Description + + This view allows to create a new Local Folder. + + Controls + + Id -- The id of the Local Folder, must be a language code. + + Title -- The optional title for the Local Folder. + + Languages -- The list of available languages that the local folder will + have. diff --git a/product/Localizer/help/Localizer_add.stx b/product/Localizer/help/Localizer_add.stx new file mode 100644 index 0000000000000000000000000000000000000000..f85c002aaff72edd6420f654ba4eb7322ea8651b --- /dev/null +++ b/product/Localizer/help/Localizer_add.stx @@ -0,0 +1,15 @@ +Localizer - Add Localizer + + Description + + This view allows to create a new Localizer. + + Controls + + Id -- The id of the object is 'Localizer'. + + Title -- The optional title for the Localizer. + + Languages -- The list of available languages that the Localizer will have. + + Add -- Adds the Localizer instance. diff --git a/product/Localizer/help/MC_add.stx b/product/Localizer/help/MC_add.stx new file mode 100644 index 0000000000000000000000000000000000000000..5e250cb023dbdfd4af37f71b9210edbff6c12dd4 --- /dev/null +++ b/product/Localizer/help/MC_add.stx @@ -0,0 +1,14 @@ +Localizer - Add Message Catalog + + Description + + This view allows to create a new Message Catalog. + + Controls + + 'Id' -- The id of the message catalog + + Title -- The optional title for the message catalog. + + Languages -- The list of available languages that the message catalog + will have. \ No newline at end of file diff --git a/product/Localizer/help/MC_importExport.stx b/product/Localizer/help/MC_importExport.stx new file mode 100644 index 0000000000000000000000000000000000000000..58be4824b0d1e34819e200a17dcdfebcbf9c40af --- /dev/null +++ b/product/Localizer/help/MC_importExport.stx @@ -0,0 +1,18 @@ +Localizer - Import/Export messages + + Description + + This views allows to import and export messages. + + Controls + + File / Language -- The file (and language) to be exported. + + Export -- Exports the file. + + File -- The file that you want to import. + + Language -- The language of the translations contained in the file to + be imported. + + Import -- Imports the file. diff --git a/product/Localizer/help/MC_messages.stx b/product/Localizer/help/MC_messages.stx new file mode 100644 index 0000000000000000000000000000000000000000..de1a8ad73213a63e9f0ce8e06d25d94feca608d6 --- /dev/null +++ b/product/Localizer/help/MC_messages.stx @@ -0,0 +1,34 @@ +Message Catalog - Manage messages. + + Description + + This screen lets to manage the message catalog, it lets to remove + messages and to edit the translations. + + The screen is divided in two parts, the working area at the left + and the navigation system at the right. + + The working area + + It is divided in two parts, at the top there is a non editable + text area that contains the message to be translated. + + At the bottom there's an editable text area wich lets to change + the translation. Above this text area there is a menu which lets + to change the language that is being edited. + + Finally, there are two buttons, one saves the translation and the + other removes the current message. + + Navigation system + + It lets to browse the messages and is divided in two parts. + + At the top there is a search form that lets to show only a subset of + the messages, following two criterias. The first one is wether to show + all the messages or only those that have an empty translation. The + second criteria if used will only show the messages that match the + specified string. + + Below the search form there is a list with all the found messages, + which can be used to change the message that is being edited. diff --git a/product/Localizer/img/arrow_left.gif b/product/Localizer/img/arrow_left.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac0f4d5193ad65ce3f9f2a3da821d9b071d27be4 Binary files /dev/null and b/product/Localizer/img/arrow_left.gif differ diff --git a/product/Localizer/img/arrow_right.gif b/product/Localizer/img/arrow_right.gif new file mode 100644 index 0000000000000000000000000000000000000000..2546cd069ede88365a08f346d14ade5e048b351f Binary files /dev/null and b/product/Localizer/img/arrow_right.gif differ diff --git a/product/Localizer/img/eye_closed.gif b/product/Localizer/img/eye_closed.gif new file mode 100644 index 0000000000000000000000000000000000000000..16aca1112454e6c9bcb71f77ed1f5699d9549947 Binary files /dev/null and b/product/Localizer/img/eye_closed.gif differ diff --git a/product/Localizer/img/eye_opened.gif b/product/Localizer/img/eye_opened.gif new file mode 100644 index 0000000000000000000000000000000000000000..6eb379dfa185bb43317e8e94900069ab81adbfaf Binary files /dev/null and b/product/Localizer/img/eye_opened.gif differ diff --git a/product/Localizer/img/local_content.gif b/product/Localizer/img/local_content.gif new file mode 100644 index 0000000000000000000000000000000000000000..11010fc40adda697d21120a435adc81bf006c0e5 Binary files /dev/null and b/product/Localizer/img/local_content.gif differ diff --git a/product/Localizer/img/local_folder.gif b/product/Localizer/img/local_folder.gif new file mode 100644 index 0000000000000000000000000000000000000000..56a298d0b26d89c1baf0d33e24aa8e3e7db3848c Binary files /dev/null and b/product/Localizer/img/local_folder.gif differ diff --git a/product/Localizer/img/localizer.gif b/product/Localizer/img/localizer.gif new file mode 100644 index 0000000000000000000000000000000000000000..ef34ce44416ce374d2d3eef12ba156d5588d53ee Binary files /dev/null and b/product/Localizer/img/localizer.gif differ diff --git a/product/Localizer/img/message_catalog.gif b/product/Localizer/img/message_catalog.gif new file mode 100644 index 0000000000000000000000000000000000000000..c7fcb97f013971892bbe43a1b2aa301569ab0bd9 Binary files /dev/null and b/product/Localizer/img/message_catalog.gif differ diff --git a/product/Localizer/img/obsolete.gif b/product/Localizer/img/obsolete.gif new file mode 100644 index 0000000000000000000000000000000000000000..2be4e8a14ab9567e8876bfe8fbad20f4d717b69d Binary files /dev/null and b/product/Localizer/img/obsolete.gif differ diff --git a/product/Localizer/interfaces.py b/product/Localizer/interfaces.py new file mode 100644 index 0000000000000000000000000000000000000000..3b9e2018d504fd38e334f5edcf5a0b0a1d73a73a --- /dev/null +++ b/product/Localizer/interfaces.py @@ -0,0 +1,28 @@ +# -*- coding: UTF-8 -*- +# Copyright (C) 2010 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from Zope +from zope.interface import Interface +from zope.i18n.interfaces import ITranslationDomain + + +class ILocalizer(Interface): + pass + + +class IMessageCatalog(ITranslationDomain): + pass + diff --git a/product/Localizer/itools/.gitignore b/product/Localizer/itools/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..6c6d48b791213671e1dfe43b2afd8b454a88a206 --- /dev/null +++ b/product/Localizer/itools/.gitignore @@ -0,0 +1,10 @@ +*~ +*.pyc +*.swp +build +dist +MANIFEST +version.txt +locale/*.mo +test/fables/catalog +test/pdf/*.pdf diff --git a/product/Localizer/itools/LICENSE.txt b/product/Localizer/itools/LICENSE.txt new file mode 100644 index 0000000000000000000000000000000000000000..94a9ed024d3859793618152ea559a168bbcbb5e2 --- /dev/null +++ b/product/Localizer/itools/LICENSE.txt @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + <program> Copyright (C) <year> <name of author> + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +<http://www.gnu.org/licenses/>. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +<http://www.gnu.org/philosophy/why-not-lgpl.html>. diff --git a/product/Localizer/itools/README.txt b/product/Localizer/itools/README.txt new file mode 100644 index 0000000000000000000000000000000000000000..0fa58f751a36994cd8cd821168997a9d16fc1826 --- /dev/null +++ b/product/Localizer/itools/README.txt @@ -0,0 +1,47 @@ +This is a stub of the original itools library, containing only the +bare essentials needed for Localizer as used in ERP5. Namely: + + * itools.utils + * itools.i18n + +The intention is that even these few remaining functionalities should +be replaced by native Zope API calls. + +The original itools distribution on which this stub is based is the +0.50 branch of the itools repository at: + +https://github.com/hforge/itools/tree/0.50 + +The original CREDITS.txt file can be seen at: + +https://github.com/hforge/itools/blob/0.50/CREDITS + +The copyright notice of the original code is as follows: + +Copyright +--------- + +Copyright (C) 2002-2008 Juan David Ibáñez Palomar <jdavid@itaapy.com> +Copyright (C) 2005-2008 Luis Arturo Belmar-Letelier <luis@itaapy.com> +Copyright (C) 2005-2008 Hervé Cauwelier <herve@itaapy.com> +Copyright (C) 2005-2008 Nicolas Deram <nicolas@itaapy.com> + +And others. Check the CREDITS file for complete list. + + +License +------- + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. + diff --git a/product/Localizer/itools/__init__.py b/product/Localizer/itools/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..ab98c5bf95c8f273720da1ccd8fa06f09e2c6794 --- /dev/null +++ b/product/Localizer/itools/__init__.py @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2006, 2008 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. diff --git a/product/Localizer/itools/i18n/__init__.py b/product/Localizer/itools/i18n/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..5daae8b091be0e644434a2dfd4d1bee83f8b05b3 --- /dev/null +++ b/product/Localizer/itools/i18n/__init__.py @@ -0,0 +1,52 @@ +# -*- coding: UTF-8 -*- +# Copyright (C) 2006-2008 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# Copyright (C) 2008 Henry Obein <henry@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from itools +from accept import AcceptLanguageType, get_accept, select_language +from accept import init_language_selector +from base import has_language, get_languages, get_language_name +from fuzzy import get_distance, get_similarity, is_similar, get_most_similar +from locale_ import format_date, format_time, format_datetime +from oracle import guess_language, is_asian_character, is_punctuation + + + +__all__ = [ + # accept + 'AcceptLanguageType', + 'get_accept', + 'select_language', + 'init_language_selector', + # fuzzy + 'get_distance', + 'get_similarity', + 'is_similar', + 'get_most_similar', + # locale + 'format_date', + 'format_time', + 'format_datetime', + # oracle + 'guess_language', + 'is_asian_character', + 'is_punctuation', + # languages + 'has_language', + 'get_languages', + 'get_language_name', + ] + diff --git a/product/Localizer/itools/i18n/accept.py b/product/Localizer/itools/i18n/accept.py new file mode 100644 index 0000000000000000000000000000000000000000..676cc790b3b45ca18c58adb413453fc2e0bc49b0 --- /dev/null +++ b/product/Localizer/itools/i18n/accept.py @@ -0,0 +1,169 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2002-2008 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +This module implements the Accept-Language request header of the HTTP +protocol. +""" + +# Import from the Standard Library +import __builtin__ +from decimal import Decimal +from locale import getdefaultlocale + + + +zero = Decimal('0.0') +one = Decimal('1.0') + + + +# FIXME This class belongs to the public API, but it is not exposed since +# we never create it directly (we use AcceptLanguageType). +class AcceptLanguage(dict): + """Implements the Accept-Language tree. + """ + + # Allow unrestricted access to AcceptLanguage and subobjects from Zope + __allow_access_to_unprotected_subobjects__ = 1 + + def set(self, key, quality): + if not isinstance(quality, Decimal): + if not isinstance(quality, str): + quality = str(quality) + quality = Decimal(quality) + + if key == '*': + key = '' + self[key] = quality + + + def get_quality(self, language): + """This method returns the quality of the given language. As defined + by the RFC 2616, if a langage is not defined it inherits the quality + from a "parent" language; for instance, if 'fr-FR' is not defined but + 'fr' is, then 'fr-FR' inherits the quality from 'fr'. + + To make the difference between an exact match and an inherited value, + this method returns a tuple: first value is the quality, and second + value is the number of steps it had to go back in the inheritance + chain (0 for an exact match). + """ + steps = 0 + while language and language not in self: + language = '-'.join(language.split('-')[:-1]) + steps += 1 + + return self.get(language, zero), steps + + + def select_language(self, languages): + """This is the selection language algorithm, it returns the user + prefered language for the given list of available languages, if the + intersection is void returns None. + + The criterias used to select a language are: + + 1. The quality + 2. The distance to the exact match + 3. The order in the 'languages' parameter + """ + language, quality, steps = None, zero, 100 + for lang in languages: + q, s = self.get_quality(lang) + if q > quality or (q and q == quality and s < steps): + language, quality, steps = lang, q, s + + return language + + + +class AcceptLanguageType(object): + + @staticmethod + def decode(data): + """From a string formatted as specified in the RFC2616, it builds a + data structure which provides a high level interface to implement + language negotiation. + """ + data = data.strip() + if not data: + return AcceptLanguage({}) + + accept = {} + for language in data.lower().split(','): + language = language.strip() + if ';' in language: + language, quality = language.split(';') + # Get the number (remove "q=") + quality = Decimal(quality.strip()[2:]) + else: + quality = one + + if language == '*': + language = '' + + accept[language] = quality + + return AcceptLanguage(accept) + + + @staticmethod + def encode(accept): + # Sort + accept = [ (y, x) for x, y in accept.items() ] + accept.sort() + accept.reverse() + # Encode + data = [] + for quality, language in accept: + if language == '': + if quality == zero: + continue + language = '*' + if quality == one: + data.append(language) + else: + data.append('%s;q=%s' % (language, quality)) + return ', '.join(data) + + + +def get_accept(): + language = getdefaultlocale()[0] + if language is None: + language = '' + elif '_' in language: + language = language.replace('_', '-') + language = '%s, %s;q=0.5' % (language, language.split('-')[0]) + + return AcceptLanguageType.decode(language) + + + +def select_language(languages=None): + return get_accept().select_language(languages) + + + +def init_language_selector(language_selector=select_language): + __builtin__.__dict__['select_language'] = language_selector + + +# Set default language selector +init_language_selector(select_language) + + diff --git a/product/Localizer/itools/i18n/base.py b/product/Localizer/itools/i18n/base.py new file mode 100644 index 0000000000000000000000000000000000000000..e32242cef2bc64262c580206cb111d2f0f6d5c33 --- /dev/null +++ b/product/Localizer/itools/i18n/base.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2002-2003, 2007-2008 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from itools +from ..utils import get_abspath + + +# Initializes a dictionary containing the iso 639 language codes/names +languages = {} +filename = get_abspath('languages.txt') +for line in open(filename).readlines(): + line = line.strip() + if line and line[0] != '#': + code, name = line.split(' ', 1) + languages[code] = name + +# Builds a sorted list with the languages code and name +language_codes = languages.keys() +language_codes.sort() +langs = [ {'code': x, 'name': languages[x]} for x in language_codes ] + + + +def has_language(code): + return code in languages + + + +def get_languages(): + """Returns a list of tuples with the code and the name of each language. + """ + return [ x.copy() for x in langs ] + + + +def get_language_name(code): + """Returns the name of a language. + """ + # FIXME The value returned should be a MSG object, but the MSG class comes + # from the itools.gettext module, which is higher level than itools.i18n + if code in languages: + return languages[code] + return u'???' + diff --git a/product/Localizer/itools/i18n/fuzzy.py b/product/Localizer/itools/i18n/fuzzy.py new file mode 100644 index 0000000000000000000000000000000000000000..900d68a6b244a45243dda3cee9793968947d8b91 --- /dev/null +++ b/product/Localizer/itools/i18n/fuzzy.py @@ -0,0 +1,108 @@ +# -*- coding: UTF-8 -*- +# Copyright (C) 2004 Thierry Fromon <from.t@free.fr> +# Copyright (C) 2006-2007 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + +def get_distance(a, b): + """ + This function was giving by Magnus Lie Hetland. It calculates the gap + (mathematical distance) between two strings with the cost of word's + translation inside the string. + """ + # XXX Find URL to original code, check license + c = {} + n = len(a) + m = len(b) + for i in range(0, n+1): + c[i, 0] = i + for j in range(0, m+1): + c[0, j] = j + for i in range(1, n+1): + for j in range(1, m+1): + x = c[i-1, j] + 1 + y = c[i, j-1] + 1 + if a[i-1] == b[j-1]: + z = c[i-1, j-1] + else: + z = c[i-1, j-1] + 1 + c[i, j] = min(x, y, z) + return c[n, m] + + +def get_similarity(a, b): + """ + Return a gap and a percent that takes account of abrevations. + """ + length = max(len(a), len(b)) + distance = get_distance(a, b) + return 1 - (float(distance) / float(length)) + + +def is_similar(a, b, limit=0.8): + """ + Returns True if both text strings are close enough, False otherwise. + The optional parameter 'limit' defines the degree of similarity required + to be considered 'close enough', it is a float value between '0' + (completely different) and '1' (the same string). + """ + return get_similarity(a, b) >= limit + + +def get_most_similar(a, *args): + """ + Returns the text string from 'args' that is closest to the given string. + """ + if not args: + return None + + options = [ (get_similarity(a, x), x) for x in args ] + options.sort() + return options[-1][1] + + +############################################################################## +# XXX To enable this feature a deep work on abbreviations must be done +##dictionary = {u'Monsieur': (u'Mr', u'M', u'M.', u'Mr.'), +## u'Madame': (u'Md', u'Md.')} + +##punctuations = [u'.', u',', u';', u'?', '!', u"'", u'"', u'¡', u'¿'] + + +##def expand_abbreviations(text): +## """ +## Return a text without abrevation. +## """ +## t = ' ' + text + ' ' +## for i in punctuations: +## t = t.replace(i, ' ' + i + ' ') +## for word, abrevations in dictionary.items(): +## for abrevation in abrevations: +## t = t.replace(' ' + abrevation + ' ', ' ' + word + ' ') +## return t + + +##def get_distance(a, b): +## """ +## Return a gap and a percent that takes account of abrevations. +## """ +## a_expanded = expand_abbreviations(a) +## b_expanded = expand_abbreviations(b) +## length = max(len(a), len(b)) +## length_expanded = 5 * max(len(a_expanded), len(b_expanded)) +## gap = get_gap(a, b) +## gap_expanded = 5 * get_gap(a_expanded, b_expanded) +## percent = 100 - 100 * (gap_expanded + gap) / (length_expanded + length) +## return gap, percent diff --git a/product/Localizer/itools/i18n/languages.txt b/product/Localizer/itools/i18n/languages.txt new file mode 100644 index 0000000000000000000000000000000000000000..50282c0b21a5a7e0ceb730768b776190743baeb7 --- /dev/null +++ b/product/Localizer/itools/i18n/languages.txt @@ -0,0 +1,234 @@ +# ISO 639-2 +# http://www.loc.gov/standards/iso639-2/php/code_list.php +# +# Format: "<alpha-2 code> <language name>" + +aa Afar +ab Abkhazian +ae Avestan +af Afrikaans +ak Akan +am Amharic +an Aragonese +ar Arabic +as Assamese +av Avaric +ay Aymara +az Azerbaijani + +ba Bashkir +be Belarusian +bg Bulgarian +bh Bihari +bi Bislama +bm Bambara +bn Bengali +bo Tibetan +br Breton +bs Bosnian + +ca Catalan +ce Chechen +ch Chamorro +co Corsican +cr Cree +cs Czech +cu Church Slavic +cv Chuvash +cy Welsh + +da Danish +de German +de-AU German/Austria +de-DE German/Germany +de-CH German/Switzerland +dv Divehi; Dhivehi; Maldivian +dz Dzongkha + +ee Ewe +el Greek +en English +en-GB English/United Kingdom +en-US English/United States +eo Esperanto +es Spanish +es-AR Spanish/Argentina +es-CO Spanish/Colombia +es-MX Spanish/Mexico +es-ES Spanish/Spain +et Estonian +eu Basque + +fa Persian +ff Fulah +fi Finnish +fj Fijian +fo Faroese +fr French +fr-BE French/Belgium +fr-CA French/Canada +fr-FR French/France +fr-CH French/Switzerland +fy Frisian + +ga Irish +gd Gaelic +gl Galician +gn Guarani +gu Gujarati +gv Manx + +ha Hausa +he Hebrew +hi Hindi +ho Hiri Motu +hr Croatian +ht Haitian +hu Hungarian +hy Armenian +hz Herero + +ia Interlingua +id Indonesian +ie Interlingue; Occidental +ig Igbo +ii Sichuan Yi; Nuosu +ik Inupiak +io Ido +is Icelandic +it Italian +iu Inuktitut + +ja Japanese +jv Javanese + +ka Georgian +kg Kongo +ki Kikuyu; Gikuyu +kj Kuanyama; Kwanyama +kk Kazakh +kl Kalaallisut; Greenlandic +km Khmer +kn Kannada +ko Korean +kr Kanuri +ks Kashmiri +ku Kurdish +kv Komi +kw Cornish +ky Kirghiz; Kyrgyz + +la Latin +lb Luxembourgish +lg Ganda +li Limburgan +ln Lingala +lo Lao +lt Lithuanian +lu Luba-Katanga +lv Latvian + +mg Malagasy +mh Marshallese +mi Maori +mk Macedonian +ml Malayalam +mn Mongolian +mr Marathi +ms Malay +mt Maltese +my Burmese + +na Nauru +nb Norwegian Bokmal +nd Ndebele, North +ne Nepali +ng Ndonga +nl Dutch +nl-BE Dutch/Belgium +nn Norwegian Nyrnosk +no Norwegian +nr Ndebele, South +nv Navajo; Navaho +ny Chichewa; Chewa; Nyanja + +oc Occitan +oj Ojibwa +om Oromo +os Ossetian; Ossetic +or Oriya + +pa Panjabi; Punjabi +pi Pali +pl Polish +ps Pushto; Pashto +pt Portuguese +pt-BR Portuguese/Brazil + +qu Quechua + +rm Romansh +rn Rundi +ro Romanian; Moldavian +ru Russian +rw Kinyarwanda + +sa Sanskrit +sc Sardinian +sd Sindhi +se Sami +sg Sango +si Sinhala; Sinhalese +sk Slovak +sl Slovenian +sm Samoan +sn Shona +so Somali +sq Albanian +sr Serbian +ss Swati +st Sotho +su Sundanese +sv Swedish +sw Swahili + +ta Tamil +te Telugu +tg Tajik +th Thai +ti Tigrinya +tk Turkmen +tl Tagalog +tn Tswana +to Tonga +tr Turkish +ts Tsonga +tt Tatar +tw Twi +ty Tahitian + +ug Uighur; Uyghur +uk Ukrainian +ur Urdu +uz Uzbek + +ve Venda +vi Vietnamese +vo Volapuk + +wa Walloon +wo Wolof + +xh Xhosa + +yi Yiddish +yo Yoruba + +za Zhuang; Chuang +zh Chinese +zh-CN Chinese/China +zh-TW Chinese/Taiwan +zu Zulu + + +# Add here the languages you need diff --git a/product/Localizer/itools/i18n/locale_.py b/product/Localizer/itools/i18n/locale_.py new file mode 100644 index 0000000000000000000000000000000000000000..ac4af6670ca919f7f1ef94265259afaeafbdaac1 --- /dev/null +++ b/product/Localizer/itools/i18n/locale_.py @@ -0,0 +1,65 @@ +# -*- coding: UTF-8 -*- +# Copyright (C) 2007 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +Output dates and times in locale format. +""" + +# Import from itools +from accept import get_accept + + +formats = { + # Date, Time, DateTime + 'en': ('%d/%m/%Y', '%H:%M', '%d/%m/%Y %H:%M'), + 'es': ('%d/%m/%Y', '%H.%M', '%d/%m/%Y %H.%M'), + 'fr': ('%d/%m/%Y', '%Hh%M', '%d/%m/%Y %Hh%M'), + } + + + +available_languages = formats.keys() + + + +def get_format(accept): + # By default use the computer's locale + if accept is None: + accept = get_accept() + + # Negotiate + language = accept.select_language(available_languages) + if language is None: + language = 'en' + + # The format + return formats[language] + + +def format_date(x, accept=None): + format = get_format(accept)[0] + return x.strftime(format) + + +def format_time(x, accept=None): + format = get_format(accept)[1] + return x.strftime(format) + + +def format_datetime(x, accept=None): + format = get_format(accept)[2] + return x.strftime(format) + diff --git a/product/Localizer/itools/i18n/oracle.py b/product/Localizer/itools/i18n/oracle.py new file mode 100644 index 0000000000000000000000000000000000000000..ed48065b0ce2eb6c96858828e77ccea099a4ace6 --- /dev/null +++ b/product/Localizer/itools/i18n/oracle.py @@ -0,0 +1,342 @@ +# -*- coding: UTF-8 -*- +# Copyright (C) 2004 Thierry Fromon <from.t@free.fr> +# Copyright (C) 2004, 2006-2007 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# Copyright (C) 2008 Henry Obein <henry@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +########################################################################### +# To add a new language, edit the dictionaries below: +# +# - positive_chars +# +# Defines special characters (like accentuated characters) that belong +# to the language. +# +# - negative_chars +# +# Defines special characters (like accentuated characters) that do not +# belong to the language. +# +# - positive_words +# +# Defines common words that belong to the language. +# +# - negative_words +# +# Defines some words that do not belong to the language. +########################################################################### + +import unicodedata + +positive_chars = { + u'¡': ['es'], + u'¿': ['es'], + u'ä': ['de'], + u'ß': ['de'], + u'ç': ['fr'], + u'ê': ['fr'], + u'Ã': ['es'], + u'ñ': ['es'], + u'ö': ['de'], + u'ó': ['es'], + u'ü': ['de'], + u'ú': ['es'], + # Asian languages + # Japanese : based on particles (hiragana) + u'ã®': ['ja'], + u'ã¯': ['ja'], + u'ã§': ['ja'], + u'ã«': ['ja'], + u'ãŒ': ['ja'], + u'ã¸': ['ja'], + u'ã‚’': ['ja'], + u'ã‚„': ['ja'], + u'ã¨': ['ja'], + # Japanese : punctuation + u'ã€': ['ja'], + u'。': ['ja'], +} + +negative_chars = {} + + +positive_words = { + u'à ': ['fr'], + u'al': ['es'], + u'an': ['en'], + u'and': ['en'], + u'are': ['en'], + u'as': ['en'], + u'aux': ['fr'], + u'but': ['en'], + u'como': ['es'], + u'con': ['es'], + u'de': ['es', 'fr'], + u'del': ['es'], + u'des': ['fr'], + u'donc': ['fr'], + u'du': ['fr'], + u'el': ['es'], + u'elle': ['fr'], + u'elles': ['fr'], + u'es': ['es'], + u'est': ['fr'], + u'está': ['es'], + u'et': ['fr'], + u'from': ['en'], + u'hay': ['es'], + u'he': ['en', 'es'], + u'i': ['en'], + u'il': ['fr'], + u'ils': ['fr'], + u'in': ['en'], + u'is': ['en'], + u'it': ['en'], + u'je': ['fr'], + u'las': ['es'], + u'le': ['es', 'fr'], + u'lo': ['es'], + u'les': ['es', 'fr'], + u'los': ['es'], + u'mais': ['fr'], + u'no': ['en', 'es'], + u'nous': ['fr'], + u'nueva': ['es'], + u'o': ['es'], + u'of': ['en'], + u'on': ['en'], + u'or': ['en'], + u'où': ['fr'], + u'para': ['es'], + u'pero': ['es'], + u'por': ['es'], + u'que': ['es', 'fr'], + u'qué': ['es'], + u'she': ['en'], + u'su': ['es'], + u'sur': ['fr'], + u'that': ['en'], + u'the': ['en'], + u'their': ['en'], + u'this': ['en'], + u'to': ['en'], + u'tu': ['es', 'fr'], + u'un': ['es', 'fr'], + u'una': ['es'], + u'une': ['fr'], + u'vous': ['fr'], + u'when': ['en'], + u'where': ['en'], + u'y': ['es'], + u'you': ['en'], + u'your': ['en'], +} + + +negative_words = { + u'du': ['es'], +} + + +# One thousand words should be enough +MAX_WORDS = 1000 + + +def is_asian_character(c): + + # get the decimal value of the character + code = int('%04x' % ord(c), 16) + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Compatibility + # CJK Compatibility + # Range: 3300–33FF + if code >= 13056 and code <= 13311: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Compatibility_Forms + # CJK Compatibility Forms + # Range: FE30–FE4F + if code >= 65072 and code <= 65103: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Compatibility_Ideographs + # CJK Compatibility Ideographs + # Range: F900–FAFF + if code >= 63744 and code <= 64255: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Radicals_Supplement + # CJK Radicals Supplement + # Range: 2E80–2EFF + if code >= 11904 and code <= 12031: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Strokes + # CJK Strokes + # Range: 31C0–31EF + if code >= 12736 and code <= 12783: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Unified_Ideographs + # CJK Unified Ideographs + # Range: 4E00–9FBF + if code >= 19968 and code <= 40895: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Unified_Ideographs_Extension_A + # CJK Unified Ideographs Extension A + # Range: 3400–4DBF + if code >= 13312 and code <= 19903: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Halfwidth_and_Fullwidth_Forms + # Halfwidth and Fullwidth Forms + # Range: FF00–FFEF + if code >= 65280 and code <= 65519 : + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Hangul_Compatibility_Jamo + # Hangul Compatibility Jamo + # Range: 3130–318F + #if code >= 12592 and code <= 12687: + # return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Hangul_Jamo + # Hangul Jamo + # Range: 1100–11FF + #if code >= 4352 and code <= 4607: + # return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Hangul_Syllables + # Hangul Syllables + # Range: AC00–D7AF + #if code >= 44032 and code <= 55215: + # return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Hiragana + # Hiragana + # Range: 3040–309F + if code >= 12352 and code <= 12447: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Katakana + # Katakana + # Range: 30A0–30FF + if code >= 12448 and code <= 12543: + return True + + # http://en.wikipedia.org/wiki/Template:Unicode_chart_Katakana_Phonetic_Extensions + # Katakana Phonetic Extensions + # Range: 31F0–31FF + if code >= 12784 and code <= 12799: + return True + + return False + + +def is_punctuation(c): + """Check if c is a punctuation symbol + http://en.wikipedia.org/wiki/Template:Unicode_chart_General_Punctuation + General Punctuation + Range: 2000–206F + + http://en.wikipedia.org/wiki/Template:Unicode_chart_CJK_Symbols_and_Punctuation + CJK Symbols and Punctuation + Range: 3000–303F + """ + + # call isalnum before check character code + if c.isalnum() is False: + return True + + # get the decimal value of the character + code = int('%04x' % ord(c), 16) + if (code >= 8192 and code <= 8303) or (code >= 12288 and code <= 12351): + return True + + return False + + +########################################################################### +# The Code +########################################################################### +def guess_language(text): + chars = {} + words = {} + + # Number of chars and words analyzed + n_chars = 0 + n_words = 0 + + # Look for special chars and words in the given text + word = u'' + for c in text: + n_chars += 1 + c = c.lower() + # Characters + for language in positive_chars.get(c, []): + chars.setdefault(language, 0) + chars[language] += 1 + for language in negative_chars.get(c, []): + chars.setdefault(language, 0) + chars[language] -= 2 + # Words + if c.isalpha(): + word += c + elif word: + for language in positive_words.get(word, []): + words.setdefault(language, 0) + words[language] += 1 + for language in negative_words.get(word, []): + words.setdefault(language, 0) + words[language] -= 2 + word = u'' + # Check limit + n_words += 1 + if n_words >= MAX_WORDS: + break + + # If we found nothing... + if not chars and not words: + return None + + # Depending on the length of the text, the weight given to chars and + # words changes. The minimum distance between two languages too. + if n_chars < 75: + w_weight, c_weight, distance = 1.0, 1.0, 1.0 + elif n_chars < 500: + w_weight, c_weight, distance = 1.2, 2.0, 2.0 + else: + w_weight, c_weight, distance = 1.6, 4.0, 4.0 + + # Calculate the chances the text is written in any language. + languages = [] + for lang in set(chars.keys()) | set(words.keys()): + p = w_weight*words.get(lang, 0) + c_weight*chars.get(lang, 0) + languages.append((p, lang)) + languages.sort() + + # Pick the most probable language, unless the distance to the second is + # too small. + n = len(languages) + if n == 0: + return None + if n == 1: + return languages[0][1] + if languages[-1][0] - languages[-2][0] >= distance: + return languages[-1][1] + + return None + diff --git a/product/Localizer/itools/utils.py b/product/Localizer/itools/utils.py new file mode 100644 index 0000000000000000000000000000000000000000..4b1262d86724da72426f9a7eba4bfebdfcae93ad --- /dev/null +++ b/product/Localizer/itools/utils.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2006-2008 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# Copyright (C) 2008 Gautier Hayoun <gautier.hayoun@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from the Standard Library +from distutils import core +from distutils.errors import DistutilsOptionError +from distutils.command.build_py import build_py +from distutils.command.register import register +from distutils.command.upload import upload +from getpass import getpass +from mimetypes import MimeTypes +from os import getcwd, open as os_open, devnull, dup2, O_RDWR +from os.path import exists, join as join_path, sep, splitdrive +from re import search +from sys import _getframe, platform, exit, stdin, stdout, stderr +from urllib2 import HTTPPasswordMgr +import sys + +def get_abspath(local_path, mname=None): + """Returns the absolute path to the required file. + """ + if mname is None: + mname = _getframe(1).f_globals.get('__name__') + + if mname == '__main__' or mname == '__init__': + mpath = getcwd() + else: + module = sys.modules[mname] + if hasattr(module, '__path__'): + mpath = module.__path__[0] + elif '.' in mname: + mpath = sys.modules[mname[:mname.rfind('.')]].__path__[0] + else: + mpath = mname + + drive, mpath = splitdrive(mpath) + mpath = drive + join_path(mpath, local_path) + + # Make it working with Windows. Internally we use always the "/". + if sep == '\\': + mpath = mpath.replace(sep, '/') + + return mpath diff --git a/product/Localizer/locale/ca.po b/product/Localizer/locale/ca.po new file mode 100644 index 0000000000000000000000000000000000000000..c15f630b9f124f77dcfdd7fd474dfd512aafcdfa --- /dev/null +++ b/product/Localizer/locale/ca.po @@ -0,0 +1,1100 @@ +msgid "" +msgstr "" +"Project-Id-Version: 0.2.1\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2001-06-03 18:06+CET\n" +"Last-Translator: jdavid\n" +"Language-Team: ??\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Afegir" + +#, fuzzy +msgid "Add Local Content" +msgstr "Contingut localitzat" + +#, fuzzy +msgid "Add Local Folder" +msgstr "Nou Localizer" + +#, fuzzy +msgid "Add Localizer" +msgstr "Nou Localizer" + +msgid "Add Message Catalog" +msgstr "" + +#, fuzzy +msgid "Add language" +msgstr "Nou llenguatge" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +msgid "Assamese" +msgstr "" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Idiomes pendents" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "Català " + +msgid "Change" +msgstr "" + +msgid "Charset" +msgstr "" + +#: utils.py:119 +msgid "Chinese" +msgstr "" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Contingut" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +#, fuzzy +msgid "Croatian" +msgstr "Català " + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +msgid "Danish" +msgstr "" + +msgid "Default language" +msgstr "Idioma per defecte" + +msgid "Delete" +msgstr "Esborrar" + +#, fuzzy +msgid "Delete languages" +msgstr "Idioma per defecte" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +#, fuzzy +msgid "File" +msgstr "Filtrar" + +#, fuzzy +msgid "File / Language" +msgstr "Nou llenguatge" + +msgid "Filter" +msgstr "Filtrar" + +#: utils.py:94 +msgid "Find" +msgstr "Cercar" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "Cercar" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +#, fuzzy +msgid "Italian" +msgstr "Català " + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Guardar canvis" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +#, fuzzy +msgid "Language" +msgstr "Nou llenguatge" + +#: LanguageManager.py:157 +#, fuzzy +msgid "Languages" +msgstr "Nou llenguatge" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +#, fuzzy +msgid "Local properties" +msgstr "Propietats" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Nou Localizer" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +msgid "Message to translate" +msgstr "" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +msgid "Messages imported" +msgstr "" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "" + +#, fuzzy +msgid "Original language" +msgstr "Idioma per defecte" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Propietat" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "Propietats" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Propietats" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save changes" +msgstr "Guardar canvis" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +#, fuzzy +msgid "Saved changes." +msgstr "Guardar canvis" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "Seguritat" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "Cercar" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "TÃtol" + +#, fuzzy +msgid "Target language" +msgstr "Idiomes pendents" + +#, fuzzy +msgid "Target languages" +msgstr "Idiomes pendents" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" + +#, fuzzy +msgid "There are no attributes" +msgstr "Idiomes pendents" + +#, fuzzy +msgid "There are no languages" +msgstr "Idiomes pendents" + +#, fuzzy +msgid "There are no messages." +msgstr "Idiomes pendents" + +msgid "This object is up-to-date." +msgstr "" + +msgid "This object must be upgraded." +msgstr "" + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "TÃtol" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" + +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" + +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "Propietats" + +#, fuzzy +msgid "Translations" +msgstr "Traduccions disponibles" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Tipus" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Desfer" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "Veure" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "Your e-mail address" +msgstr "" + +msgid "Your name" +msgstr "" + +#: utils.py:254 +msgid "Zhuang" +msgstr "" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#, fuzzy +#~ msgid "Default" +#~ msgstr "Esborrar" + +#, fuzzy +#~ msgid "Hide this language" +#~ msgstr "Nou llenguatge" + +#, fuzzy +#~ msgid "Show this language" +#~ msgstr "Idiomes pendents" + +#~ msgid "Next" +#~ msgstr "Següent" + +#~ msgid "Previous" +#~ msgstr "Anterior" + +#~ msgid "All" +#~ msgstr "Tots" + +#~ msgid "Batch size" +#~ msgstr "Grandà ria del lot" + +#~ msgid "Full" +#~ msgstr "Total" + +#~ msgid "Localized Content" +#~ msgstr "Contingut localitzat" + +#~ msgid "Localized Strings" +#~ msgstr "Cadenes localitzades" + +#, fuzzy +#~ msgid "New Local Content" +#~ msgstr "Contingut localitzat" + +#~ msgid "New Localizer" +#~ msgstr "Nou Localizer" + +#~ msgid "Only valid" +#~ msgstr "Sols els và lids" + +#~ msgid "Partial" +#~ msgstr "Parcial" + +#~ msgid "Pending languages" +#~ msgstr "Idiomes pendents" + +#~ msgid "Regular expression" +#~ msgstr "Expressió regular" + +#~ msgid "Results" +#~ msgstr "Resultats" + +#~ msgid "Status" +#~ msgstr "Estat" + +#~ msgid "Text" +#~ msgstr "Texte" + +#~ msgid "of" +#~ msgstr "de" diff --git a/product/Localizer/locale/da.po b/product/Localizer/locale/da.po new file mode 100644 index 0000000000000000000000000000000000000000..00138b3523f639784e86b3d2356c340785f360d5 --- /dev/null +++ b/product/Localizer/locale/da.po @@ -0,0 +1,763 @@ +msgid "" +msgstr "Project-Id-Version: Localizer for Zope\n" +"POT-Creation-Date: 2004-03-22 20:03+CET\n" +"PO-Revision-Date: 2004-03-22 20:03+CET\n" +"Last-Translator: <>\n" +"Language-Team: da <>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + + +msgid "(Afan) Oromo" +msgstr "" + +msgid "<em>No languages available, please add them using the <a href='manage_languages'>Languages</a> tab</em>" +msgstr "<em>Ingen tilgængelige sprog, opret den venligst med <a href='manage_languages'>Sprog</a> fanebladet</em>" + +msgid "A Local Content object provides a storage for multilingual (and non multilingual) properties. It also helps you keep your content separated from the logic and the presentation." +msgstr "Et Local Content objekt leverer plads for flersprogede (og enkeltsprogede) egenskaber.\r\nDet hjælper dig ogsÃ¥ med at adskille indhold fra logik og præsentation." + +msgid "A Localizer object lets you customize the language negotiation policy. It lets you use cookies, the path or any other criteria to select the user prefered language." +msgstr "Et Localizer object lader du tilpasse sprogforhandlingspolitikken. Det lader dig bruge cookies, stien eller enhvert andet kriterium for at fange brugerens foretrukne sprog" + +msgid "A local folder is a generic solution to manage any kind of multingual objects, files, images, scripts, etc.." +msgstr "" + +msgid "A message catalog stores messages and its translations to different languages. It provides the <tt>gettext</tt> method to get the right translation for a given message. Message catalogs are useful to translate the application interfaces (labels, buttons, etc..)." +msgstr "Et message catalog indeholder tekster og deres oversættelser til\r\nforskellige sprog. Det leverer <tt>gettext</tt> metoden til at fÃ¥\r\nden rigtige oversættelse for en given tekst. Message catalog'er er\r\nnyttige til at oversætte applikationssnitflader (etiketter, knapper, etc...)." + +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Tilføj" + +msgid "Add Local Content" +msgstr "Opret Local Content" + +msgid "Add Local Folder" +msgstr "Opret Local Folder" + +msgid "Add Localizer" +msgstr "Opret Localizer" + +msgid "Add Message Catalog" +msgstr "Opret Message Catalog" + +msgid "Afar" +msgstr "" + +msgid "Afrikaans" +msgstr "" + +msgid "Albanian" +msgstr "Albansk" + +msgid "Amharic" +msgstr "Amharisk" + +msgid "Arabic" +msgstr "Arabisk" + +msgid "Arabic (Egypt)" +msgstr "Arabisk (egyptisk)" + +msgid "Arabic (Lebanon)" +msgstr "Arabisk (libanesisk)" + +msgid "Armenian" +msgstr "" + +msgid "Assamese" +msgstr "" + +msgid "Attributes" +msgstr "Attributter" + +msgid "Aymara" +msgstr "" + +msgid "Azerbaijani" +msgstr "Aserbadjansk" + +msgid "Bashkir" +msgstr "" + +msgid "Basque" +msgstr "Baskisk" + +msgid "Bengali" +msgstr "" + +msgid "Bengali; Bangla" +msgstr "" + +msgid "Besides the title the header of a PO file stores more information; the name and the email address of the last translator, the email address of the translation team and the charset. The forms below let you modify this information for each language." +msgstr "Udover titlen gemmer hovedet pÃ¥ PO filen pÃ¥ mere information;\r\nnavn og email adresse pÃ¥ den sidste oversætter, email adressen pÃ¥\r\noversættelsesholdet og tegnsættet. Formularerne nedenfor lader\r\ndig ændre denne information for hvert sprog." + +msgid "Bhutani" +msgstr "" + +msgid "Bihari" +msgstr "" + +msgid "Bislama" +msgstr "" + +msgid "Bosnian" +msgstr "Bosnisk" + +msgid "Breton" +msgstr "" + +msgid "Bulgarian" +msgstr "Bulgarsk" + +msgid "Burmese" +msgstr "" + +msgid "Byelorussian" +msgstr "" + +msgid "Cambodian" +msgstr "" + +msgid "Catalan" +msgstr "Katalansk" + +msgid "Change" +msgstr "Ændr" + +msgid "Charset" +msgstr "Tegnsæt" + +msgid "Chinese" +msgstr "Kinesisk" + +msgid "Chinese (simplified)" +msgstr "Kinesisk (forenklet)" + +msgid "Chinese (traditional)" +msgstr "Kinesisk (traditionel)" + +msgid "Chinese/China" +msgstr "Kinesisk/kina" + +msgid "Chinese/Taiwan" +msgstr "Kinesisk/Taiwan" + +msgid "Clear catalog and import all messages" +msgstr "Slet kataloget og importer alle tekster" + +msgid "Contents" +msgstr "Indhold" + +msgid "Corsican" +msgstr "" + +msgid "Croatian" +msgstr "Kroatisk" + +msgid "Czech" +msgstr "Tjekkisk" + +msgid "Danish" +msgstr "Dansk" + +msgid "Delete" +msgstr "Slet" + +msgid "Dutch" +msgstr "Hollandsk" + +msgid "Dutch/Belgium" +msgstr "" + +msgid "English" +msgstr "Engelsk" + +msgid "English/United Kingdom" +msgstr "" + +msgid "English/United States" +msgstr "" + +msgid "Esperanto" +msgstr "Esperanto" + +msgid "Estonian" +msgstr "Estisk" + +msgid "Export" +msgstr "Eksportér" + +msgid "Export messages to PO file" +msgstr "Eksporter tekster til PO fil" + +msgid "Export messages to TMX file" +msgstr "Eksporter tekster til TMX fil" + +msgid "Export messages to XLIFF file" +msgstr "Exporter tekster til XLIFF fil" + +msgid "Faroese" +msgstr "" + +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "Fil" + +msgid "File / Language" +msgstr "Fil / Sprog" + +msgid "Filter" +msgstr "Filtrer" + +msgid "Find" +msgstr "Find" + +msgid "Finnish" +msgstr "Finsk" + +msgid "French" +msgstr "Fransk" + +msgid "French/Belgium" +msgstr "" + +msgid "French/Canada" +msgstr "Fransk/Canada" + +msgid "French/France" +msgstr "Fransk/Frankrig" + +msgid "French/Switzerland" +msgstr "" + +msgid "Frisian" +msgstr "" + +msgid "Galician" +msgstr "Galisisk" + +msgid "Georgian" +msgstr "Georgiansk" + +msgid "German" +msgstr "Tysk" + +msgid "German/Austria" +msgstr "" + +msgid "German/Germany" +msgstr "" + +msgid "German/Switzerland" +msgstr "" + +msgid "Greek" +msgstr "Græsk" + +msgid "Greenlandic" +msgstr "" + +msgid "Guarani" +msgstr "" + +msgid "Gujarati" +msgstr "Gujarati" + +msgid "Hausa" +msgstr "" + +msgid "Hebrew" +msgstr "Hebraisk" + +msgid "Hide this language" +msgstr "Skjul dette sprog" + +msgid "Hindi" +msgstr "Hindi" + +msgid "How much" +msgstr "Hvor meget" + +msgid "Hungarian" +msgstr "Ungarsk" + +msgid "Icelandic" +msgstr "Islandsk" + +msgid "Id" +msgstr "Id" + +msgid "Import" +msgstr "Importér" + +msgid "Import all messages" +msgstr "Importer all tekster" + +msgid "Import only translations for messages that exist already" +msgstr "Importer kun oversættelser for tekster som allerede eksisterer" + +msgid "Import translations from PO file" +msgstr "Importer oversættelser fra PO fil" + +msgid "Import translations from TMX file" +msgstr "Importer oversættelser fra TMX fil" + +msgid "Import translations from XLIFF file" +msgstr "Importer oversættelser fra XLIFF fil" + +msgid "Import/Export" +msgstr "Import/Eksport" + +msgid "Imported %d messages and %d notes" +msgstr "Importerede %d tekster og %d noter" + +msgid "Indonesian" +msgstr "Indonesisk" + +msgid "Interlingua" +msgstr "Interlingua" + +msgid "Interlingue" +msgstr "" + +msgid "Inuktitut" +msgstr "" + +msgid "Inupiak" +msgstr "" + +msgid "Irish" +msgstr "Irsk" + +msgid "Italian" +msgstr "Italiensk" + +msgid "Japanese" +msgstr "Japansk" + +msgid "Javanese" +msgstr "" + +msgid "Kannada" +msgstr "Kannada" + +msgid "Kashmiri" +msgstr "" + +msgid "Kazakh" +msgstr "" + +msgid "Kinyarwanda" +msgstr "" + +msgid "Kirghiz" +msgstr "" + +msgid "Kirundi" +msgstr "" + +msgid "Korean" +msgstr "Koreansk" + +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "Sprog" + +msgid "Languages" +msgstr "Sprog" + +msgid "Laothian" +msgstr "" + +msgid "Latin" +msgstr "" + +msgid "Latvian" +msgstr "Lettisk" + +msgid "Latvian, Lettish" +msgstr "" + +msgid "Lingala" +msgstr "" + +msgid "Lithuanian" +msgstr "Litauisk" + +msgid "Local properties" +msgstr "Lokale egenskaber" + +msgid "Locale folders are useful to store special multilingual objects like images and specific logic. If used the <tt>Localizer</tt> object will transparently add the right locale folder to the url. If you want to use locale folders check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> button." +msgstr "" + +msgid "Macedonian" +msgstr "Makedonsk" + +msgid "Malagasy" +msgstr "" + +msgid "Malay" +msgstr "Malayisk" + +msgid "Malayalam" +msgstr "Malayam" + +msgid "Maltese" +msgstr "" + +msgid "Maori" +msgstr "" + +msgid "Marathi" +msgstr "Marathi" + +msgid "Messages" +msgstr "Tekster" + +msgid "Messages imported" +msgstr "Tekster importeret" + +msgid "Moldavian" +msgstr "" + +msgid "Mongolian" +msgstr "Mongolsk" + +msgid "Name" +msgstr "Navn" + +msgid "Nauru" +msgstr "" + +msgid "Nepali" +msgstr "" + +msgid "Norwegian" +msgstr "Norsk" + +msgid "Note" +msgstr "Note" + +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "Kun uoversatte tekster" + +msgid "Original language" +msgstr "Oprindeligt sprog" + +msgid "Oriya" +msgstr "Oriya" + +msgid "Ownership" +msgstr "Ejerskab" + +msgid "Pashto, Pushto" +msgstr "" + +msgid "Persian" +msgstr "Persisk" + +msgid "Polish" +msgstr "Polsk" + +msgid "Portuguese" +msgstr "Portugisisk" + +msgid "Portuguese/Brazil" +msgstr "" + +msgid "Properties" +msgstr "Egenskaber" + +msgid "Punjabi" +msgstr "" + +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Resultater %d-%d of %d" + +msgid "Rhaeto-Romance" +msgstr "" + +msgid "Romanian" +msgstr "Romansk" + +msgid "Russian" +msgstr "Russisk" + +msgid "Samoan" +msgstr "" + +msgid "Sangho" +msgstr "" + +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "Gem" + +msgid "Save changes" +msgstr "Gem ændringer" + +msgid "Saved changes." +msgstr "Ændringer er gemt." + +msgid "Scots Gaelic" +msgstr "" + +msgid "Security" +msgstr "Sikkerhed" + +msgid "Serbian" +msgstr "Serbisk" + +msgid "Serbo-Croatian" +msgstr "" + +msgid "Sesotho" +msgstr "" + +msgid "Setswana" +msgstr "" + +msgid "Shona" +msgstr "" + +msgid "Show this language" +msgstr "Vis dette sprog" + +msgid "Sindhi" +msgstr "" + +msgid "Sinhalese" +msgstr "" + +msgid "Siswati" +msgstr "" + +msgid "Slovak" +msgstr "Slovakisk" + +msgid "Slovenian" +msgstr "Slovensk" + +msgid "Somali" +msgstr "" + +msgid "Spanish" +msgstr "Spansk" + +msgid "Spanish/Argentina" +msgstr "Spansk/Argentina" + +msgid "Spanish/Colombia" +msgstr "Spansk/Colombia" + +msgid "Spanish/Mexico" +msgstr "Spansk/Mexico" + +msgid "Spanish/Spain" +msgstr "Spansk/Spanien" + +msgid "Sundanese" +msgstr "" + +msgid "Swahili" +msgstr "" + +msgid "Swedish" +msgstr "Svensk" + +msgid "TMX" +msgstr "TMX" + +msgid "TMX stands for Translation Memory eXchange. The purpose of a translation memory is to gather thousands of translations. Whenever you need a term such as <tt>Home</tt> for your website chances are it is already translated, and all you have to do is to load a TMX file to get the translations." +msgstr "" + +msgid "Tagalog" +msgstr "" + +msgid "Tajik" +msgstr "" + +msgid "Tamil" +msgstr "Tamilsk" + +msgid "Target language" +msgstr "Oversættelsessprog" + +msgid "Target languages" +msgstr "Oversættelsessprog" + +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "Team e-mail adresse" + +msgid "Telugu" +msgstr "Telugu" + +msgid "Thai" +msgstr "Thailandsk" + +msgid "The message catalog also supports importing TMX files. You can add new messages and translations importing a TMX file in TMX level 1. Enter the filename and click the <tt>Import</tt> button." +msgstr "" + +msgid "There are no attributes" +msgstr "Der er ingen attributter" + +msgid "There are no languages" +msgstr "Der er ingen sprog" + +msgid "There are no messages." +msgstr "Der er ingen tekster" + +msgid "There are no properties." +msgstr "Der er ingen egenskaber" + +msgid "This <tt>%s</tt> object needs to be upgraded" +msgstr "Dette <tt>%s</tt> objekt skal opgraderes" + +msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +msgstr "Dette <tt>Localizer</tt> objekt behøver ikke at bliver opgraderet" + +msgid "This <tt>Localizer</tt> object needs to be upgraded." +msgstr "Dette <tt>Localizer</tt> objekt skal opgraderes" + +msgid "This object doesn't need to be upgraded." +msgstr "Dette objekt har ikke behov for at blive opgraderet" + +msgid "Tibetan" +msgstr "" + +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "Titel" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" + +msgid "To add a new property enter its name, select its type and click the <tt>Add</tt> button." +msgstr "" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" + +msgid "To change the default language select it and click the <tt>Change</tt> button." +msgstr "" + +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" + +msgid "Tonga" +msgstr "" + +msgid "Tsonga" +msgstr "" + +msgid "Turkish" +msgstr "Tyrkisk" + +msgid "Turkmen" +msgstr "" + +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Type" + +msgid "Uighur" +msgstr "" + +msgid "Ukrainian" +msgstr "Ukrainsk" + +msgid "Undo" +msgstr "Fortryd" + +msgid "Upgrade" +msgstr "Opgradere" + +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "" + +msgid "Uzbek" +msgstr "" + +msgid "Vietnamese" +msgstr "Vietnamesisk" + +msgid "View" +msgstr "Vis" + +msgid "Volapuk" +msgstr "" + +msgid "Welsh" +msgstr "Wallisisk" + +msgid "With this form you can change the title of the message catalog. The title also is used as the value of the <tt>Project-Id-Version</tt> field in the header of the PO files, which are generated when the message catalog is exported." +msgstr "" + +msgid "Wolof" +msgstr "" + +msgid "Xhosa" +msgstr "" + +msgid "Yiddish" +msgstr "Jiddisch" + +msgid "Yoruba" +msgstr "" + +msgid "You can add new messages and translations importing a PO file. Enter the filename, select the language of the translations and click the <tt>Import</tt> button." +msgstr "" + +msgid "You can export the messages and their translations to PO files. Check <tt>locale.pot</tt> to get only the messages, without their translations. Check any other option to get a PO file with the messages and their translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "You can export the messages and their translations to TMX level 1 files. To do that just click the <tt>Export</tt> button." +msgstr "" + +msgid "You can export the messages and their translations to XLIFF files. Check any option to get a XLIFF file with the messages and their translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "Your e-mail address" +msgstr "Din email adresse" + +msgid "Your name" +msgstr "Dit navn" + +msgid "Zhuang" +msgstr "" + +msgid "Zulu" +msgstr "" + +msgid "label" +msgstr "etiket" diff --git a/product/Localizer/locale/de.po b/product/Localizer/locale/de.po new file mode 100644 index 0000000000000000000000000000000000000000..c85121408c40b1ef3e70b99e26c0a96ccb8a8739 --- /dev/null +++ b/product/Localizer/locale/de.po @@ -0,0 +1,1058 @@ +msgid "" +msgstr "" +"Project-Id-Version: PRODUCT VERSION\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2001-05-03 11:05+Neuseeland Normalzeit\n" +"Last-Translator: Danny\n" +"Language-Team: ??\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "Add Local Content" +msgstr "" + +msgid "Add Local Folder" +msgstr "" + +msgid "Add Localizer" +msgstr "" + +msgid "Add Message Catalog" +msgstr "" + +#, fuzzy +msgid "Add language" +msgstr "Neue Sprache" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +msgid "Assamese" +msgstr "" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Neue Sprache" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "" + +msgid "Charset" +msgstr "" + +#: utils.py:119 +msgid "Chinese" +msgstr "" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +msgid "Danish" +msgstr "" + +#, fuzzy +msgid "Default language" +msgstr "Neue Sprache" + +msgid "Delete" +msgstr "Löschen" + +#, fuzzy +msgid "Delete languages" +msgstr "Neue Sprache" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +#, fuzzy +msgid "File" +msgstr "Filtern" + +#, fuzzy +msgid "File / Language" +msgstr "Neue Sprache" + +msgid "Filter" +msgstr "Filtern" + +#: utils.py:94 +msgid "Find" +msgstr "" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +msgid "Hindi" +msgstr "" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Änderungen speichern" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +#, fuzzy +msgid "Language" +msgstr "Neue Sprache" + +#: LanguageManager.py:157 +#, fuzzy +msgid "Languages" +msgstr "Neue Sprache" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +msgid "Localizer" +msgstr "" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +msgid "Message to translate" +msgstr "" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +msgid "Messages imported" +msgstr "" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "" + +#, fuzzy +msgid "Original language" +msgstr "Neue Sprache" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +msgid "Portuguese" +msgstr "" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save changes" +msgstr "Änderungen speichern" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +#, fuzzy +msgid "Saved changes." +msgstr "Änderungen speichern" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +msgid "Sindhi" +msgstr "" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "Titel" + +#, fuzzy +msgid "Target language" +msgstr "Neue Sprache" + +#, fuzzy +msgid "Target languages" +msgstr "Neue Sprache" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" + +#, fuzzy +msgid "There are no attributes" +msgstr "Neue Sprache" + +#, fuzzy +msgid "There are no languages" +msgstr "Neue Sprache" + +#, fuzzy +msgid "There are no messages." +msgstr "Neue Sprache" + +msgid "This object is up-to-date." +msgstr "" + +msgid "This object must be upgraded." +msgstr "" + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "Titel" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" + +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" + +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +msgid "Translate properties" +msgstr "" + +#, fuzzy +msgid "Translations" +msgstr "Verfügbare Ãœbersetzungen" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Typ" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "Your e-mail address" +msgstr "" + +msgid "Your name" +msgstr "" + +#: utils.py:254 +msgid "Zhuang" +msgstr "" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#, fuzzy +#~ msgid "Default" +#~ msgstr "Löschen" + +#, fuzzy +#~ msgid "Show this language" +#~ msgstr "Neue Sprache" + +#~ msgid "Next" +#~ msgstr "Nächste" + +#~ msgid "Previous" +#~ msgstr "Vorherige" + +#~ msgid "Full" +#~ msgstr "Vollständig" + +#~ msgid "Partial" +#~ msgstr "Partiell" + +#~ msgid "Regular expression" +#~ msgstr "Regulärer Ausdruck" + +#~ msgid "Results" +#~ msgstr "Ergebnisse" + +#~ msgid "Text" +#~ msgstr "Text" + +#~ msgid "of" +#~ msgstr "von" diff --git a/product/Localizer/locale/en.po b/product/Localizer/locale/en.po new file mode 100644 index 0000000000000000000000000000000000000000..20702cb9bea9a0dd2f0505a53446b74be8100207 --- /dev/null +++ b/product/Localizer/locale/en.po @@ -0,0 +1,10 @@ +msgid "" +msgstr "" +"Project-Id-Version: 0.3.0\n" +"POT-Creation-Date: 2001-10-13 19:10+CET\n" +"PO-Revision-Date: 2001-07-08 17:07+CET\n" +"Last-Translator: jdavid\n" +"Language-Team: ??\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" diff --git a/product/Localizer/locale/es.po b/product/Localizer/locale/es.po new file mode 100644 index 0000000000000000000000000000000000000000..af691513d8ae5ad1485c6734febf9bc17b2a9d86 --- /dev/null +++ b/product/Localizer/locale/es.po @@ -0,0 +1,1137 @@ +msgid "" +msgstr "" +"Project-Id-Version: 0.3.0\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2002-10-12 16:58GMT+1\n" +"Last-Translator: Juan David Ibáñez Palomar <jdavid@nuxeo.com>\n" +"Language-Team: Spanish <es@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.9.5\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +#, fuzzy +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" +"Un objeto <em>Local Content</em> proporciona un medio para almacenar " +"propiedades multilingües (y monolingües). También ayuda a mantener el " +"contenido separado de la lógica y la presentación." + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" +"Una carpeta local es una solución genérica para gestionar cualquier tipo de " +"objetos multilingües, ficheros, imágenes, guiones de código, etc.." + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" +"Un catálogo de mensajes almacena mensajes y sus traducciones a diferentes " +"idiomas. Proporciona el método <tt>gettext</tt> para obtener la traducción " +"correcta en un idioma dado. Los catálogos de mensajes son útiles para " +"traducir las interfaces de la aplicación (etiquetas, botones, etc..)." + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Añadir" + +msgid "Add Local Content" +msgstr "Añadir contenido localizado" + +msgid "Add Local Folder" +msgstr "Añadir carpeta local" + +msgid "Add Localizer" +msgstr "Añadir <em>Localizer</em>" + +msgid "Add Message Catalog" +msgstr "Añadir un catálogo de mensajes" + +#, fuzzy +msgid "Add language" +msgstr "Idioma" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +#, fuzzy +msgid "Assamese" +msgstr "Mensajes" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "Atributos" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +#, fuzzy +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" +"Además del tÃtulo las cabeceras de los ficheros PO almacenan más " +"información, el nombre y la dirección de correo electrónico del último " +"traductor, la dirección de correo electrónico del equipo de traducción y el " +"conjunto de caracteres. Los formularios que hay abajo permiten modificar " +"esta información para cada idioma." + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "No hay mensajes." + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "Cambiar" + +msgid "Charset" +msgstr "Conjunto de caracteres" + +#: utils.py:119 +#, fuzzy +msgid "Chinese" +msgstr "Cambiar" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Contenido" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +#, fuzzy +msgid "Danish" +msgstr "Español" + +#, fuzzy +msgid "Default language" +msgstr "Ocultar este idioma" + +msgid "Delete" +msgstr "Eliminar" + +#, fuzzy +msgid "Delete languages" +msgstr "No hay idiomas." + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "Exportar" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "Fichero" + +msgid "File / Language" +msgstr "Fichero / Idioma" + +msgid "Filter" +msgstr "Filtrar" + +#: utils.py:94 +msgid "Find" +msgstr "Buscar" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "Buscar" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Importar" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Guardar cambios" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "Idioma" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "Idiomas" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "Propiedades locales" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" +"Las carpetas locales son útiles para almacenar objetos multilingües " +"especiales como imágenes y lógica especÃfica. Si se usan el objeto " +"<tt>Localizer</tt> de forma transparente añadirá la carpeta local correcta a " +"la <em>url</em>. Si quieres usar las carpetas locales selecciona el cuadro " +"de selección, si no deseleccionalo, entonces pulsa en botón <tt>Cambiar</tt>." + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Añadir <em>Localizer</em>" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "Mensajes" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "Mensajes" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +#, fuzzy +msgid "Messages imported" +msgstr "Mensajes" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "Nombre" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "Solamente mensajes sin traducción" + +#, fuzzy +msgid "Original language" +msgstr "Ocultar este idioma" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Propiedad" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "Propiedades" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Propiedades" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Resultados %d-%d de %d" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +#, fuzzy +msgid "Sangho" +msgstr "Español" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "Guardar" + +msgid "Save changes" +msgstr "Guardar cambios" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +msgid "Saved changes." +msgstr "Cambios guardados." + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "Seguridad" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "Buscar" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "Español" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +#, fuzzy +msgid "Spanish/Colombia" +msgstr "Español" + +#: utils.py:225 +#, fuzzy +msgid "Spanish/Mexico" +msgstr "Español" + +#: utils.py:226 +#, fuzzy +msgid "Spanish/Spain" +msgstr "Español" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "TÃtulo" + +#, fuzzy +msgid "Target language" +msgstr "No hay idiomas." + +#, fuzzy +msgid "Target languages" +msgstr "No hay idiomas." + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "Dirección de <em>email</em> del equipo" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +#, fuzzy +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"Puedes añadir nuevos mensajes y traducciones importando ficheros PO. " +"Introduce el nombre del fichero, selecciona el idioma de las traducciones y " +"pulsa el botón <tt>Importar</tt>." + +#, fuzzy +msgid "There are no attributes" +msgstr "No hay atributos." + +#, fuzzy +msgid "There are no languages" +msgstr "No hay idiomas." + +#, fuzzy +msgid "There are no messages." +msgstr "No hay mensajes." + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "Este objeto no necesita ser actualizado." + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "TÃtulo" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "Para añadir un idioma seleccionalo y pulsa el botón <tt>Añadir</tt>." + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" +"Para añadir un atributo introduce su id y pulsa el botón <tt>Añadir</tt>." + +#, fuzzy +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "Para añadir un idioma seleccionalo y pulsa el botón <tt>Añadir</tt>." + +#, fuzzy +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" +"Para eliminar un atributo seleccionalo y pulsa el botón <tt>Eliminar</tt>." + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" +"Para eliminar un atributo seleccionalo y pulsa el botón <tt>Eliminar</tt>." + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "No hay propiedades." + +#, fuzzy +msgid "Translations" +msgstr "No hay propiedades." + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Tipo" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Deshacer" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "Actualizar" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "Usar carpetas locales" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "Ver" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" +"Con este formulario puedes cambiar el tÃtulo del catálogo de mensajes. El " +"tÃtulo también se utiliza como valor del campo <tt>Project-Id-Version</tt> " +"en la cabecera de los ficheros PO, los cuales se generan cuando se exporta " +"el catálogo de mensajes." + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"Puedes añadir nuevos mensajes y traducciones importando ficheros PO. " +"Introduce el nombre del fichero, selecciona el idioma de las traducciones y " +"pulsa el botón <tt>Importar</tt>." + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Puedes exportar los mensajes y sus traducciones a ficheros PO. Selecciona " +"<tt>locale.pot</tt> para obtener tan solo los mensajes, sin sus " +"traducciones. Selecciona cualquier otra opción para obtener un fichero PO " +"con los mensajes y sus traducciones al idioma seleccionado. Entonces pulsa " +"el botón <tt>Exportar</tt>." + +#, fuzzy +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"Puedes añadir nuevos mensajes y traducciones importando ficheros PO. " +"Introduce el nombre del fichero, selecciona el idioma de las traducciones y " +"pulsa el botón <tt>Importar</tt>." + +#, fuzzy +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Puedes exportar los mensajes y sus traducciones a ficheros PO. Selecciona " +"<tt>locale.pot</tt> para obtener tan solo los mensajes, sin sus " +"traducciones. Selecciona cualquier otra opción para obtener un fichero PO " +"con los mensajes y sus traducciones al idioma seleccionado. Entonces pulsa " +"el botón <tt>Exportar</tt>." + +msgid "Your e-mail address" +msgstr "Tu dirección de <em>email</em>" + +msgid "Your name" +msgstr "Tu nombre" + +#: utils.py:254 +#, fuzzy +msgid "Zhuang" +msgstr "Cambiar" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "Este objeto <tt>%s</tt> necesita ser actualizado" + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "Este objeto <tt>Localizer</tt> debe ser actualizado" + +#, fuzzy +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "Este objeto <tt>Localizer</tt> no necesita actualizarse" + +#~ msgid "Import/Export" +#~ msgstr "Importar/Exportar" + +#~ msgid "Default" +#~ msgstr "Por defecto" + +#~ msgid "" +#~ "To delete a language check it and click the <tt>Delete</tt> button. To " +#~ "change the default language select it and click the <tt>Change</tt> " +#~ "button." +#~ msgstr "" +#~ "Para eliminar un idioma selecciónalo y pulsa el botón <tt>Eliminar</tt>. " +#~ "Para cambiar el idioma por defecto selecciónalo y pulsa el botón " +#~ "<tt>Cambiar</tt>." + +#~ msgid "Show this language" +#~ msgstr "Mostrar este idioma" + +#~ msgid "" +#~ "To add a new property enter its name, select its type and click the " +#~ "<tt>Add</tt> button." +#~ msgstr "" +#~ "Para añadir una nueva propiedad introduce su nombre, selecciona su tipo y " +#~ "pulsa el botón <tt>Añadir</tt>." + +#~ msgid "" +#~ "A Localizer object provides <em>locale folders</em>, each one associated " +#~ "with a language. It transparently adds a locale folder to the path so " +#~ "objects for that language will be used. It's useful to localize special " +#~ "objects like images, or specific logic (to format dates for example)." +#~ msgstr "" +#~ "Un objeto <em>Localizer</em> proporciona <em>carpetas locales</em>, cada " +#~ "una asociada a un idioma. De forma transparente añade una carpeta local a " +#~ "la ruta, de este modo se usarán los objetos del lenguaje asociado. Es " +#~ "útil para localizar objetos especiales como imágenes, o lógica especÃfica " +#~ "(para dar formato a las fechas por ejemplo)." diff --git a/product/Localizer/locale/eu.po b/product/Localizer/locale/eu.po new file mode 100644 index 0000000000000000000000000000000000000000..eb48cb64dc98c189fe8bcf532ac2f88a15b20872 --- /dev/null +++ b/product/Localizer/locale/eu.po @@ -0,0 +1,1116 @@ +msgid "" +msgstr "" +"Project-Id-Version: 0.3.0\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2001-07-08 17:07+CET\n" +"Last-Translator: code&syntax\n" +"Language-Team: ??\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Gehitu" + +#, fuzzy +msgid "Add Local Content" +msgstr "Itzulitako edukia" + +msgid "Add Local Folder" +msgstr "Localizer berria" + +#, fuzzy +msgid "Add Localizer" +msgstr "Localizer berria" + +msgid "Add Message Catalog" +msgstr "" + +#, fuzzy +msgid "Add language" +msgstr "Hizkuntza berria" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +msgid "Assamese" +msgstr "" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Ez dago sarrerarik" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "" + +msgid "Charset" +msgstr "" + +#: utils.py:119 +msgid "Chinese" +msgstr "" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Edukia" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +#, fuzzy +msgid "Danish" +msgstr "Gaztelania" + +msgid "Default language" +msgstr "Hobetsitako hizkuntza" + +msgid "Delete" +msgstr "Ezabatu" + +#, fuzzy +msgid "Delete languages" +msgstr "Hobetsitako hizkuntza" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "Esportatu" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +#, fuzzy +msgid "File" +msgstr "Galbahetu" + +#, fuzzy +msgid "File / Language" +msgstr "Hizkuntza berria" + +msgid "Filter" +msgstr "Galbahetu" + +#: utils.py:94 +msgid "Find" +msgstr "Bilatu" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "Bilatu" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Inportatu" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Aldaketak gorde" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +#, fuzzy +msgid "Language" +msgstr "Hizkuntza berria" + +#: LanguageManager.py:157 +#, fuzzy +msgid "Languages" +msgstr "Hizkuntza berria" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +#, fuzzy +msgid "Local properties" +msgstr "Ezaugarriak" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Localizer berria" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "Itzuli beharreko testua:" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +msgid "Messages imported" +msgstr "" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "" + +#, fuzzy +msgid "Original language" +msgstr "Hobetsitako hizkuntza" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Jabetza" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "Ezaugarriak" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Ezaugarriak" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +#, fuzzy +msgid "Sangho" +msgstr "Gaztelania" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save changes" +msgstr "Aldaketak gorde" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +#, fuzzy +msgid "Saved changes." +msgstr "Aldaketak gorde" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "Segurtasuna" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "Bilatu" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "Gaztelania" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +#, fuzzy +msgid "Spanish/Colombia" +msgstr "Gaztelania" + +#: utils.py:225 +#, fuzzy +msgid "Spanish/Mexico" +msgstr "Gaztelania" + +#: utils.py:226 +#, fuzzy +msgid "Spanish/Spain" +msgstr "Gaztelania" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "Izenburua" + +#, fuzzy +msgid "Target language" +msgstr "Ez dago sarrerarik" + +#, fuzzy +msgid "Target languages" +msgstr "Ez dago sarrerarik" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" + +#, fuzzy +msgid "There are no attributes" +msgstr "Ez dago sarrerarik" + +#, fuzzy +msgid "There are no languages" +msgstr "Ez dago sarrerarik" + +#, fuzzy +msgid "There are no messages." +msgstr "Ez dago sarrerarik" + +msgid "This object is up-to-date." +msgstr "" + +msgid "This object must be upgraded." +msgstr "" + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "Izenburua" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" + +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" + +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "Ez dago ezaugarri-orririk" + +#, fuzzy +msgid "Translations" +msgstr "Itzulitakoak" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Mota" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Desegin" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "Ikusi" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "Your e-mail address" +msgstr "" + +msgid "Your name" +msgstr "" + +#: utils.py:254 +msgid "Zhuang" +msgstr "" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#, fuzzy +#~ msgid "Import/Export" +#~ msgstr "Inportatu" + +#, fuzzy +#~ msgid "Default" +#~ msgstr "Ezabatu" + +#, fuzzy +#~ msgid "Hide this language" +#~ msgstr "Hizkuntza berria" + +#, fuzzy +#~ msgid "Show this language" +#~ msgstr "Ez dago sarrerarik" + +#~ msgid "Next" +#~ msgstr "Hurrengoa" + +#~ msgid "Previous" +#~ msgstr "Aurrekoa" + +#~ msgid "All" +#~ msgstr "Denak" + +#~ msgid "Batch size" +#~ msgstr "Zenbat erakutsi" + +#~ msgid "Full" +#~ msgstr "Osoa" + +#~ msgid "Localized Content" +#~ msgstr "Itzulitako edukia" + +#~ msgid "Localized Strings" +#~ msgstr "Itzulitako mezuak" + +#, fuzzy +#~ msgid "New Local Content" +#~ msgstr "Itzulitako edukia" + +#~ msgid "New Localizer" +#~ msgstr "Localizer berria" + +#~ msgid "Only valid" +#~ msgstr "Balekoak bakarrik" + +#~ msgid "Partial" +#~ msgstr "Partziala" + +#~ msgid "Pending languages" +#~ msgstr "Egiteke dauden hizkuntzak" + +#~ msgid "Regular expression" +#~ msgstr "Espresio erregularra" + +#~ msgid "Results" +#~ msgstr "Emaitzak" + +#~ msgid "Status" +#~ msgstr "Egoera" + +#~ msgid "Text" +#~ msgstr "Testua" + +#~ msgid "There are no entries." +#~ msgstr "Ez dago sarrerarik" + +#~ msgid "There are not property sheets." +#~ msgstr "Ez dago ezaugarri-orririk" + +#~ msgid "This property sheet is empty." +#~ msgstr "Ezaugarri-orri hau hutsik dago" + +#~ msgid "of" +#~ msgstr "Guztira:" diff --git a/product/Localizer/locale/fr.po b/product/Localizer/locale/fr.po new file mode 100644 index 0000000000000000000000000000000000000000..d7124f8a98049b2cc8cec2894248d63ea29c2658 --- /dev/null +++ b/product/Localizer/locale/fr.po @@ -0,0 +1,1202 @@ +msgid "" +msgstr "" +"Project-Id-Version: PRODUCT VERSION\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2002-01-30 18:06GMT\n" +"Last-Translator: lefevre arnaud <al@nuxeo.com>\n" +"Language-Team: french\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.8\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +#, fuzzy +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" +"Un Objet de contenu local permet de sauvegarder des propriétées multilingues " +"(ou unique). Il permet également de séparer le contenu de la présentation et " +"de la logique de l'application." + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" +"Un message catalog stocke les messages et leurs traductions. Il fournit la " +"méthode <tt>gettext</tt> afin d'obtenir la bonne traduction pour un message " +"donné. Les message catalogs sont utiles pour traduire les interfaces des " +"applications (titres, boutons, etc.)." + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Ajouter" + +msgid "Add Local Content" +msgstr "Ajouter du contenu local" + +msgid "Add Local Folder" +msgstr "Ajouter un répertoire de langue" + +msgid "Add Localizer" +msgstr "Ajouter une instance \"Localizer\"" + +msgid "Add Message Catalog" +msgstr "Ajouter un Message Catalog" + +#, fuzzy +msgid "Add language" +msgstr "Langue" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +#, fuzzy +msgid "Assamese" +msgstr "Messages" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +#, fuzzy +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" +"En plus du titre, l'entête d'un fichier PO stocke d'autres informations : le " +"nom et l'adresse email du dernier traducteur, l'adresse email de l'équipe de " +"traduction et le type de caractères. Le formulaire situé en dessous permet " +"de modifier ces information pour chaque langue." + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Il n'y a pas de message" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "Modifier" + +msgid "Charset" +msgstr "Type de caractères" + +#: utils.py:119 +#, fuzzy +msgid "Chinese" +msgstr "Modifier" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Contenu" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +msgid "Danish" +msgstr "" + +#, fuzzy +msgid "Default language" +msgstr "Cacher cette langue" + +msgid "Delete" +msgstr "Effacer" + +#, fuzzy +msgid "Delete languages" +msgstr "Il n'y a pas de langue" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "Exporter" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "Fichier" + +msgid "File / Language" +msgstr "Fichier / Langue" + +msgid "Filter" +msgstr "Filtrer" + +#: utils.py:94 +msgid "Find" +msgstr "Recherche" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "Français" + +#: utils.py:138 +#, fuzzy +msgid "French/Belgium" +msgstr "Français" + +#: utils.py:139 +#, fuzzy +msgid "French/Canada" +msgstr "Français" + +#: utils.py:140 +#, fuzzy +msgid "French/France" +msgstr "Français" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "Recherche" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Importer" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Sauvegarder les modifications" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "Langue" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "Langues" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "Propriétées locales" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" +"Les répertoires de langue sont utiles pour sauvegarder des objets " +"multilingues speciaux commes des images et leur logique spécifique. " +"Lorsqu'il est utilisé, l'objet <tt>Localizer</tt> va automatiquement ajouter " +"le Répertoire de langue approprié à l'url. Si vous voulez utiliser un " +"répertoire de langue spécifique, le sélectioner puis activé les " +"modifications en cliquant sur le bouton <tt>Change</tt>." + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Ajouter une instance \"Localizer\"" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "Texte a traduire:" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "Messages" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +#, fuzzy +msgid "Messages imported" +msgstr "Messages" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "Nom" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +#, fuzzy +msgid "Only untranslated messages" +msgstr "Retour vers la gestion des messages" + +#, fuzzy +msgid "Original language" +msgstr "Cacher cette langue" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Propriétaire" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "Propriétés" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Propriétés" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Résutats %d-%d de %d" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save changes" +msgstr "Sauvegarder les modifications" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +#, fuzzy +msgid "Saved changes." +msgstr "Sauvegarder les modifications" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "Sécurité" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "Recherche" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "Titre" + +#, fuzzy +msgid "Target language" +msgstr "Il n'y a pas de langue" + +#, fuzzy +msgid "Target languages" +msgstr "Il n'y a pas de langue" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "Adresse email de l'équipe" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +#, fuzzy +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"Vous pouvez ajouter de nouveau messages et traductions en important un " +"fichier de type \"PO\". Saisissez le nom de fichier, sélectionnez la langue " +"de traduction et cliquez sur le bouton <tt>Import</tt> ." + +#, fuzzy +msgid "There are no attributes" +msgstr "Il n'y a pas de langue" + +#, fuzzy +msgid "There are no languages" +msgstr "Il n'y a pas de langue" + +#, fuzzy +msgid "There are no messages." +msgstr "Il n'y a pas de message" + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "Cet objet n'a pas besoin de mise à niveau." + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "Titre" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" +"Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</" +"tt> ." + +#, fuzzy +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" +"Pour ajouter un nouveau message, sélectionnez le et cliquer sur le bouton " +"<tt>Add</tt> ." + +#, fuzzy +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" +"Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</" +"tt> ." + +#, fuzzy +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" +"Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</" +"tt> ." + +#, fuzzy +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" +"Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</" +"tt> ." + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "Il n'y a pas de propriétés" + +#, fuzzy +msgid "Translations" +msgstr "Il n'y a pas de propriétés" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Type" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Annuler" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "Mise à niveau" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "Utiliser le répertoire local" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "Visualiser" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" +"À l'aide de ce formulaire vous pouvez modifier le titre du message catalog. " +"Le titre est également utilisé comme valeur du champ <tt>Project-Id-Version</" +"tt>dans l'entête des fichiers PO. Ces derniers sont créés quand le message " +"catalog est exporté." + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"Vous pouvez ajouter de nouveau messages et traductions en important un " +"fichier de type \"PO\". Saisissez le nom de fichier, sélectionnez la langue " +"de traduction et cliquez sur le bouton <tt>Import</tt> ." + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Vous pouvez exporter des messages et leurs traductions dans des fichiers de " +"type \"PO\". Sélectionnez <tt>locale.pot</tt> pour exporter les messages " +"sans traductions. Sélectionnez tout autre options pour générer un fichier " +"\"PO\" avec ses messages et leurs traductions dans le langage sélectioné. " +"Ensuite cliquez sur le bouton <tt>Export</tt>." + +#, fuzzy +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"Vous pouvez ajouter de nouveau messages et traductions en important un " +"fichier de type \"PO\". Saisissez le nom de fichier, sélectionnez la langue " +"de traduction et cliquez sur le bouton <tt>Import</tt> ." + +#, fuzzy +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Vous pouvez exporter des messages et leurs traductions dans des fichiers de " +"type \"PO\". Sélectionnez <tt>locale.pot</tt> pour exporter les messages " +"sans traductions. Sélectionnez tout autre options pour générer un fichier " +"\"PO\" avec ses messages et leurs traductions dans le langage sélectioné. " +"Ensuite cliquez sur le bouton <tt>Export</tt>." + +msgid "Your e-mail address" +msgstr "Votre adresse email" + +msgid "Your name" +msgstr "Votre nom" + +#: utils.py:254 +#, fuzzy +msgid "Zhuang" +msgstr "Modifier" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "Cet objet <tt>%s</tt> requière une mise à niveau." + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "Cet objet <tt>Localizer</tt> a besoin d'une mise à niveau." + +#, fuzzy +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "Cet objet <tt>Localizer</tt> ne requière pas de mise à niveau." + +#~ msgid "Import/Export" +#~ msgstr "Importer/Exporter" + +#~ msgid "Default" +#~ msgstr "Défaut" + +#~ msgid "" +#~ "To delete a language check it and click the <tt>Delete</tt> button. To " +#~ "change the default language select it and click the <tt>Change</tt> " +#~ "button." +#~ msgstr "" +#~ "Pour supprimer un langage, sélectionnez le et cliquer le bouton " +#~ "<tt>Delete</tt> . Pour modifier le language de défault, sélectionnez le " +#~ "et cliquez le bouton <tt>Change</tt> ." + +#~ msgid "Show this language" +#~ msgstr "Afficher cette langue" + +#~ msgid "" +#~ "To add a new property enter its name, select its type and click the " +#~ "<tt>Add</tt> button." +#~ msgstr "" +#~ "Pour ajouter une nouvelle propriété, saisissez son nom, choisissez son " +#~ "type et cliquez sur le bouton <tt>Add</tt>." + +#~ msgid "" +#~ "A Localizer object provides <em>locale folders</em>, each one associated " +#~ "with a language. It transparently adds a locale folder to the path so " +#~ "objects for that language will be used. It's useful to localize special " +#~ "objects like images, or specific logic (to format dates for example)." +#~ msgstr "" +#~ "Un objet Localizer fournit des <em>répertoire de langue</em>, chaque " +#~ "locale foldercorrespond à une langue. Localizer ajoute d'une manière " +#~ "transparente un locale folderà la variable d'environnement path pour que " +#~ "la langue soit utilisée. Il est très pratique de localiser des objets " +#~ "spéciaux (comme des images) ou des logiques particulières (pour formater " +#~ "les dates par exemple)." + +#~ msgid "" +#~ "A locale folder is just a normal folder with a <tt>SiteRoot</tt>. Its id " +#~ "must be a language code, the title is optional. Locale folders are used " +#~ "to store special objects like images and logic that needs to be localized." +#~ msgstr "" +#~ "Un locale folder est un folder normal avec une racine de site (<tt>Site " +#~ "Root</tt>). Son ID doit être le code d'une langue, le titre est " +#~ "optionnel. Les répertoires de langues sont utilisés pour stocker des " +#~ "objets spéciaux (comme les images) et les logiques qui doivent être " +#~ "localisées." + +#~ msgid "Back to manage messages." +#~ msgstr "Retour vers la gestion des messages" + +#~ msgid "Header" +#~ msgstr "Entête" + +#~ msgid "Locale folders" +#~ msgstr "Répertoire de langues" + +#~ msgid "Message" +#~ msgstr "Message" + +#~ msgid "Message catalog" +#~ msgstr "Catalogue de Message" + +#~ msgid "Next" +#~ msgstr "Suivant" + +#~ msgid "No languages available." +#~ msgstr "Aucun language disponible" + +#~ msgid "Previous" +#~ msgstr "Précédent" + +#~ msgid "To add a new message enter it and click the <tt>Add</tt> button." +#~ msgstr "" +#~ "Pour ajouter un nouveau message, sélectionnez le et cliquer sur le bouton " +#~ "<tt>Add</tt> ." + +#~ msgid "" +#~ "To add a new property enter its name and type and click the <tt>Add</tt> " +#~ "button." +#~ msgstr "" +#~ "Pour ajouter une propriété, saisissez son nom et son type puis cliquer su " +#~ "the bouton <tt>Add</tt> ." + +#~ msgid "" +#~ "To show only few messages enter a regular expression and click the " +#~ "<tt>Filter</tt> button." +#~ msgstr "" +#~ "Pour afficher seulement quelques messages, entrez une expression " +#~ "régulière et cliquez sur le bouton <tt>Filter</tt>." + +#~ msgid "default" +#~ msgstr "défaut" diff --git a/product/Localizer/locale/hu.po b/product/Localizer/locale/hu.po new file mode 100644 index 0000000000000000000000000000000000000000..6891b5e02052644d99189bd676d21c464117bd7d --- /dev/null +++ b/product/Localizer/locale/hu.po @@ -0,0 +1,1156 @@ +# Hungarian Translation of FSR. +# Copyright (C) 2001 Free Software Foundation, Inc. +# Gábor Süveg <gsuveg@sgsystem.com>, 2001. +# Reviewed by: Emese Kovács <emese@gnome.hu> on 2001-10-11 +# +msgid "" +msgstr "" +"Project-Id-Version: ZOPE HEAD\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2001-10-11 10:38+0200\n" +"Last-Translator: Gabor Suveg <gsuveg@sgsystem.com>\n" +"Language-Team: Hungarian <magyar@linux.hu>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Hozzáadás" + +msgid "Add Local Content" +msgstr "Új nyelvi tartalom" + +msgid "Add Local Folder" +msgstr "Nyelvi mappa hozzáadása" + +msgid "Add Localizer" +msgstr "Új fordÃtó" + +msgid "Add Message Catalog" +msgstr "Ãœzenet katalógus hozzáadása" + +#, fuzzy +msgid "Add language" +msgstr "Nyelv" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +#, fuzzy +msgid "Assamese" +msgstr "Ãœzenetek" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Nincs bejegyzés." + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "Változtat" + +#, fuzzy +msgid "Charset" +msgstr "Változtat" + +#: utils.py:119 +#, fuzzy +msgid "Chinese" +msgstr "Változtat" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Tartalom" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +msgid "Danish" +msgstr "" + +msgid "Default language" +msgstr "Alapértelmezett nyelv" + +msgid "Delete" +msgstr "Törlés" + +#, fuzzy +msgid "Delete languages" +msgstr "Alapértelmezett nyelv" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "Exportálás" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "Fájl" + +msgid "File / Language" +msgstr "Új nyelv" + +msgid "Filter" +msgstr "SzűrÅ‘" + +#: utils.py:94 +msgid "Find" +msgstr "Keresés" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "Keresés" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "AzonosÃtó" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Importálás" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Változások mentése" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "Nyelv" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "Nyelvek" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "Tulajdonságok" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Új fordÃtó" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "FordÃtandó szöveg:" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "Ãœzenetek" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +#, fuzzy +msgid "Messages imported" +msgstr "Ãœzenetek" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "Név" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +#, fuzzy +msgid "Only untranslated messages" +msgstr "Vissza az üzenetek szerkesztéséhez" + +#, fuzzy +msgid "Original language" +msgstr "Alapértelmezett nyelv" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Tulajdonos" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "Tulajdonságok" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Tulajdonságok" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Eredemények %d-%d / %d" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save changes" +msgstr "Változások mentése" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +#, fuzzy +msgid "Saved changes." +msgstr "Változások mentése" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "Biztonság" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "Keresés" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "CÃm" + +#, fuzzy +msgid "Target language" +msgstr "Nincs bejegyzés." + +#, fuzzy +msgid "Target languages" +msgstr "Nincs bejegyzés." + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +#, fuzzy +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a \n" +"fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt>\n" +"gombra." + +#, fuzzy +msgid "There are no attributes" +msgstr "Nincs bejegyzés." + +#, fuzzy +msgid "There are no languages" +msgstr "Nincs bejegyzés." + +#, fuzzy +msgid "There are no messages." +msgstr "Nincs bejegyzés." + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "Ez az objektum nem igényel frissitést." + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "CÃm" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra." + +#, fuzzy +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" +"Új üzenet hozzadásához ird be, majd kattintsd a <tt>Hozzáadás</tt> gombra." + +#, fuzzy +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra." + +#, fuzzy +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra." + +#, fuzzy +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra." + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "Nincs tulajdonságokat leÃró lap." + +#, fuzzy +msgid "Translations" +msgstr "ElérhetÅ‘ fordÃtások" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "TÃpus" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Visszavonás" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "FrissÃtés" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "Nyelvi mappák használata" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "Nézet" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a \n" +"fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt>\n" +"gombra." + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +#, fuzzy +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a \n" +"fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt>\n" +"gombra." + +#, fuzzy +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a \n" +"fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt>\n" +"gombra." + +msgid "Your e-mail address" +msgstr "" + +msgid "Your name" +msgstr "" + +#: utils.py:254 +#, fuzzy +msgid "Zhuang" +msgstr "Változtat" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "Ezt a <tt>%s</tt> objektumot frissÃtsd!" + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "Ezt a <tt>Localizr</tt> objektumtumot frissÃtsd!" + +#, fuzzy +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "Ez a <tt>Localizer</tt> objektum nem igényel frissitést." + +#~ msgid "Import/Export" +#~ msgstr "Impotálás/Exportálás" + +#~ msgid "Default" +#~ msgstr "Alapértelmezett" + +#, fuzzy +#~ msgid "Hide this language" +#~ msgstr "Új nyelv" + +#, fuzzy +#~ msgid "Show this language" +#~ msgstr "Nincs bejegyzés." + +#~ msgid "Back to manage messages." +#~ msgstr "Vissza az üzenetek szerkesztéséhez" + +#~ msgid "Locale folders" +#~ msgstr "Mappák" + +#~ msgid "Message" +#~ msgstr "Ãœzenet" + +#~ msgid "Message catalog" +#~ msgstr "Ãœzenetkatalógus" + +#~ msgid "Next" +#~ msgstr "KövetkezÅ‘" + +#~ msgid "No languages available." +#~ msgstr "Nincs elérhetÅ‘ nyelv" + +#~ msgid "Previous" +#~ msgstr "ElÅ‘zÅ‘" + +#~ msgid "To add a new message enter it and click the <tt>Add</tt> button." +#~ msgstr "" +#~ "Új üzenet hozzadásához ird be, majd kattintsd a <tt>Hozzáadás</tt> gombra." + +#~ msgid "default" +#~ msgstr "alapértelmezett" + +#~ msgid "All" +#~ msgstr "Összes" + +#~ msgid "Batch size" +#~ msgstr "Köteg mérete" + +#~ msgid "Full" +#~ msgstr "Teljes" + +#~ msgid "Localized Content" +#~ msgstr "Lokalizált tartalom" + +#~ msgid "Localized Strings" +#~ msgstr "Lokalizált karakterláncok" + +#~ msgid "Only valid" +#~ msgstr "Csak érvényes" + +#~ msgid "Partial" +#~ msgstr "Részleges" + +# nem biztos, hogy jó +#~ msgid "Pending languages" +#~ msgstr "Kapcsolódó nyelvek" + +# Az állandó kifejezés nem túl jó. +#~ msgid "Regular expression" +#~ msgstr "Reguláris kifejezés" + +#~ msgid "Results" +#~ msgstr "Eredmény" + +#~ msgid "Status" +#~ msgstr "Ãllapot" + +#~ msgid "Text" +#~ msgstr "Szöveg" + +#~ msgid "This property sheet is empty." +#~ msgstr "Ez a tulajdonságokat leÃró lap üres." + +# ból/bÅ‘l ragozástól függ. A szövegkörnyezet valószÃnűleg pl. 25 / 30 +#~ msgid "of" +#~ msgstr "/" diff --git a/product/Localizer/locale/it.po b/product/Localizer/locale/it.po new file mode 100644 index 0000000000000000000000000000000000000000..c759ba57500e9cd42e6c5c90e5db43d03ad8adf3 --- /dev/null +++ b/product/Localizer/locale/it.po @@ -0,0 +1,1148 @@ +# translation of it.po to Italiano +# translation of locale.po to italian +# Marco Bizzarri <m.bizzarri@icube.it>, 2004. +msgid "" +msgstr "" +"Project-Id-Version: it\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2004-11-12 17:09+0100\n" +"Last-Translator: Marco Bizzarri <m.bizzarri@icube.it>\n" +"Language-Team: Italiano <it@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.3.1\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +#, fuzzy +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" +"Un oggetto Local Content permette la memorizzazione di proprietà multilingua " +"(e non multilingua). Ti aiuta anche a tenere separato il contenuto dalla " +"presentazione." + +#, fuzzy +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" +"Un oggetto Localizer ti permette di personalizzare la politica di " +"negoziazione della lingua. Ti permette di usare i cookie, il cammino o " +"qualsiasi altro criterio per scegliere la lingua preferita dall'utente." + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" +"Un Local Folder è una soluzione generale per gestire qualsiasi tipo di " +"oggetti multilingua, come file, immagini, script, ecc..." + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" +"Un catalogo di messaggi memorizza i messaggi e le sue traduzioni in lingue " +"diverse. Fornisce il metodo <tt>gettext</tt> per ottenere la traduzione " +"corretta per un certo messaggio. I cataloghi dei messaggi sono utili per " +"tradurre l'interfacce delle applicazioni (etichette, pulsanti, ecc...)." + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Aggiungi" + +msgid "Add Local Content" +msgstr "Aggiungi un Local Content" + +msgid "Add Local Folder" +msgstr "Aggiungi un Local Folder" + +msgid "Add Localizer" +msgstr "Aggiungi Localizer" + +msgid "Add Message Catalog" +msgstr "Aggiungi un Message Catalog" + +#, fuzzy +msgid "Add language" +msgstr "Importa" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +#, fuzzy +msgid "Assamese" +msgstr "Messaggi" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "Attributi" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "Basco" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +#, fuzzy +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" +"Oltre al titolo l'intestazione di un file PO memorizza altre informazioni, " +"il nome e l'indirizzo dell'ultimo traduttore, l'indirizzo di email del " +"gruppo di traduzione e il set di caratteri. Le maschere che seguono ti " +"permettono di modificare queste informazioni per ogni lingua." + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Non ci sono messaggi" + +#: utils.py:114 +#, fuzzy +msgid "Bulgarian" +msgstr "Ungherese" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "Catalano" + +msgid "Change" +msgstr "Cambia" + +msgid "Charset" +msgstr "Set di caratteri" + +#: utils.py:119 +#, fuzzy +msgid "Chinese" +msgstr "Cambia" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Contenuti" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +#, fuzzy +msgid "Croatian" +msgstr "Catalano" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +#, fuzzy +msgid "Danish" +msgstr "Spagnolo" + +#, fuzzy +msgid "Default language" +msgstr "Nascondi questa lingua" + +msgid "Delete" +msgstr "Elimina" + +#, fuzzy +msgid "Delete languages" +msgstr "Non ci sono lingue." + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "Esporta" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "File" + +msgid "File / Language" +msgstr "File / Lingua" + +msgid "Filter" +msgstr "Filtro" + +#: utils.py:94 +msgid "Find" +msgstr "Trova" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "Francese" + +#: utils.py:138 +#, fuzzy +msgid "French/Belgium" +msgstr "Francese" + +#: utils.py:139 +#, fuzzy +msgid "French/Canada" +msgstr "Francese" + +#: utils.py:140 +#, fuzzy +msgid "French/France" +msgstr "Francese" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +#, fuzzy +msgid "Georgian" +msgstr "Tedesco" + +#: utils.py:145 +msgid "German" +msgstr "Tedesco" + +#: utils.py:146 +#, fuzzy +msgid "German/Austria" +msgstr "Tedesco" + +#: utils.py:147 +#, fuzzy +msgid "German/Germany" +msgstr "Tedesco" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +#, fuzzy +msgid "Guarani" +msgstr "Ungherese" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "Trova" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "Ungherese" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Importa" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +#, fuzzy +msgid "Italian" +msgstr "Catalano" + +#: utils.py:165 +msgid "Japanese" +msgstr "Giapponese" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "Giapponese" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "Importa" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "Lingue" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "Proprietà locali" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" +"I Locale Folders sono utili per memorizzare oggetti speciali multilingua " +"come immagini e logica specifica. Se si usa, l'oggetto Localizer aggiungerà " +"in modo trasparente il locale folder giusto all'url. Se vuoi usare i locale " +"folders seleziona la checkbox, altrimenti deselezionala, poi premi il " +"pulsante <tt>Cambia</tt>." + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Aggiungi Localizer" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "Messaggi" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "Messaggi" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +#, fuzzy +msgid "Messages imported" +msgstr "Messaggi" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "Nome" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "Solo messaggi non tradotti" + +#, fuzzy +msgid "Original language" +msgstr "Nascondi questa lingua" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Ownership" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +#, fuzzy +msgid "Persian" +msgstr "Tedesco" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "Proprietà " + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Proprietà " + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Risultato %d-%d di %d" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +#, fuzzy +msgid "Sangho" +msgstr "Spagnolo" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "Salva" + +msgid "Save changes" +msgstr "Salva i cambiamenti" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +msgid "Saved changes." +msgstr "Cambiamenti salvati." + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "Sicurezza" + +#: utils.py:211 +#, fuzzy +msgid "Serbian" +msgstr "Tedesco" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "Trova" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "Spagnolo" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +#, fuzzy +msgid "Spanish/Colombia" +msgstr "Spagnolo" + +#: utils.py:225 +#, fuzzy +msgid "Spanish/Mexico" +msgstr "Spagnolo" + +#: utils.py:226 +#, fuzzy +msgid "Spanish/Spain" +msgstr "Spagnolo" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "Titolo" + +#, fuzzy +msgid "Target language" +msgstr "Non ci sono lingue." + +#, fuzzy +msgid "Target languages" +msgstr "Non ci sono lingue." + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "Indirizzo email del gruppo" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"Il catalogo dei messaggi permette anche di importare file TMX. Puoi " +"aggiungere nuovi messaggi e traduzioni importando un file TMX nel livello " +"TMX 1. Immetti il nome del file e premi il pulsante <tt>Importa</tt>." + +#, fuzzy +msgid "There are no attributes" +msgstr "Non ci sono attributi." + +#, fuzzy +msgid "There are no languages" +msgstr "Non ci sono lingue." + +#, fuzzy +msgid "There are no messages." +msgstr "Non ci sono messaggi" + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "Questo oggetto non ha bisogno di essere aggiornato." + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "Titolo" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" +"Per aggiungere una lingua selezionala e premi il pulsante <tt>Aggiungi</tt>" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" +"Per aggiungere un attributo inserisci il suo id e premi il pulsante " +"<tt>Aggiungi</tt>." + +#, fuzzy +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" +"Per aggiungere una lingua selezionala e premi il pulsante <tt>Aggiungi</tt>" + +#, fuzzy +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" +"Per eliminare un attributo selezionalo e premi il pulsante <tt>Elimina</tt>." + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" +"Per eliminare un attributo selezionalo e premi il pulsante <tt>Elimina</tt>." + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "Non ci sono proprietà ." + +#, fuzzy +msgid "Translations" +msgstr "Non ci sono proprietà ." + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Tipo" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Disfa" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "Aggiorna" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "Usa i Local Folder" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "View" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" +"Con questa maschera puoi modificare il titolo del catalogo dei messaggi. Il " +"titolo viene usato anche come valore del campo <tt>Project-Id-Version</tt> " +"nell'intestazione dei file PO, che sono generati quando si esporta il " +"catalogo." + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"Puoi aggiungere nuovi messaggi e traduzioni importando un file PO. Immetti " +"il nome del file, scegli la lingua delle traduzioni e premi il pulsante " +"<tt>Importa</tt>." + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Puoi esportare il messaggi e le loro traduzioni in file PO. Scegli " +"<tt>locale.pot</tt> per ottenere solo i messaggi, senza le loro traduzioni. " +"Scegli qualsiai altra opzione per ottenere un file PO con i messaggi e le " +"loro traduzioni nella lingua scelta. Poi premi il pulsante <tt>Esporta</tt>" + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"Puoi esportare i messaggi e le loro traduzioni come file TMX level 1. Per " +"farlo premi semplicemente il pulsante <tt>Esporta</tt>." + +#, fuzzy +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Puoi esportare il messaggi e le loro traduzioni in file PO. Scegli " +"<tt>locale.pot</tt> per ottenere solo i messaggi, senza le loro traduzioni. " +"Scegli qualsiai altra opzione per ottenere un file PO con i messaggi e le " +"loro traduzioni nella lingua scelta. Poi premi il pulsante <tt>Esporta</tt>" + +msgid "Your e-mail address" +msgstr "Il tuo indirizzo di email" + +msgid "Your name" +msgstr "Il tuo nome" + +#: utils.py:254 +#, fuzzy +msgid "Zhuang" +msgstr "Cambia" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "Questo oggetto <tt>%s</tt> ha bisogno di essere aggiornato." + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "Questo oggetto <tt>Localizer</tt> ha bisogno di essere aggiornato." + +#, fuzzy +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "" +#~ "Questo oggetto <tt>Localizer</tt> non ha bisogno di essere aggiornato." + +#~ msgid "Import/Export" +#~ msgstr "Importa/Esporta" + +#~ msgid "TMX" +#~ msgstr "TMX" + +#~ msgid "label" +#~ msgstr "etichetta" + +#~ msgid "Default" +#~ msgstr "Predefinito" + +#~ msgid "" +#~ "To delete a language check it and click the <tt>Delete</tt> button. To " +#~ "change the default language select it and click the <tt>Change</tt> " +#~ "button." +#~ msgstr "" +#~ "Per eliminare una lingua selezionala e premi il pulsante <tt>Elimina</tt>." +#~ "Per cambiare la lingua predefinita selezionala e premi il pulsante " +#~ "<tt>Cambia</tt>." + +#~ msgid "Show this language" +#~ msgstr "Mostra questa lingua" + +#~ msgid "" +#~ "To add a new property enter its name, select its type and click the " +#~ "<tt>Add</tt> button." +#~ msgstr "" +#~ "Per aggiungere una nuova proprietà immetti il suo nome, scegli il suo " +#~ "tipo e premi il pulsante <tt>Aggiungi</tt>." diff --git a/product/Localizer/locale/ja.po b/product/Localizer/locale/ja.po new file mode 100644 index 0000000000000000000000000000000000000000..944cc800df5f0cab61c1b76975d455358eec06a7 --- /dev/null +++ b/product/Localizer/locale/ja.po @@ -0,0 +1,1184 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2002-09-10 07:36+0900\n" +"Last-Translator: kf@atransia.co.jp <kf@atransia.co.jp>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +#, fuzzy +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" +"ãƒã‚±ãƒ¼ãƒ«ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ (Locale Content) オブジェクトã«ã¯ã€å¤šè¨€èªžã®ã‚ªãƒ–ジェクトãŒ" +"æ ¼ç´ã•ã‚Œã¾ã™ (マルãƒãƒªãƒ³ã‚¬ãƒ«ã§ã¯ã‚ã‚Šã¾ã›ã‚“) 。ãã—ã¦ã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’ãƒã‚¸ãƒƒã‚¯ã¨" +"プレゼンテーションã«åˆ†é›¢ã™ã‚‹ã®ã‚‚役立ã¡ã¾ã™ã€‚" + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" +"メッセージカタãƒã‚° (Message Catalog) ã«ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¨ãã‚Œã«å¯¾ã™ã‚‹è¨€èªžã”ã¨ã®" +"翻訳ãŒä¿å˜ã•ã‚Œã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«å¯¾ã™ã‚‹æ£ã—ã„翻訳をå–り出ã™ãŸã‚ã«" +"ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒã‚°ã® <tt>gettext</tt> メソッドを使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" +"メッセージカタãƒã‚°ã¯ã€ãƒ©ãƒ™ãƒ«ã‚„ボタンãªã©ã‚¢ãƒ—リケーションã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚¤ãƒ³ã‚¿ãƒ¼" +"フェイスを翻訳ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚" + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "è¿½åŠ " + +msgid "Add Local Content" +msgstr "ãƒãƒ¼ã‚«ãƒ«ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®è¿½åŠ " + +#, fuzzy +msgid "Add Local Folder" +msgstr "ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã®è¿½åŠ " + +msgid "Add Localizer" +msgstr "Localizer ã®è¿½åŠ " + +msgid "Add Message Catalog" +msgstr "メッセージカタãƒã‚°ã®è¿½åŠ " + +#, fuzzy +msgid "Add language" +msgstr "言語" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +#, fuzzy +msgid "Assamese" +msgstr "メッセージ" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "属性" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +#, fuzzy +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" +"PO ファイルã®ãƒ˜ãƒƒãƒ€ã«ã¯ã€ã‚¿ã‚¤ãƒˆãƒ«ã ã‘ã§ãªãã€åå‰ã€é›»åメールアドレスã€æœ€çµ‚ç¿»" +"訳者ã€ç¿»è¨³ãƒãƒ¼ãƒ ã®é›»åメールアドレスã€æ–‡å—セットãªã©ã€ãã®ä»–ã®æƒ…å ±ãŒæ ¼ç´ã•ã‚Œ" +"ã¾ã™ã€‚下ã®ãƒ•ã‚©ãƒ¼ãƒ ã¯ã€ã“ã®æƒ…å ±ã‚’è¨€èªžã”ã¨ã«æŒ‡å®šã§ãるよã†ã«ã™ã‚‹ã‚‚ã®ã§ã™ã€‚" + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“。" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "変更" + +msgid "Charset" +msgstr "æ–‡å—セット" + +#: utils.py:119 +#, fuzzy +msgid "Chinese" +msgstr "変更" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "コンテンツ" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +msgid "Danish" +msgstr "" + +#, fuzzy +msgid "Default language" +msgstr "ã“ã®è¨€èªžã‚’éš ã™" + +msgid "Delete" +msgstr "削除" + +#, fuzzy +msgid "Delete languages" +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "エクスãƒãƒ¼ãƒˆ" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "ファイル" + +msgid "File / Language" +msgstr "ファイル/言語" + +msgid "Filter" +msgstr "フィルタ" + +#: utils.py:94 +msgid "Find" +msgstr "検索" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "検索" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "インãƒãƒ¼ãƒˆ" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "変更をä¿å˜" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "言語" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "言語" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "ãƒãƒ¼ã‚«ãƒ«ãƒ—ãƒãƒ‘ティ" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" +"ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ (Locale Folder) ã¯ã€ç”»åƒã‚„特殊ãªãƒã‚¸ãƒƒã‚¯ãªã©ãƒžãƒ«ãƒãƒªãƒ³ã‚¬ãƒ«ã‚ª" +"ãƒ–ã‚¸ã‚§ã‚¯ãƒˆã‚’æ ¼ç´ã™ã‚‹ã®ã«æœ‰ç”¨ã§ã™ã€‚ã“れを使用ã™ã‚‹ã¨ã€<tt>Localizer</tt> オブ" +"ジェクトãŒé©åˆ‡ãªãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã‚’ URL ã«é€éŽçš„ã«è¿½åŠ ã—ã¦ãã‚Œã¾ã™ã€‚ãƒã‚±ãƒ¼ãƒ«" +"フォルダを使用ã™ã‚‹ã«ã¯ã€ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ã‚’オンã«ã—ã¾ã™ã€‚" + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Localizer ã®è¿½åŠ " + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "翻訳ã™ã‚‹ãƒ†ã‚スト:" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "メッセージ" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +#, fuzzy +msgid "Messages imported" +msgstr "メッセージ" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "åå‰" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "未翻訳メッセージã®ã¿" + +#, fuzzy +msgid "Original language" +msgstr "ã“ã®è¨€èªžã‚’éš ã™" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "所有者" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "プãƒãƒ‘ティ" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "プãƒãƒ‘ティ" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "çµæžœ: %d-%d (%dä¸)" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "ä¿å˜" + +msgid "Save changes" +msgstr "変更をä¿å˜" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +#, fuzzy +msgid "Saved changes." +msgstr "変更をä¿å˜" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "ã‚»ã‚ュリティ" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "検索" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "タイトル" + +#, fuzzy +msgid "Target language" +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“" + +#, fuzzy +msgid "Target languages" +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "翻訳ãƒãƒ¼ãƒ ã®é›»åメールアドレス" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +#, fuzzy +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"æ–°ã—ã„メッセージã¨ç¿»è¨³ã‚’ PO ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦è¿½åŠ ã§ãã¾" +"ã™ã€‚ファイルåを入力ã—ã€ç¿»è¨³ã®è¨€èªžã‚’é¸æŠžã—ã€<b>インãƒãƒ¼ãƒˆ</b> ボタンをクリッ" +"クã—ã¾ã™ã€‚" + +#, fuzzy +msgid "There are no attributes" +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“" + +#, fuzzy +msgid "There are no languages" +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“" + +#, fuzzy +msgid "There are no messages." +msgstr "言語ãŒã‚ã‚Šã¾ã›ã‚“。" + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "ã“ã®ã‚ªãƒ–ジェクトã¯ã€æ›´æ–°ã®å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。" + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "タイトル" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" +"è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾" +"ã™ã€‚" + +#, fuzzy +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "æ–°ã—ã„ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€<b>è¿½åŠ </b> ボタンをクリックã—ã¾ã™ã€‚" + +#, fuzzy +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" +"è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾" +"ã™ã€‚" + +#, fuzzy +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" +"è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾" +"ã™ã€‚" + +#, fuzzy +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" +"è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾" +"ã™ã€‚" + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "プãƒãƒ‘ティãŒã‚ã‚Šã¾ã›ã‚“。" + +#, fuzzy +msgid "Translations" +msgstr "プãƒãƒ‘ティãŒã‚ã‚Šã¾ã›ã‚“。" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "種類" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "ã‚„ã‚Šç›´ã—" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "æ›´æ–°" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã‚’使ã†" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "表示" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" +"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒã‚° (Message Catalog) ã®ã‚¿ã‚¤ãƒˆãƒ«ã‚’変更ã§ãã¾" +"ã™ã€‚ã“ã®ã‚¿ã‚¤ãƒˆãƒ«ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒã‚°ã‚’エクスãƒãƒ¼ãƒˆã™ã‚‹ã¨ç”Ÿæˆã•ã‚Œã‚‹ PO ファ" +"イルã®ãƒ˜ãƒƒãƒ€å†…ã«ã‚ã‚‹ã€<tt>Project-Id-Version</tt> フィールドã®å€¤ã¨ã—ã¦ã‚‚使ã‚" +"ã‚Œã¾ã™ã€‚" + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"æ–°ã—ã„メッセージã¨ç¿»è¨³ã‚’ PO ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦è¿½åŠ ã§ãã¾" +"ã™ã€‚ファイルåを入力ã—ã€ç¿»è¨³ã®è¨€èªžã‚’é¸æŠžã—ã€<b>インãƒãƒ¼ãƒˆ</b> ボタンをクリッ" +"クã—ã¾ã™ã€‚" + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" +"メッセージã¨ç¿»è¨³ã¯ã€PO ファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚翻訳をçœã„ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" +"ã ã‘ã‚’å¾—ã‚‹ã«ã¯ <tt>locale.pot</tt> ã®ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚é¸æŠžã—ãŸè¨€èªžã«å¯¾ã™ã‚‹ãƒ¡ãƒƒ" +"セージã¨ç¿»è¨³ã‚’å¾—ã‚‹ã«ã¯ã€ãã®ã»ã‹ã®ã‚ªãƒ—ションをãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚ãã—ã¦ã€<b>エク" +"スãƒãƒ¼ãƒˆ</b>ボタンをクリックã—ã¾ã™ã€‚" + +#, fuzzy +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"æ–°ã—ã„メッセージã¨ç¿»è¨³ã‚’ PO ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦è¿½åŠ ã§ãã¾" +"ã™ã€‚ファイルåを入力ã—ã€ç¿»è¨³ã®è¨€èªžã‚’é¸æŠžã—ã€<b>インãƒãƒ¼ãƒˆ</b> ボタンをクリッ" +"クã—ã¾ã™ã€‚" + +#, fuzzy +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"メッセージã¨ç¿»è¨³ã¯ã€PO ファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚翻訳をçœã„ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" +"ã ã‘ã‚’å¾—ã‚‹ã«ã¯ <tt>locale.pot</tt> ã®ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚é¸æŠžã—ãŸè¨€èªžã«å¯¾ã™ã‚‹ãƒ¡ãƒƒ" +"セージã¨ç¿»è¨³ã‚’å¾—ã‚‹ã«ã¯ã€ãã®ã»ã‹ã®ã‚ªãƒ—ションをãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚ãã—ã¦ã€<b>エク" +"スãƒãƒ¼ãƒˆ</b>ボタンをクリックã—ã¾ã™ã€‚" + +msgid "Your e-mail address" +msgstr "ã‚ãªãŸã®é›»åメールアドレス" + +msgid "Your name" +msgstr "ã‚ãªãŸã®åå‰" + +#: utils.py:254 +#, fuzzy +msgid "Zhuang" +msgstr "変更" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "ã“ã® <tt>%s</tt> オブジェクトã¯æ›´æ–°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚" + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "ã“ã®ã‚ªãƒ–ジェクトã¯ã€æ›´æ–°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚" + +#, fuzzy +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "ã“ã® <tt>Localizer</tt> オブジェクトã¯ã€æ›´æ–°ã®å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。" + +#~ msgid "Import/Export" +#~ msgstr "インãƒãƒ¼ãƒˆ/エクスãƒãƒ¼ãƒˆ" + +#~ msgid "Default" +#~ msgstr "標準" + +#~ msgid "" +#~ "To delete a language check it and click the <tt>Delete</tt> button. To " +#~ "change the default language select it and click the <tt>Change</tt> " +#~ "button." +#~ msgstr "" +#~ "言語を削除ã™ã‚‹ã«ã¯ã€ãã®è¨€èªžã®ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ã‚’オンã«ã—ã€<b>削除</b>ボタ" +#~ "ンをクリックã—ã¾ã™ã€‚標準ã®è¨€èªžã‚’変更ã™ã‚‹ã«ã¯ã€æ¨™æº–ã«ã—ãŸã„言語をé¸æŠžã—ã€" +#~ "<tt>変更</tt>ボタンをクリックã—ã¾ã™ã€‚" + +#~ msgid "Show this language" +#~ msgstr "ã“ã®è¨€èªžã‚’表示ã™ã‚‹" + +#~ msgid "" +#~ "To add a new property enter its name, select its type and click the " +#~ "<tt>Add</tt> button." +#~ msgstr "" +#~ "æ–°ã—ã„プãƒãƒ‘ãƒ†ã‚£ã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€åå‰ã‚’入力ã—ã€ç¨®é¡žã‚’é¸æŠžã—ã¾ã™ã€‚ãã—ã¦ã€" +#~ "<b>è¿½åŠ </b>ボタンをクリックã—ã¾ã™ã€‚" + +#~ msgid "" +#~ "A Localizer object provides <em>locale folders</em>, each one associated " +#~ "with a language. It transparently adds a locale folder to the path so " +#~ "objects for that language will be used. It's useful to localize special " +#~ "objects like images, or specific logic (to format dates for example)." +#~ msgstr "" +#~ "Localizer オブジェクトã¯ã€<em>Locale フォルダ</em> ã‚’æŒã¡ã¾ã™ã€‚å„ãƒã‚±ãƒ¼ãƒ« " +#~ "(locale) ã¯è¨€èªžã«é–¢é€£ã¥ã‘られã¾ã™ã€‚ãã—ã¦ã€Locale フォルダã«ã¯ä½¿ç”¨ã•ã‚Œã‚‹è¨€" +#~ "語ã«å¯¾å¿œã—ãŸãƒ‘スãŒé€éŽçš„ã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ç”»åƒã‚„ã€æ—¥ä»˜ã®æ›¸å¼ãªã©ã®ç‰¹æ®Š" +#~ "ãªãƒã‚¸ãƒƒã‚¯ã¨ã„ã£ãŸç‰¹åˆ¥ã«ãƒãƒ¼ã‚«ãƒ©ã‚¤ã‚ºã•ã‚ŒãŸã‚ªãƒ–ジェクトã«å¯¾ã—使用ã•ã‚Œã¾ã™ã€‚" + +#~ msgid "" +#~ "A locale folder is just a normal folder with a <tt>SiteRoot</tt>. Its id " +#~ "must be a language code, the title is optional. Locale folders are used " +#~ "to store special objects like images and logic that needs to be localized." +#~ msgstr "" +#~ "ãƒã‚±ãƒ¼ãƒ« (Locale) フォルダã¯ã€æ¨™æº–çš„ãªãƒ•ã‚©ãƒ«ãƒ€ã«<b>SiteRoot</b> ã®æ©Ÿèƒ½ã‚’ã¤" +#~ "ã‘ãŸã‚‚ã®ã§ã™ã€‚Id ã«ã¯è¨€èªžã‚³ãƒ¼ãƒ‰ã‚’使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚タイトルã¯ã‚ªãƒ—" +#~ "ションã§ã™ã€‚ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã«ã¯ã€ãƒãƒ¼ã‚«ãƒ©ã‚¤ã‚ºã®å¿…è¦ãŒã‚ã‚‹ç”»åƒã‚„ãƒã‚¸ãƒƒã‚¯ãª" +#~ "ã©ã®ç‰¹åˆ¥ãªã‚ªãƒ–ジェクトをä¿å˜ã—ã¾ã™ã€‚" + +#~ msgid "Back to manage messages." +#~ msgstr "メッセージ管ç†ã«æˆ»ã‚‹" + +#~ msgid "Header" +#~ msgstr "ヘッダ" + +#~ msgid "Locale folders" +#~ msgstr "ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€" + +#~ msgid "Message" +#~ msgstr "メッセージ" + +#~ msgid "Message catalog" +#~ msgstr "メッセージカタãƒã‚°" + +#~ msgid "Next" +#~ msgstr "次ã¸" + +#~ msgid "No languages available." +#~ msgstr "使用å¯èƒ½ãªè¨€èªžãŒã‚ã‚Šã¾ã›ã‚“。" + +#~ msgid "Previous" +#~ msgstr "å‰ã¸" + +#~ msgid "" +#~ "To add a new property enter its name and type and click the <tt>Add</tt> " +#~ "button." +#~ msgstr "" +#~ "æ–°ã—ã„プãƒãƒ‘ãƒ†ã‚£ã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€åå‰ã¨ç¨®é¡žã‚’入力ã—ã€<b>è¿½åŠ </b>ボタンをク" +#~ "リックã—ã¾ã™ã€‚" + +#~ msgid "" +#~ "To show only few messages enter a regular expression and click the " +#~ "<tt>Filter</tt> button." +#~ msgstr "" +#~ "表示ã•ã‚Œã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®æ•°ã‚’減らã™ã«ã¯ã€æ£è¦è¡¨ç¾ã‚’入力ã—ã€<b>フィルタ</b>ボ" +#~ "タンをクリックã—ã¾ã™ã€‚" + +#~ msgid "default" +#~ msgstr "標準" diff --git a/product/Localizer/locale/locale.pot b/product/Localizer/locale/locale.pot new file mode 100644 index 0000000000000000000000000000000000000000..85b6654647a593352539e96a346336bc90e36b83 --- /dev/null +++ b/product/Localizer/locale/locale.pot @@ -0,0 +1,1008 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: ENCODING\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "" + +msgid "Add Local Content" +msgstr "" + +msgid "Add Local Folder" +msgstr "" + +msgid "Add Localizer" +msgstr "" + +msgid "Add Message Catalog" +msgstr "" + +msgid "Add language" +msgstr "" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +msgid "Assamese" +msgstr "" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +msgid "Browse the messages" +msgstr "" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "" + +msgid "Change" +msgstr "" + +msgid "Charset" +msgstr "" + +#: utils.py:119 +msgid "Chinese" +msgstr "" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +msgid "Croatian" +msgstr "" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +msgid "Danish" +msgstr "" + +msgid "Default language" +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Delete languages" +msgstr "" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "" + +msgid "File / Language" +msgstr "" + +msgid "Filter" +msgstr "" + +#: utils.py:94 +msgid "Find" +msgstr "" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "" + +#: utils.py:139 +msgid "French/Canada" +msgstr "" + +#: utils.py:140 +msgid "French/France" +msgstr "" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +msgid "Georgian" +msgstr "" + +#: utils.py:145 +msgid "German" +msgstr "" + +#: utils.py:146 +msgid "German/Austria" +msgstr "" + +#: utils.py:147 +msgid "German/Germany" +msgstr "" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +msgid "Guarani" +msgstr "" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +msgid "Hindi" +msgstr "" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +msgid "Italian" +msgstr "" + +#: utils.py:165 +msgid "Japanese" +msgstr "" + +#: utils.py:166 +msgid "Javanese" +msgstr "" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +msgid "Localizer" +msgstr "" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +msgid "Message to translate" +msgstr "" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +msgid "Messages imported" +msgstr "" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "" + +msgid "Original language" +msgstr "" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +msgid "Portuguese" +msgstr "" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save changes" +msgstr "" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +msgid "Saved changes." +msgstr "" + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "" + +#: utils.py:211 +msgid "Serbian" +msgstr "" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +msgid "Sindhi" +msgstr "" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +msgid "Tamil" +msgstr "" + +msgid "Target language" +msgstr "" + +msgid "Target languages" +msgstr "" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" + +msgid "There are no attributes" +msgstr "" + +msgid "There are no languages" +msgstr "" + +msgid "There are no messages." +msgstr "" + +msgid "This object is up-to-date." +msgstr "" + +msgid "This object must be upgraded." +msgstr "" + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" + +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" + +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +msgid "Translate properties" +msgstr "" + +msgid "Translations" +msgstr "" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" + +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" + +msgid "Your e-mail address" +msgstr "" + +msgid "Your name" +msgstr "" + +#: utils.py:254 +msgid "Zhuang" +msgstr "" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" diff --git a/product/Localizer/locale/localizermsgs.tmx b/product/Localizer/locale/localizermsgs.tmx new file mode 100644 index 0000000000000000000000000000000000000000..0c4f03890b124bb63d8d13354d1bcf74b8a5ccee --- /dev/null +++ b/product/Localizer/locale/localizermsgs.tmx @@ -0,0 +1,14339 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE tmx SYSTEM "http://www.lisa.org/tmx/tmx14.dtd"> +<tmx version="1.4"> +<header +creationtool="Localizer" +creationtoolversion="1.x" +datatype="plaintext" +segtype="paragraph" +adminlang="en" +srclang="en" +o-encoding="utf-8" +> +</header> + +<body> +<tu> +<tuv xml:lang="en"> +<seg>(Afan) Oromo</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg><em>No languages available, please add them using the <a href='manage_languages'>Languages</a> tab</em></seg></tuv> +<tuv xml:lang="da"> +<seg><em>Ingen tilgængelige sprog, opret den venligst med <a href='manage_languages'>Sprog</a> fanebladet</em></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>A Local Content object provides a storage for multilingual (and non multilingual) properties. It also helps you keep your content separated from the logic and the presentation.</seg></tuv> +<tuv xml:lang="da"> +<seg>Et Local Content objekt leverer plads for flersprogede (og enkeltsprogede) egenskaber. +Det hjælper dig ogsÃ¥ med at adskille indhold fra logik og præsentation.</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Un Objet de contenu local permet de sauvegarder des propriétées multilingues (ou unique). Il permet également de séparer le contenu de la présentation et de la logique de l'application.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚±ãƒ¼ãƒ«ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ (Locale Content) オブジェクトã«ã¯ã€å¤šè¨€èªžã®ã‚ªãƒ–ジェクトãŒæ ¼ç´ã•ã‚Œã¾ã™ (マルãƒãƒªãƒ³ã‚¬ãƒ«ã§ã¯ã‚ã‚Šã¾ã›ã‚“) 。ãã—ã¦ã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’ãƒã‚¸ãƒƒã‚¯ã¨ãƒ—レゼンテーションã«åˆ†é›¢ã™ã‚‹ã®ã‚‚役立ã¡ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Un objeto <em>Local Content</em> proporciona un medio para almacenar propiedades multilingües (y monolingües). También ayuda a mantener el contenido separado de la lógica y la presentación.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>A Localizer object lets you customize the language negotiation policy. It lets you use cookies, the path or any other criteria to select the user prefered language.</seg></tuv> +<tuv xml:lang="da"> +<seg>Et Localizer object lader du tilpasse sprogforhandlingspolitikken. Det lader dig bruge cookies, stien eller enhvert andet kriterium for at fange brugerens foretrukne sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>A local folder is a generic solution to manage any kind of multingual objects, files, images, scripts, etc..</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg>Una carpeta local es una solución genérica para gestionar cualquier tipo de objetos multilingües, ficheros, imágenes, guiones de código, etc..</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>A message catalog stores messages and its translations to different languages. It provides the <tt>gettext</tt> method to get the right translation for a given message. Message catalogs are useful to translate the application interfaces (labels, buttons, etc..).</seg></tuv> +<tuv xml:lang="da"> +<seg>Et message catalog indeholder tekster og deres oversættelser til +forskellige sprog. Det leverer <tt>gettext</tt> metoden til at fÃ¥ +den rigtige oversættelse for en given tekst. Message catalog'er er +nyttige til at oversætte applikationssnitflader (etiketter, knapper, etc...).</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Un message catalog stocke les messages et leurs traductions. Il fournit la méthode <tt>gettext</tt> afin d'obtenir la bonne traduction pour un message donné. Les message catalogs sont utiles pour traduire les interfaces des applications (titres, boutons, etc.).</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージカタãƒã‚° (Message Catalog) ã«ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¨ãã‚Œã«å¯¾ã™ã‚‹è¨€èªžã”ã¨ã®ç¿»è¨³ãŒä¿å˜ã•ã‚Œã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«å¯¾ã™ã‚‹æ£ã—ã„翻訳をå–り出ã™ãŸã‚ã«ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒã‚°ã® <tt>gettext</tt> メソッドを使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚メッセージカタãƒã‚°ã¯ã€ãƒ©ãƒ™ãƒ«ã‚„ボタンãªã©ã‚¢ãƒ—リケーションã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ã‚¤ã‚¹ã‚’翻訳ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Un catálogo de mensajes almacena mensajes y sus traducciones a diferentes idiomas. Proporciona el método <tt>gettext</tt> para obtener la traducción correcta en un idioma dado. Los catálogos de mensajes son útiles para traducir las interfaces de la aplicación (etiquetas, botones, etc..).</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Abkhazian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Add</seg></tuv> +<tuv xml:lang="da"> +<seg>Tilføj</seg></tuv> +<tuv xml:lang="bg"> +<seg>ДобавÑне</seg></tuv> +<tuv xml:lang="ro"> +<seg>Adaugă</seg></tuv> +<tuv xml:lang="de"> +<seg>Hinzufügen</seg></tuv> +<tuv xml:lang="ca"> +<seg>Afegeix</seg></tuv> +<tuv xml:lang="eu"> +<seg>Gehitu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Hozzáadás</seg></tuv> +<tuv xml:lang="fr"> +<seg>Ajouter</seg></tuv> +<tuv xml:lang="ja"> +<seg>è¿½åŠ (A)</seg></tuv> +<tuv xml:lang="es"> +<seg>Añadir</seg></tuv> +<tuv xml:lang="el"> +<seg>Î Ïοσθήκη</seg></tuv> +<tuv xml:lang="sv"> +<seg>Lägg till</seg></tuv> +<tuv xml:lang="no"> +<seg>Legg til</seg></tuv> +<tuv xml:lang="it"> +<seg>Aggiungi</seg></tuv> +<tuv xml:lang="nl"> +<seg>Toevoegen</seg></tuv> +<tuv xml:lang="pl"> +<seg>Dodaj</seg></tuv> +<tuv xml:lang="fi"> +<seg>Lisää</seg></tuv> +<tuv xml:lang="lt"> +<seg>PridÄ—ti</seg></tuv> +<tuv xml:lang="lv"> +<seg>Pievienot</seg></tuv> +<tuv xml:lang="sl"> +<seg>Dodaj</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ekle</seg></tuv> +<tuv xml:lang="pt"> +<seg>Adicionar</seg></tuv> +<tuv xml:lang="sk"> +<seg>PridaÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Lisa</seg></tuv> +<tuv xml:lang="cs"> +<seg>PÅ™idat</seg></tuv> +<tuv xml:lang="is"> +<seg>Bæta við</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Add Local Content</seg></tuv> +<tuv xml:lang="da"> +<seg>Opret Local Content</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg>Contingut localitzat</seg></tuv> +<tuv xml:lang="eu"> +<seg>Itzulitako edukia</seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelvi tartalom</seg></tuv> +<tuv xml:lang="fr"> +<seg>Ajouter du contenu local</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒãƒ¼ã‚«ãƒ«ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®è¿½åŠ </seg></tuv> +<tuv xml:lang="es"> +<seg>Añadir contenido localizado</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Add Local Folder</seg></tuv> +<tuv xml:lang="da"> +<seg>Opret Local Folder</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg>Nou Localizer</seg></tuv> +<tuv xml:lang="eu"> +<seg>Localizer berria</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelvi mappa hozzáadása</seg></tuv> +<tuv xml:lang="fr"> +<seg>Ajouter un répertoire de langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã®è¿½åŠ </seg></tuv> +<tuv xml:lang="es"> +<seg>Añadir carpeta local</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Add Localizer</seg></tuv> +<tuv xml:lang="da"> +<seg>Opret Localizer</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg>Nou Localizer</seg></tuv> +<tuv xml:lang="eu"> +<seg>Localizer berria</seg></tuv> +<tuv xml:lang="hu"> +<seg>Új fordÃtó</seg></tuv> +<tuv xml:lang="fr"> +<seg>Ajouter une instance "Localizer"</seg></tuv> +<tuv xml:lang="ja"> +<seg>Localizer ã®è¿½åŠ </seg></tuv> +<tuv xml:lang="es"> +<seg>Añadir <em>Localizer</em></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Add Message Catalog</seg></tuv> +<tuv xml:lang="da"> +<seg>Opret Message Catalog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ãœzenet katalógus hozzáadása</seg></tuv> +<tuv xml:lang="fr"> +<seg>Ajouter un Message Catalog</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージカタãƒã‚°ã®è¿½åŠ </seg></tuv> +<tuv xml:lang="es"> +<seg>Añadir un catálogo de mensajes</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Afar</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Afrikaans</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Albanian</seg></tuv> +<tuv xml:lang="da"> +<seg>Albansk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Albaneză</seg></tuv> +<tuv xml:lang="de"> +<seg>Albanisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Albanès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Albán</seg></tuv> +<tuv xml:lang="fr"> +<seg>Albanais</seg></tuv> +<tuv xml:lang="ja"> +<seg>アルãƒãƒ‹ã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Albano</seg></tuv> +<tuv xml:lang="el"> +<seg>Albanian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Albanska</seg></tuv> +<tuv xml:lang="no"> +<seg>Albansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Albanese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Albanees</seg></tuv> +<tuv xml:lang="pl"> +<seg>AlbaÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>albania</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>AlbÄņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>AlbanÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Arnavutluk</seg></tuv> +<tuv xml:lang="pt"> +<seg>Albanês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Albánsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Albaania</seg></tuv> +<tuv xml:lang="cs"> +<seg>Albánsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Amharic</seg></tuv> +<tuv xml:lang="da"> +<seg>Amharisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐмхарÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Amharic</seg></tuv> +<tuv xml:lang="de"> +<seg>Amharisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Amharrès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Amhara</seg></tuv> +<tuv xml:lang="fr"> +<seg>Amharique</seg></tuv> +<tuv xml:lang="ja"> +<seg>アムãƒãƒ©èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Amhárico</seg></tuv> +<tuv xml:lang="el"> +<seg>Amharic</seg></tuv> +<tuv xml:lang="sv"> +<seg>Amhariska</seg></tuv> +<tuv xml:lang="no"> +<seg>Amharisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Amarico</seg></tuv> +<tuv xml:lang="nl"> +<seg>Amharisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Amharski</seg></tuv> +<tuv xml:lang="fi"> +<seg>amhara</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Amharu</seg></tuv> +<tuv xml:lang="sl"> +<seg>AmharÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Amharic</seg></tuv> +<tuv xml:lang="pt"> +<seg>Amarico</seg></tuv> +<tuv xml:lang="sk"> +<seg>Amharský</seg></tuv> +<tuv xml:lang="et"> +<seg>Amhari</seg></tuv> +<tuv xml:lang="cs"> +<seg>Amharsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Arabic</seg></tuv> +<tuv xml:lang="da"> +<seg>Arabisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐрабÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Arabic</seg></tuv> +<tuv xml:lang="de"> +<seg>Arabisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Àrab</seg></tuv> +<tuv xml:lang="eu"> +<seg>Arabikoa</seg></tuv> +<tuv xml:lang="hu"> +<seg>Arab</seg></tuv> +<tuv xml:lang="fr"> +<seg>Arabe</seg></tuv> +<tuv xml:lang="ja"> +<seg>アラビア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Ãrabe</seg></tuv> +<tuv xml:lang="el"> +<seg>ΑÏαβική</seg></tuv> +<tuv xml:lang="sv"> +<seg>Arabisk</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Arabo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Arabisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Arabskie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Arabia</seg></tuv> +<tuv xml:lang="lt"> +<seg>Arabų</seg></tuv> +<tuv xml:lang="lv"> +<seg>ArÄbu</seg></tuv> +<tuv xml:lang="sl"> +<seg>Arabski</seg></tuv> +<tuv xml:lang="tr"> +<seg>Arapça</seg></tuv> +<tuv xml:lang="pt"> +<seg>Ãrabe</seg></tuv> +<tuv xml:lang="sk"> +<seg>Arabská</seg></tuv> +<tuv xml:lang="et"> +<seg>Araabia</seg></tuv> +<tuv xml:lang="cs"> +<seg>ArabÅ¡tina</seg></tuv> +<tuv xml:lang="is"> +<seg>ArabÃskt</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Arabic (Egypt)</seg></tuv> +<tuv xml:lang="da"> +<seg>Arabisk (egyptisk)</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐрабÑки (ЕгипетÑки)</seg></tuv> +<tuv xml:lang="ro"> +<seg>Arabă (Egipt)</seg></tuv> +<tuv xml:lang="de"> +<seg>Arabisch (Ägypten)</seg></tuv> +<tuv xml:lang="ca"> +<seg>Àrab (Egipte)</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Arab (Egyiptom)</seg></tuv> +<tuv xml:lang="fr"> +<seg>Arabe (Égypte)</seg></tuv> +<tuv xml:lang="ja"> +<seg>アラビア語 (エジプト)</seg></tuv> +<tuv xml:lang="es"> +<seg>Ãrabe (Egipto)</seg></tuv> +<tuv xml:lang="el"> +<seg>Arabic (Egypt)</seg></tuv> +<tuv xml:lang="sv"> +<seg>Arabiska (Egypten)</seg></tuv> +<tuv xml:lang="no"> +<seg>Arabisk (Egypt)</seg></tuv> +<tuv xml:lang="it"> +<seg>Arabo (Egitto)</seg></tuv> +<tuv xml:lang="nl"> +<seg>Arabisch (Egypte)</seg></tuv> +<tuv xml:lang="pl"> +<seg>Arabski (Egipt)</seg></tuv> +<tuv xml:lang="fi"> +<seg>arabia (egyptin-)</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>ArÄbu (Ä’Ä£iptes)</seg></tuv> +<tuv xml:lang="sl"> +<seg>ArabÅ¡Äina (Egipt)</seg></tuv> +<tuv xml:lang="tr"> +<seg>Arapça (Mısır)</seg></tuv> +<tuv xml:lang="pt"> +<seg>Ãrabe (Egipcio)</seg></tuv> +<tuv xml:lang="sk"> +<seg>Arabský (Egypt)</seg></tuv> +<tuv xml:lang="et"> +<seg>Araabi (Egiptus)</seg></tuv> +<tuv xml:lang="cs"> +<seg>Arabsky (Egypt)</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Arabic (Lebanon)</seg></tuv> +<tuv xml:lang="da"> +<seg>Arabisk (libanesisk)</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐрабÑки (ЛиванÑки)</seg></tuv> +<tuv xml:lang="ro"> +<seg>Arabă (Liban)</seg></tuv> +<tuv xml:lang="de"> +<seg>Arabisch (Libanon)</seg></tuv> +<tuv xml:lang="ca"> +<seg>Àrab (LÃban)</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Arab (Libanon)</seg></tuv> +<tuv xml:lang="fr"> +<seg>Arabe (Liban)</seg></tuv> +<tuv xml:lang="ja"> +<seg>アラビア語 (レãƒãƒŽãƒ³)</seg></tuv> +<tuv xml:lang="es"> +<seg>Ãrabe (LÃbano)</seg></tuv> +<tuv xml:lang="el"> +<seg>Arabic (Lebanon)</seg></tuv> +<tuv xml:lang="sv"> +<seg>Arabiska (Libanon)</seg></tuv> +<tuv xml:lang="no"> +<seg>Arabisk (Libanon)</seg></tuv> +<tuv xml:lang="it"> +<seg>Arabo (Libano)</seg></tuv> +<tuv xml:lang="nl"> +<seg>Arabisch (Libanon)</seg></tuv> +<tuv xml:lang="pl"> +<seg>Arabski (Libia)</seg></tuv> +<tuv xml:lang="fi"> +<seg>arabia (libanonin-)</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>ArÄbu (Lebanonas)</seg></tuv> +<tuv xml:lang="sl"> +<seg>ArabÅ¡Äina (Libanon)</seg></tuv> +<tuv xml:lang="tr"> +<seg>Arapça (Lübnan)</seg></tuv> +<tuv xml:lang="pt"> +<seg>Ãrabe (Libanês)</seg></tuv> +<tuv xml:lang="sk"> +<seg>Arabský (Libanon)</seg></tuv> +<tuv xml:lang="et"> +<seg>Araabia (Liibanon)</seg></tuv> +<tuv xml:lang="cs"> +<seg>Arabsky (Libanon)</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Armenian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Assamese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Messages</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージ</seg></tuv> +<tuv xml:lang="es"> +<seg>Mensajes</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Attributes</seg></tuv> +<tuv xml:lang="da"> +<seg>Attributter</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg>属性</seg></tuv> +<tuv xml:lang="es"> +<seg>Atributos</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Aymara</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Azerbaijani</seg></tuv> +<tuv xml:lang="da"> +<seg>Aserbadjansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐзербайджанÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Azeră</seg></tuv> +<tuv xml:lang="de"> +<seg>Aserbaidschanisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Azerbaitjanès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Azerbajdzsán</seg></tuv> +<tuv xml:lang="fr"> +<seg>Azerbaijan</seg></tuv> +<tuv xml:lang="ja"> +<seg>アゼルãƒã‚¤ã‚¸ãƒ£ãƒ³èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>AzerbaijanÃ</seg></tuv> +<tuv xml:lang="el"> +<seg>Azerbaijani</seg></tuv> +<tuv xml:lang="sv"> +<seg>Azerbadjanska</seg></tuv> +<tuv xml:lang="no"> +<seg>Aserbajdsjansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Azerbaigiano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Azerbeidjaans</seg></tuv> +<tuv xml:lang="pl"> +<seg>AzerbejdżaÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>azeri</seg></tuv> +<tuv xml:lang="lt"> +<seg>AzerbaidžanieÄių:</seg></tuv> +<tuv xml:lang="lv"> +<seg>AzerbaidžÄnu</seg></tuv> +<tuv xml:lang="sl"> +<seg>AzerbaižanÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Azerice</seg></tuv> +<tuv xml:lang="pt"> +<seg>Azerbeijani</seg></tuv> +<tuv xml:lang="sk"> +<seg>Ãzerbajdžánsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Aserbaidžaani</seg></tuv> +<tuv xml:lang="cs"> +<seg>Ãzerbajdžánsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bashkir</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Basque</seg></tuv> +<tuv xml:lang="da"> +<seg>Baskisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>БаÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Bască</seg></tuv> +<tuv xml:lang="de"> +<seg>Baskisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Basc</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Baszk</seg></tuv> +<tuv xml:lang="fr"> +<seg>Basque</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚¹ã‚¯èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Vasco</seg></tuv> +<tuv xml:lang="el"> +<seg>Basque</seg></tuv> +<tuv xml:lang="sv"> +<seg>Baskiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Baskisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Basco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Baskisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Baskijski</seg></tuv> +<tuv xml:lang="fi"> +<seg>baski</seg></tuv> +<tuv xml:lang="lt"> +<seg>Baskų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Basku</seg></tuv> +<tuv xml:lang="sl"> +<seg>BaskovÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Bask</seg></tuv> +<tuv xml:lang="pt"> +<seg>Basco</seg></tuv> +<tuv xml:lang="sk"> +<seg>Baskitský</seg></tuv> +<tuv xml:lang="et"> +<seg>Baski</seg></tuv> +<tuv xml:lang="cs"> +<seg>Baskicky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bengali</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg>BengalÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Bengali</seg></tuv> +<tuv xml:lang="pt"> +<seg>Bengalês</seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bengali; Bangla</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Besides the title the header of a PO file stores more information; the name and the email address of the last translator, the email address of the translation team and the charset. The forms below let you modify this information for each language.</seg></tuv> +<tuv xml:lang="da"> +<seg>Udover titlen gemmer hovedet pÃ¥ PO filen pÃ¥ mere information; +navn og email adresse pÃ¥ den sidste oversætter, email adressen pÃ¥ +oversættelsesholdet og tegnsættet. Formularerne nedenfor lader +dig ændre denne information for hvert sprog.</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>En plus du titre, l'entête d'un fichier PO stocke d'autres informations : le nom et l'adresse email du dernier traducteur, l'adresse email de l'équipe de traduction et le type de caractères. Le formulaire situé en dessous permet de modifier ces information pour chaque langue.</seg></tuv> +<tuv xml:lang="ja"> +<seg>PO ファイルã®ãƒ˜ãƒƒãƒ€ã«ã¯ã€ã‚¿ã‚¤ãƒˆãƒ«ã ã‘ã§ãªãã€åå‰ã€é›»åメールアドレスã€æœ€çµ‚翻訳者ã€ç¿»è¨³ãƒãƒ¼ãƒ ã®é›»åメールアドレスã€æ–‡å—セットãªã©ã€ãã®ä»–ã®æƒ…å ±ãŒæ ¼ç´ã•ã‚Œã¾ã™ã€‚下ã®ãƒ•ã‚©ãƒ¼ãƒ ã¯ã€ã“ã®æƒ…å ±ã‚’è¨€èªžã”ã¨ã«æŒ‡å®šã§ãるよã†ã«ã™ã‚‹ã‚‚ã®ã§ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Además del tÃtulo las cabeceras de los ficheros PO almacenan más información, el nombre y la dirección de correo electrónico del último traductor, la dirección de correo electrónico del equipo de traducción y el conjunto de caracteres. Los formularios que hay abajo permiten modificar esta información para cada idioma.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bhutani</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bihari</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bislama</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bosnian</seg></tuv> +<tuv xml:lang="da"> +<seg>Bosnisk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Bosniacă</seg></tuv> +<tuv xml:lang="de"> +<seg>Bosnisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Bosni</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Bosnyák</seg></tuv> +<tuv xml:lang="fr"> +<seg>Bosniaque</seg></tuv> +<tuv xml:lang="ja"> +<seg>ボスニア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Bosnio</seg></tuv> +<tuv xml:lang="el"> +<seg>Bosnian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Bosniska</seg></tuv> +<tuv xml:lang="no"> +<seg>Bosnisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Bosniaco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Bosnisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>BoÅ›niacki</seg></tuv> +<tuv xml:lang="fi"> +<seg>bosnia</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>BosnieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>BosanÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Bosna-Hersek</seg></tuv> +<tuv xml:lang="pt"> +<seg>Bósnio</seg></tuv> +<tuv xml:lang="sk"> +<seg>Bosenský</seg></tuv> +<tuv xml:lang="et"> +<seg>Bosnia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Bosensky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Breton</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Bulgarian</seg></tuv> +<tuv xml:lang="da"> +<seg>Bulgarsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>БългарÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Bulgară</seg></tuv> +<tuv xml:lang="de"> +<seg>Bulgarisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Búlgar</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Bolgár</seg></tuv> +<tuv xml:lang="fr"> +<seg>Bulgare</seg></tuv> +<tuv xml:lang="ja"> +<seg>ブルガリア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Búlgaro</seg></tuv> +<tuv xml:lang="el"> +<seg>Bulgarian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Bulgariska</seg></tuv> +<tuv xml:lang="no"> +<seg>Bulgarsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Bulgaro</seg></tuv> +<tuv xml:lang="nl"> +<seg>Bulgaars</seg></tuv> +<tuv xml:lang="pl"> +<seg>BuÅ‚garski</seg></tuv> +<tuv xml:lang="fi"> +<seg>bulgaria</seg></tuv> +<tuv xml:lang="lt"> +<seg>Bulgarų</seg></tuv> +<tuv xml:lang="lv"> +<seg>BulgÄru</seg></tuv> +<tuv xml:lang="sl"> +<seg>BulgarÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Bulgarca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Búlgaro</seg></tuv> +<tuv xml:lang="sk"> +<seg>Bulharský</seg></tuv> +<tuv xml:lang="et"> +<seg>Bulgaaria</seg></tuv> +<tuv xml:lang="cs"> +<seg>Bulharsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Burmese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Byelorussian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Cambodian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Catalan</seg></tuv> +<tuv xml:lang="da"> +<seg>Katalansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>КаталунÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Catalană</seg></tuv> +<tuv xml:lang="de"> +<seg>Katalanisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Català </seg></tuv> +<tuv xml:lang="eu"> +<seg>Katalana</seg></tuv> +<tuv xml:lang="hu"> +<seg>Katalán</seg></tuv> +<tuv xml:lang="fr"> +<seg>Catalan</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã‚«ã‚¿ãƒãƒ‹ã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Catalán</seg></tuv> +<tuv xml:lang="el"> +<seg>Catalan</seg></tuv> +<tuv xml:lang="sv"> +<seg>Katalanska</seg></tuv> +<tuv xml:lang="no"> +<seg>Katalansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Catalano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Catalaans</seg></tuv> +<tuv xml:lang="pl"> +<seg>KataloÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>katalaani</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>KatalÄ«na</seg></tuv> +<tuv xml:lang="sl"> +<seg>KatalonÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Katalan</seg></tuv> +<tuv xml:lang="pt"> +<seg>Catalão</seg></tuv> +<tuv xml:lang="sk"> +<seg>Katalánsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Katalaani</seg></tuv> +<tuv xml:lang="cs"> +<seg>Katalánsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Change</seg></tuv> +<tuv xml:lang="da"> +<seg>Ændr</seg></tuv> +<tuv xml:lang="bg"> +<seg>Редактиране</seg></tuv> +<tuv xml:lang="ro"> +<seg>Schimbă</seg></tuv> +<tuv xml:lang="de"> +<seg>Ändern</seg></tuv> +<tuv xml:lang="ca"> +<seg>Canvia</seg></tuv> +<tuv xml:lang="eu"> +<seg>Aldatu</seg></tuv> +<tuv xml:lang="hu"> +<seg>MódosÃtás</seg></tuv> +<tuv xml:lang="fr"> +<seg>Changer</seg></tuv> +<tuv xml:lang="ja"> +<seg>変更</seg></tuv> +<tuv xml:lang="es"> +<seg>Cambiar</seg></tuv> +<tuv xml:lang="el"> +<seg>Αλλαγή</seg></tuv> +<tuv xml:lang="sv"> +<seg>Ändra</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Cambia</seg></tuv> +<tuv xml:lang="nl"> +<seg>Wijzigen</seg></tuv> +<tuv xml:lang="pl"> +<seg>ZmieÅ„</seg></tuv> +<tuv xml:lang="fi"> +<seg>Muokkaa</seg></tuv> +<tuv xml:lang="lt"> +<seg>Pakeisti</seg></tuv> +<tuv xml:lang="lv"> +<seg>MainÄ«t</seg></tuv> +<tuv xml:lang="sl"> +<seg>Spremeni</seg></tuv> +<tuv xml:lang="tr"> +<seg>DeÄŸiÅŸtir</seg></tuv> +<tuv xml:lang="pt"> +<seg>Alterar</seg></tuv> +<tuv xml:lang="sk"> +<seg>ZmeniÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Muuda</seg></tuv> +<tuv xml:lang="cs"> +<seg>ZmÄ›nit</seg></tuv> +<tuv xml:lang="is"> +<seg>Breyta</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Charset</seg></tuv> +<tuv xml:lang="da"> +<seg>Tegnsæt</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Változtat</seg></tuv> +<tuv xml:lang="fr"> +<seg>Type de caractères</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ–‡å—セット</seg></tuv> +<tuv xml:lang="es"> +<seg>Conjunto de caracteres</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Chinese</seg></tuv> +<tuv xml:lang="da"> +<seg>Kinesisk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Változtat</seg></tuv> +<tuv xml:lang="fr"> +<seg>Modifier</seg></tuv> +<tuv xml:lang="ja"> +<seg>変更</seg></tuv> +<tuv xml:lang="es"> +<seg>Cambiar</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Chinese (simplified)</seg></tuv> +<tuv xml:lang="da"> +<seg>Kinesisk (forenklet)</seg></tuv> +<tuv xml:lang="bg"> +<seg>КитайÑки (опроÑтен)</seg></tuv> +<tuv xml:lang="ro"> +<seg>Chineză (simplificată)</seg></tuv> +<tuv xml:lang="de"> +<seg>Chinesisch (vereinfacht)</seg></tuv> +<tuv xml:lang="ca"> +<seg>Xinés (simplificat)</seg></tuv> +<tuv xml:lang="eu"> +<seg>Txinera (sinplifikatua)</seg></tuv> +<tuv xml:lang="hu"> +<seg>KÃnai (egyszerűsÃtett)</seg></tuv> +<tuv xml:lang="fr"> +<seg>Chinois (simplifié)</seg></tuv> +<tuv xml:lang="ja"> +<seg>ä¸å›½èªž(簡体)</seg></tuv> +<tuv xml:lang="es"> +<seg>Chino (simplificado)</seg></tuv> +<tuv xml:lang="el"> +<seg>Chinese (simplified)</seg></tuv> +<tuv xml:lang="sv"> +<seg>Kinesiska (förenklad)</seg></tuv> +<tuv xml:lang="no"> +<seg>Kinesisk (forenklet)</seg></tuv> +<tuv xml:lang="it"> +<seg>Cinese (semplificato)</seg></tuv> +<tuv xml:lang="nl"> +<seg>Chinees (vereenvoudigd)</seg></tuv> +<tuv xml:lang="pl"> +<seg>ChiÅ„ski (uproszczony)</seg></tuv> +<tuv xml:lang="fi"> +<seg>kiina (yksinkertaistettu)</seg></tuv> +<tuv xml:lang="lt"> +<seg>Kinų (supaprastinta)</seg></tuv> +<tuv xml:lang="lv"> +<seg>ĶīnieÅ¡u (vienkÄrÅ¡ota)</seg></tuv> +<tuv xml:lang="sl"> +<seg>KitajÅ¡Äina (poenostavljena)</seg></tuv> +<tuv xml:lang="tr"> +<seg>Çince (basitleÅŸtirilmiÅŸ)</seg></tuv> +<tuv xml:lang="pt"> +<seg>Chinês (simplificado)</seg></tuv> +<tuv xml:lang="sk"> +<seg>ÄŒÃnsky (zjednoduÅ¡ené)</seg></tuv> +<tuv xml:lang="et"> +<seg>Hiina lihtsustatud</seg></tuv> +<tuv xml:lang="cs"> +<seg>ÄŒÃnsky (zjednoduÅ¡ené)</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Chinese (traditional)</seg></tuv> +<tuv xml:lang="da"> +<seg>Kinesisk (traditionel)</seg></tuv> +<tuv xml:lang="bg"> +<seg>КитайÑки (традиционен)</seg></tuv> +<tuv xml:lang="ro"> +<seg>Chineză (tradiÅ£ională)</seg></tuv> +<tuv xml:lang="de"> +<seg>Chinesisch (traditionell)</seg></tuv> +<tuv xml:lang="ca"> +<seg>Xinés (tradicional)</seg></tuv> +<tuv xml:lang="eu"> +<seg>Txinera (tradizionala)</seg></tuv> +<tuv xml:lang="hu"> +<seg>KÃnai (hagyományos)</seg></tuv> +<tuv xml:lang="fr"> +<seg>Chinois (traditionnel)</seg></tuv> +<tuv xml:lang="ja"> +<seg>ä¸å›½èªž(ç¹ä½“)</seg></tuv> +<tuv xml:lang="es"> +<seg>Chino (tradicional)</seg></tuv> +<tuv xml:lang="el"> +<seg>Chinese (traditional)</seg></tuv> +<tuv xml:lang="sv"> +<seg>Kinesiska (traditionell)</seg></tuv> +<tuv xml:lang="no"> +<seg>Kinesisk (tradisjonell)</seg></tuv> +<tuv xml:lang="it"> +<seg>Cinese (tradizionale)</seg></tuv> +<tuv xml:lang="nl"> +<seg>Chinees (traditioneel)</seg></tuv> +<tuv xml:lang="pl"> +<seg>ChiÅ„ski (tradycyjny)</seg></tuv> +<tuv xml:lang="fi"> +<seg>kiina (perinteinen)</seg></tuv> +<tuv xml:lang="lt"> +<seg>Kinų (tradicinÄ—)</seg></tuv> +<tuv xml:lang="lv"> +<seg>ĶīnieÅ¡u (tradicionÄlÄ)</seg></tuv> +<tuv xml:lang="sl"> +<seg>KitajÅ¡Äina (tradicijonalna)</seg></tuv> +<tuv xml:lang="tr"> +<seg>Çince (geleneksel)</seg></tuv> +<tuv xml:lang="pt"> +<seg>Chinês (tradicional)</seg></tuv> +<tuv xml:lang="sk"> +<seg>ÄŒÃnsky (tradiÄné)</seg></tuv> +<tuv xml:lang="et"> +<seg>Hiina traditsiooniline</seg></tuv> +<tuv xml:lang="cs"> +<seg>ÄŒÃnsky (tradiÄnÃ)</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Chinese/China</seg></tuv> +<tuv xml:lang="da"> +<seg>Kinesisk/kina</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Chinese/Taiwan</seg></tuv> +<tuv xml:lang="da"> +<seg>Kinesisk/Taiwan</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Clear catalog and import all messages</seg></tuv> +<tuv xml:lang="da"> +<seg>Slet kataloget og importer alle tekster</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Contents</seg></tuv> +<tuv xml:lang="da"> +<seg>Indhold</seg></tuv> +<tuv xml:lang="bg"> +<seg>Съдържание</seg></tuv> +<tuv xml:lang="ro"> +<seg>Cuprins</seg></tuv> +<tuv xml:lang="de"> +<seg>Inhalt</seg></tuv> +<tuv xml:lang="ca"> +<seg>Contingut</seg></tuv> +<tuv xml:lang="eu"> +<seg>Edukiak</seg></tuv> +<tuv xml:lang="hu"> +<seg>Tartalom</seg></tuv> +<tuv xml:lang="fr"> +<seg>Contenu</seg></tuv> +<tuv xml:lang="ja"> +<seg>内容</seg></tuv> +<tuv xml:lang="es"> +<seg>Contenido</seg></tuv> +<tuv xml:lang="el"> +<seg>ΠεÏιεχόμενα</seg></tuv> +<tuv xml:lang="sv"> +<seg>InnehÃ¥ll</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Indice</seg></tuv> +<tuv xml:lang="nl"> +<seg>Inhoud</seg></tuv> +<tuv xml:lang="pl"> +<seg>Spis treÅ›ci</seg></tuv> +<tuv xml:lang="fi"> +<seg>Sisältö</seg></tuv> +<tuv xml:lang="lt"> +<seg>Turinys</seg></tuv> +<tuv xml:lang="lv"> +<seg>Saturs</seg></tuv> +<tuv xml:lang="sl"> +<seg>Vsebina</seg></tuv> +<tuv xml:lang="tr"> +<seg>İçindekiler</seg></tuv> +<tuv xml:lang="pt"> +<seg>Conteúdo</seg></tuv> +<tuv xml:lang="sk"> +<seg>Obsah</seg></tuv> +<tuv xml:lang="et"> +<seg>Sisukord</seg></tuv> +<tuv xml:lang="cs"> +<seg>Obsah</seg></tuv> +<tuv xml:lang="is"> +<seg>Innihald</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Corsican</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Croatian</seg></tuv> +<tuv xml:lang="da"> +<seg>Kroatisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ХърватÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Croată</seg></tuv> +<tuv xml:lang="de"> +<seg>Kroatisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Croat</seg></tuv> +<tuv xml:lang="eu"> +<seg>Kroaziera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Horvát</seg></tuv> +<tuv xml:lang="fr"> +<seg>Croate</seg></tuv> +<tuv xml:lang="ja"> +<seg>クãƒã‚¢ãƒã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Croata</seg></tuv> +<tuv xml:lang="el"> +<seg>Croatian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Kroatiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Kroatisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Croato</seg></tuv> +<tuv xml:lang="nl"> +<seg>Kroatisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Chorwacki</seg></tuv> +<tuv xml:lang="fi"> +<seg>kroatia</seg></tuv> +<tuv xml:lang="lt"> +<seg>Kroatų</seg></tuv> +<tuv xml:lang="lv"> +<seg>HorvÄtu</seg></tuv> +<tuv xml:lang="sl"> +<seg>HrvaÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Hırvatça</seg></tuv> +<tuv xml:lang="pt"> +<seg>Croata</seg></tuv> +<tuv xml:lang="sk"> +<seg>Chorvátsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Horvaatia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Chorvatsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Czech</seg></tuv> +<tuv xml:lang="da"> +<seg>Tjekkisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>Чешки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Cehă</seg></tuv> +<tuv xml:lang="de"> +<seg>Tschechisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Txec</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Cseh</seg></tuv> +<tuv xml:lang="fr"> +<seg>Tchèque</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚§ã‚³èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Checo</seg></tuv> +<tuv xml:lang="el"> +<seg>ΤσÎχικο</seg></tuv> +<tuv xml:lang="sv"> +<seg>Tjeckisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Tjekkisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Ceco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Tsjechisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Czeski</seg></tuv> +<tuv xml:lang="fi"> +<seg>TÅ¡ekki</seg></tuv> +<tuv xml:lang="lt"> +<seg>ÄŒekų</seg></tuv> +<tuv xml:lang="lv"> +<seg>ÄŒehu</seg></tuv> +<tuv xml:lang="sl"> +<seg>ÄeÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Çekçe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Checo</seg></tuv> +<tuv xml:lang="sk"> +<seg>ÄŒeský</seg></tuv> +<tuv xml:lang="et"> +<seg>TÅ¡ehhi</seg></tuv> +<tuv xml:lang="cs"> +<seg>ÄŒeský</seg></tuv> +<tuv xml:lang="is"> +<seg>Tékkneska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Danish</seg></tuv> +<tuv xml:lang="da"> +<seg>Dansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ДатÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Daneză</seg></tuv> +<tuv xml:lang="de"> +<seg>Dänisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Danès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Daniera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Dán</seg></tuv> +<tuv xml:lang="fr"> +<seg>Danois</seg></tuv> +<tuv xml:lang="ja"> +<seg>デンマーク語</seg></tuv> +<tuv xml:lang="es"> +<seg>Danés</seg></tuv> +<tuv xml:lang="el"> +<seg>ΔανÎζικο</seg></tuv> +<tuv xml:lang="sv"> +<seg>Dansk</seg></tuv> +<tuv xml:lang="no"> +<seg>Dansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Danese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Deens</seg></tuv> +<tuv xml:lang="pl"> +<seg>DuÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tanska</seg></tuv> +<tuv xml:lang="lt"> +<seg>Danų</seg></tuv> +<tuv xml:lang="lv"> +<seg>DÄņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>danÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Danca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Dinamarquês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Dánsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Taani</seg></tuv> +<tuv xml:lang="cs"> +<seg>Dánský</seg></tuv> +<tuv xml:lang="is"> +<seg>Danska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Delete</seg></tuv> +<tuv xml:lang="da"> +<seg>Slet</seg></tuv> +<tuv xml:lang="bg"> +<seg>Изтриване</seg></tuv> +<tuv xml:lang="ro"> +<seg>Åžterge</seg></tuv> +<tuv xml:lang="de"> +<seg>Löschen</seg></tuv> +<tuv xml:lang="ca"> +<seg>Esborra</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ezabatu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Törlés</seg></tuv> +<tuv xml:lang="fr"> +<seg>Supprimer</seg></tuv> +<tuv xml:lang="ja"> +<seg>削除</seg></tuv> +<tuv xml:lang="es"> +<seg>Eliminar</seg></tuv> +<tuv xml:lang="el"> +<seg>ΔιαγÏαφή</seg></tuv> +<tuv xml:lang="sv"> +<seg>Ta bort</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Elimina</seg></tuv> +<tuv xml:lang="nl"> +<seg>Verwijderen</seg></tuv> +<tuv xml:lang="pl"> +<seg>UsuÅ„</seg></tuv> +<tuv xml:lang="fi"> +<seg>Poista</seg></tuv> +<tuv xml:lang="lt"> +<seg>PaÅ¡alinti</seg></tuv> +<tuv xml:lang="lv"> +<seg>DzÄ“st</seg></tuv> +<tuv xml:lang="sl"> +<seg>IzbriÅ¡i</seg></tuv> +<tuv xml:lang="tr"> +<seg>Sil</seg></tuv> +<tuv xml:lang="pt"> +<seg>Remover</seg></tuv> +<tuv xml:lang="sk"> +<seg>ZmazaÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Kustuta</seg></tuv> +<tuv xml:lang="cs"> +<seg>Smazat</seg></tuv> +<tuv xml:lang="is"> +<seg>Eyða</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Dutch</seg></tuv> +<tuv xml:lang="da"> +<seg>Hollandsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ХоландÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Olandeză</seg></tuv> +<tuv xml:lang="de"> +<seg>Niederländisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Holandès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Nederlandera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Holland</seg></tuv> +<tuv xml:lang="fr"> +<seg>Hollandais</seg></tuv> +<tuv xml:lang="ja"> +<seg>オランダ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Holandés</seg></tuv> +<tuv xml:lang="el"> +<seg>Dutch</seg></tuv> +<tuv xml:lang="sv"> +<seg>Holländska</seg></tuv> +<tuv xml:lang="no"> +<seg>Nederlandsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Olandese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Nederlands</seg></tuv> +<tuv xml:lang="pl"> +<seg>Holenderski</seg></tuv> +<tuv xml:lang="fi"> +<seg>hollanti</seg></tuv> +<tuv xml:lang="lt"> +<seg>Olandų</seg></tuv> +<tuv xml:lang="lv"> +<seg>HolandieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>NizozemÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Hollanda dili</seg></tuv> +<tuv xml:lang="pt"> +<seg>Holandês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Holandský</seg></tuv> +<tuv xml:lang="et"> +<seg>Hollandi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Holandsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Dutch/Belgium</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>English</seg></tuv> +<tuv xml:lang="da"> +<seg>Engelsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐнглийÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Engleză</seg></tuv> +<tuv xml:lang="de"> +<seg>Englisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Anglès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ingelera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Angol</seg></tuv> +<tuv xml:lang="fr"> +<seg>Anglais</seg></tuv> +<tuv xml:lang="ja"> +<seg>英語</seg></tuv> +<tuv xml:lang="es"> +<seg>Inglés</seg></tuv> +<tuv xml:lang="el"> +<seg>Αγγλικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Engelsk</seg></tuv> +<tuv xml:lang="no"> +<seg>Engelsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Inglese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Engels</seg></tuv> +<tuv xml:lang="pl"> +<seg>Angielski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Englanti</seg></tuv> +<tuv xml:lang="lt"> +<seg>Anglų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Angļu</seg></tuv> +<tuv xml:lang="sl"> +<seg>angleÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°ngilizce</seg></tuv> +<tuv xml:lang="pt"> +<seg>Inglês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Anglický</seg></tuv> +<tuv xml:lang="et"> +<seg>Inglise</seg></tuv> +<tuv xml:lang="cs"> +<seg>Anglický</seg></tuv> +<tuv xml:lang="is"> +<seg>Enska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>English/United Kingdom</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>English/United States</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="da"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЕÑперанто</seg></tuv> +<tuv xml:lang="ro"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="de"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="ca"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="eu"> +<seg>Esperantoa</seg></tuv> +<tuv xml:lang="hu"> +<seg>Eszperantó</seg></tuv> +<tuv xml:lang="fr"> +<seg>Espéranto</seg></tuv> +<tuv xml:lang="ja"> +<seg>エスペラント語</seg></tuv> +<tuv xml:lang="es"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="el"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="sv"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="nl"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="pl"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="fi"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="lt"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="lv"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="sl"> +<seg>esperanto</seg></tuv> +<tuv xml:lang="tr"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="pt"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="sk"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="et"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="cs"> +<seg>Esperanto</seg></tuv> +<tuv xml:lang="is"> +<seg>Esperanto</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Estonian</seg></tuv> +<tuv xml:lang="da"> +<seg>Estisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЕÑтонÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Estoniană</seg></tuv> +<tuv xml:lang="de"> +<seg>Estnisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Estonià </seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Észt</seg></tuv> +<tuv xml:lang="fr"> +<seg>Estonien</seg></tuv> +<tuv xml:lang="ja"> +<seg>エストニア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Estonio</seg></tuv> +<tuv xml:lang="el"> +<seg>Estonian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Estniska</seg></tuv> +<tuv xml:lang="no"> +<seg>Estisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Estone</seg></tuv> +<tuv xml:lang="nl"> +<seg>Ests</seg></tuv> +<tuv xml:lang="pl"> +<seg>EstoÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>viro</seg></tuv> +<tuv xml:lang="lt"> +<seg>Estų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Igauņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>EstonÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Estonyaca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Estónio</seg></tuv> +<tuv xml:lang="sk"> +<seg>Estónsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Eesti</seg></tuv> +<tuv xml:lang="cs"> +<seg>Estonsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Export</seg></tuv> +<tuv xml:lang="da"> +<seg>Eksportér</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЕкÑпорт</seg></tuv> +<tuv xml:lang="ro"> +<seg>Exportă</seg></tuv> +<tuv xml:lang="de"> +<seg>Exportieren</seg></tuv> +<tuv xml:lang="ca"> +<seg>Exporta</seg></tuv> +<tuv xml:lang="eu"> +<seg>Esportatu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Exportálás</seg></tuv> +<tuv xml:lang="fr"> +<seg>Exporter</seg></tuv> +<tuv xml:lang="ja"> +<seg>エクスãƒãƒ¼ãƒˆ</seg></tuv> +<tuv xml:lang="es"> +<seg>Exportar</seg></tuv> +<tuv xml:lang="el"> +<seg>Εξαγωγή</seg></tuv> +<tuv xml:lang="sv"> +<seg>Exportera</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Esporta</seg></tuv> +<tuv xml:lang="nl"> +<seg>Exporteren</seg></tuv> +<tuv xml:lang="pl"> +<seg>Eksportuj</seg></tuv> +<tuv xml:lang="fi"> +<seg>Vie</seg></tuv> +<tuv xml:lang="lt"> +<seg>Eksportuoti</seg></tuv> +<tuv xml:lang="lv"> +<seg>EksportÄ“t</seg></tuv> +<tuv xml:lang="sl"> +<seg>Izvozi</seg></tuv> +<tuv xml:lang="tr"> +<seg>Gönder:</seg></tuv> +<tuv xml:lang="pt"> +<seg>Exportar</seg></tuv> +<tuv xml:lang="sk"> +<seg>ExportovaÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Eksport</seg></tuv> +<tuv xml:lang="cs"> +<seg>Exportovat</seg></tuv> +<tuv xml:lang="is"> +<seg>Flytja út</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Export messages to PO file</seg></tuv> +<tuv xml:lang="da"> +<seg>Eksporter tekster til PO fil</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Export messages to TMX file</seg></tuv> +<tuv xml:lang="da"> +<seg>Eksporter tekster til TMX fil</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Export messages to XLIFF file</seg></tuv> +<tuv xml:lang="da"> +<seg>Exporter tekster til XLIFF fil</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Faroese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Fiji</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>File</seg></tuv> +<tuv xml:lang="da"> +<seg>Fil</seg></tuv> +<tuv xml:lang="bg"> +<seg>Файл</seg></tuv> +<tuv xml:lang="ro"> +<seg>FiÅŸier</seg></tuv> +<tuv xml:lang="de"> +<seg>Datei</seg></tuv> +<tuv xml:lang="ca"> +<seg>Arxiva</seg></tuv> +<tuv xml:lang="eu"> +<seg>Fitxategia</seg></tuv> +<tuv xml:lang="hu"> +<seg>Fájl</seg></tuv> +<tuv xml:lang="fr"> +<seg>Fichier</seg></tuv> +<tuv xml:lang="ja"> +<seg>ファイル</seg></tuv> +<tuv xml:lang="es"> +<seg>Archivo</seg></tuv> +<tuv xml:lang="el"> +<seg>ΑÏχείο</seg></tuv> +<tuv xml:lang="sv"> +<seg>Arkiv</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>File</seg></tuv> +<tuv xml:lang="nl"> +<seg>Bestand</seg></tuv> +<tuv xml:lang="pl"> +<seg>Plik</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tiedosto</seg></tuv> +<tuv xml:lang="lt"> +<seg>Byla</seg></tuv> +<tuv xml:lang="lv"> +<seg>Fails</seg></tuv> +<tuv xml:lang="sl"> +<seg>Datoteka</seg></tuv> +<tuv xml:lang="tr"> +<seg>Dosya</seg></tuv> +<tuv xml:lang="pt"> +<seg>Ficheiro</seg></tuv> +<tuv xml:lang="sk"> +<seg>Súbor</seg></tuv> +<tuv xml:lang="et"> +<seg>Fail</seg></tuv> +<tuv xml:lang="cs"> +<seg>Soubor</seg></tuv> +<tuv xml:lang="is"> +<seg>Skrá</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>File / Language</seg></tuv> +<tuv xml:lang="da"> +<seg>Fil / Sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Datei / Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Nou llenguatge</seg></tuv> +<tuv xml:lang="eu"> +<seg>Hizkuntza berria</seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelv</seg></tuv> +<tuv xml:lang="fr"> +<seg>Fichier / Langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>ファイル/言語</seg></tuv> +<tuv xml:lang="es"> +<seg>Fichero / Idioma</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Filter</seg></tuv> +<tuv xml:lang="da"> +<seg>Filtrer</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Filtern</seg></tuv> +<tuv xml:lang="ca"> +<seg>Filtrar</seg></tuv> +<tuv xml:lang="eu"> +<seg>Galbahetu</seg></tuv> +<tuv xml:lang="hu"> +<seg>SzűrÅ‘</seg></tuv> +<tuv xml:lang="fr"> +<seg>Filtrer</seg></tuv> +<tuv xml:lang="ja"> +<seg>フィルタ</seg></tuv> +<tuv xml:lang="es"> +<seg>Filtrar</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Find</seg></tuv> +<tuv xml:lang="da"> +<seg>Find</seg></tuv> +<tuv xml:lang="bg"> +<seg>ТърÑене</seg></tuv> +<tuv xml:lang="ro"> +<seg>Caută</seg></tuv> +<tuv xml:lang="de"> +<seg>Suchen</seg></tuv> +<tuv xml:lang="ca"> +<seg>Cerca</seg></tuv> +<tuv xml:lang="eu"> +<seg>Aurkitu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Keresés</seg></tuv> +<tuv xml:lang="fr"> +<seg>Chercher</seg></tuv> +<tuv xml:lang="ja"> +<seg>検索</seg></tuv> +<tuv xml:lang="es"> +<seg>Buscar</seg></tuv> +<tuv xml:lang="el"> +<seg>ΕÏÏεση</seg></tuv> +<tuv xml:lang="sv"> +<seg>Sök</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Trova</seg></tuv> +<tuv xml:lang="nl"> +<seg>Zoeken</seg></tuv> +<tuv xml:lang="pl"> +<seg>Znajdź</seg></tuv> +<tuv xml:lang="fi"> +<seg>Etsi</seg></tuv> +<tuv xml:lang="lt"> +<seg>IeÅ¡koti</seg></tuv> +<tuv xml:lang="lv"> +<seg>MeklÄ“t</seg></tuv> +<tuv xml:lang="sl"> +<seg>Najdi</seg></tuv> +<tuv xml:lang="tr"> +<seg>Bul</seg></tuv> +<tuv xml:lang="pt"> +<seg>Procurar</seg></tuv> +<tuv xml:lang="sk"> +<seg>HľadaÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Otsi</seg></tuv> +<tuv xml:lang="cs"> +<seg>NajÃt</seg></tuv> +<tuv xml:lang="is"> +<seg>Finna</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Finnish</seg></tuv> +<tuv xml:lang="da"> +<seg>Finsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ФинÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Finlandeză</seg></tuv> +<tuv xml:lang="de"> +<seg>Finnisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Finès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Finlandiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Finn</seg></tuv> +<tuv xml:lang="fr"> +<seg>Finnois</seg></tuv> +<tuv xml:lang="ja"> +<seg>フィンランド語</seg></tuv> +<tuv xml:lang="es"> +<seg>Finlandés</seg></tuv> +<tuv xml:lang="el"> +<seg>Finnish</seg></tuv> +<tuv xml:lang="sv"> +<seg>Finska</seg></tuv> +<tuv xml:lang="no"> +<seg>Finsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Finnico</seg></tuv> +<tuv xml:lang="nl"> +<seg>Fins</seg></tuv> +<tuv xml:lang="pl"> +<seg>FiÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>suomi</seg></tuv> +<tuv xml:lang="lt"> +<seg>Suomių</seg></tuv> +<tuv xml:lang="lv"> +<seg>Somu</seg></tuv> +<tuv xml:lang="sl"> +<seg>FinÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Fince</seg></tuv> +<tuv xml:lang="pt"> +<seg>Terminar</seg></tuv> +<tuv xml:lang="sk"> +<seg>FÃnsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Soome</seg></tuv> +<tuv xml:lang="cs"> +<seg>Finsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>French</seg></tuv> +<tuv xml:lang="da"> +<seg>Fransk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ФренÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Franceză</seg></tuv> +<tuv xml:lang="de"> +<seg>Französisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Francès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Frantsea</seg></tuv> +<tuv xml:lang="hu"> +<seg>Francia</seg></tuv> +<tuv xml:lang="fr"> +<seg>Français</seg></tuv> +<tuv xml:lang="ja"> +<seg>フランス語</seg></tuv> +<tuv xml:lang="es"> +<seg>Francés</seg></tuv> +<tuv xml:lang="el"> +<seg>Γαλλικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Fransk</seg></tuv> +<tuv xml:lang="no"> +<seg>Fransk</seg></tuv> +<tuv xml:lang="it"> +<seg>Francese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Frans</seg></tuv> +<tuv xml:lang="pl"> +<seg>Francuski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Ranska</seg></tuv> +<tuv xml:lang="lt"> +<seg>PrancÅ«zų</seg></tuv> +<tuv xml:lang="lv"> +<seg>FranÄu</seg></tuv> +<tuv xml:lang="sl"> +<seg>francoÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Fransızca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Francês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Francúzsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Prantsuse</seg></tuv> +<tuv xml:lang="cs"> +<seg>Francouzský</seg></tuv> +<tuv xml:lang="is"> +<seg>Franska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>French/Belgium</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>French/Canada</seg></tuv> +<tuv xml:lang="da"> +<seg>Fransk/Canada</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Français</seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>French/France</seg></tuv> +<tuv xml:lang="da"> +<seg>Fransk/Frankrig</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Français</seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>French/Switzerland</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Frisian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Galician</seg></tuv> +<tuv xml:lang="da"> +<seg>Galisisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ГалÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Galician</seg></tuv> +<tuv xml:lang="de"> +<seg>Galizisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Gallec</seg></tuv> +<tuv xml:lang="eu"> +<seg>Galiziera</seg></tuv> +<tuv xml:lang="hu"> +<seg>GalÃciai</seg></tuv> +<tuv xml:lang="fr"> +<seg>Galicien</seg></tuv> +<tuv xml:lang="ja"> +<seg>ガリãƒã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Gallego</seg></tuv> +<tuv xml:lang="el"> +<seg>Galician</seg></tuv> +<tuv xml:lang="sv"> +<seg>Galiciska</seg></tuv> +<tuv xml:lang="no"> +<seg>Galisisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Galiziano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Galician</seg></tuv> +<tuv xml:lang="pl"> +<seg>Galicyjski</seg></tuv> +<tuv xml:lang="fi"> +<seg>galicia</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Gallu</seg></tuv> +<tuv xml:lang="sl"> +<seg>GalÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Galiçce</seg></tuv> +<tuv xml:lang="pt"> +<seg>Galiciano</seg></tuv> +<tuv xml:lang="sk"> +<seg>Galský</seg></tuv> +<tuv xml:lang="et"> +<seg>Galeegi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Galsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Georgian</seg></tuv> +<tuv xml:lang="da"> +<seg>Georgiansk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>German</seg></tuv> +<tuv xml:lang="da"> +<seg>Tysk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ÐемÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Germană</seg></tuv> +<tuv xml:lang="de"> +<seg>Deutsch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Alemany</seg></tuv> +<tuv xml:lang="eu"> +<seg>Alemaniera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Német</seg></tuv> +<tuv xml:lang="fr"> +<seg>Allemand</seg></tuv> +<tuv xml:lang="ja"> +<seg>ドイツ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Alemán</seg></tuv> +<tuv xml:lang="el"> +<seg>ΓεÏμανικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Tysk</seg></tuv> +<tuv xml:lang="no"> +<seg>Tysk</seg></tuv> +<tuv xml:lang="it"> +<seg>Tedesco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Duits</seg></tuv> +<tuv xml:lang="pl"> +<seg>Niemiecki</seg></tuv> +<tuv xml:lang="fi"> +<seg>Saksa</seg></tuv> +<tuv xml:lang="lt"> +<seg>VokieÄių</seg></tuv> +<tuv xml:lang="lv"> +<seg>VÄcu</seg></tuv> +<tuv xml:lang="sl"> +<seg>nemÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Almanca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Alemão</seg></tuv> +<tuv xml:lang="sk"> +<seg>Nemecký</seg></tuv> +<tuv xml:lang="et"> +<seg>Saksa</seg></tuv> +<tuv xml:lang="cs"> +<seg>NÄ›mecký</seg></tuv> +<tuv xml:lang="is"> +<seg>Þýska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>German/Austria</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>German/Germany</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>German/Switzerland</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Greek</seg></tuv> +<tuv xml:lang="da"> +<seg>Græsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>Гръцки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Greacă</seg></tuv> +<tuv xml:lang="de"> +<seg>Griechisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Grec</seg></tuv> +<tuv xml:lang="eu"> +<seg>Grekoa</seg></tuv> +<tuv xml:lang="hu"> +<seg>Görög</seg></tuv> +<tuv xml:lang="fr"> +<seg>Grec</seg></tuv> +<tuv xml:lang="ja"> +<seg>ギリシア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Griego</seg></tuv> +<tuv xml:lang="el"> +<seg>Ελληνική</seg></tuv> +<tuv xml:lang="sv"> +<seg>Grekisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Gresk</seg></tuv> +<tuv xml:lang="it"> +<seg>Greco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Grieks</seg></tuv> +<tuv xml:lang="pl"> +<seg>Greckie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Kreikka</seg></tuv> +<tuv xml:lang="lt"> +<seg>Graikų</seg></tuv> +<tuv xml:lang="lv"> +<seg>GrieÄ·u</seg></tuv> +<tuv xml:lang="sl"> +<seg>GrÅ¡ki</seg></tuv> +<tuv xml:lang="tr"> +<seg>Yunanca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Grego</seg></tuv> +<tuv xml:lang="sk"> +<seg>Grécka</seg></tuv> +<tuv xml:lang="et"> +<seg>Kreeka</seg></tuv> +<tuv xml:lang="cs"> +<seg>ŘeÄtina</seg></tuv> +<tuv xml:lang="is"> +<seg>GrÃkst</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Greenlandic</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Guarani</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="da"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="de"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="ca"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Gudzsarati</seg></tuv> +<tuv xml:lang="fr"> +<seg>Goujarati</seg></tuv> +<tuv xml:lang="ja"> +<seg>グジャラト語</seg></tuv> +<tuv xml:lang="es"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="el"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="sv"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="no"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="it"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="nl"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="pl"> +<seg>Gudżarati</seg></tuv> +<tuv xml:lang="fi"> +<seg>gudžarati</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Gudžarati</seg></tuv> +<tuv xml:lang="sl"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="tr"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="pt"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="sk"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="et"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="cs"> +<seg>Gujarati</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Hausa</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Hebrew</seg></tuv> +<tuv xml:lang="da"> +<seg>Hebraisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЕврейÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Ebraică</seg></tuv> +<tuv xml:lang="de"> +<seg>Hebräisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Hebreu</seg></tuv> +<tuv xml:lang="eu"> +<seg>Hebraitar</seg></tuv> +<tuv xml:lang="hu"> +<seg>Héber</seg></tuv> +<tuv xml:lang="fr"> +<seg>Hébreu</seg></tuv> +<tuv xml:lang="ja"> +<seg>ヘブライ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Hebreo</seg></tuv> +<tuv xml:lang="el"> +<seg>ΕβÏαϊκή</seg></tuv> +<tuv xml:lang="sv"> +<seg>Hebreisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Hebraisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Ebraico</seg></tuv> +<tuv xml:lang="nl"> +<seg>Hebreeuws</seg></tuv> +<tuv xml:lang="pl"> +<seg>Hebrajskie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Heprea</seg></tuv> +<tuv xml:lang="lt"> +<seg>Hebrajų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Ebreju</seg></tuv> +<tuv xml:lang="sl"> +<seg>Hebrejski</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°branice</seg></tuv> +<tuv xml:lang="pt"> +<seg>Hebreu</seg></tuv> +<tuv xml:lang="sk"> +<seg>Hebrejská</seg></tuv> +<tuv xml:lang="et"> +<seg>Heebrea</seg></tuv> +<tuv xml:lang="cs"> +<seg>HebrejÅ¡tina</seg></tuv> +<tuv xml:lang="is"> +<seg>Hebreskt</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Hide this language</seg></tuv> +<tuv xml:lang="da"> +<seg>Skjul dette sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Nou llenguatge</seg></tuv> +<tuv xml:lang="eu"> +<seg>Hizkuntza berria</seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelv</seg></tuv> +<tuv xml:lang="fr"> +<seg>Cacher cette langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã®è¨€èªžã‚’éš ã™</seg></tuv> +<tuv xml:lang="es"> +<seg>Ocultar este idioma</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="da"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="de"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="ca"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="eu"> +<seg>Bilatu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="fr"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="ja"> +<seg>ヒンディ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="el"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="sv"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="no"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="it"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="nl"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="pl"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="fi"> +<seg>hindi</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Hindu</seg></tuv> +<tuv xml:lang="sl"> +<seg>HindujÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Hintçe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="sk"> +<seg>Hindský</seg></tuv> +<tuv xml:lang="et"> +<seg>Hindi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Hindsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>How much</seg></tuv> +<tuv xml:lang="da"> +<seg>Hvor meget</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Hungarian</seg></tuv> +<tuv xml:lang="da"> +<seg>Ungarsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>УнгарÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Maghiară</seg></tuv> +<tuv xml:lang="de"> +<seg>Ungarisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Hongarès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Magyar</seg></tuv> +<tuv xml:lang="fr"> +<seg>Hongrois</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒãƒ³ã‚¬ãƒªãƒ¼èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Húngaro</seg></tuv> +<tuv xml:lang="el"> +<seg>ΟυγγÏικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Ungersk</seg></tuv> +<tuv xml:lang="no"> +<seg>Ungarsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Ungherese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Hongaars</seg></tuv> +<tuv xml:lang="pl"> +<seg>WÄ™gierski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Unkari</seg></tuv> +<tuv xml:lang="lt"> +<seg>Vengrų</seg></tuv> +<tuv xml:lang="lv"> +<seg>UngÄru</seg></tuv> +<tuv xml:lang="sl"> +<seg>madžarÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Macarca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Húngaro</seg></tuv> +<tuv xml:lang="sk"> +<seg>MaÄarský</seg></tuv> +<tuv xml:lang="et"> +<seg>Ungari</seg></tuv> +<tuv xml:lang="cs"> +<seg>MaÄarský</seg></tuv> +<tuv xml:lang="is"> +<seg>Ungverkst</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Icelandic</seg></tuv> +<tuv xml:lang="da"> +<seg>Islandsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ИÑландÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Islandeză</seg></tuv> +<tuv xml:lang="de"> +<seg>Isländisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Islandès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Islandiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Izlandi</seg></tuv> +<tuv xml:lang="fr"> +<seg>Islandais</seg></tuv> +<tuv xml:lang="ja"> +<seg>アイスランド語</seg></tuv> +<tuv xml:lang="es"> +<seg>Islandés</seg></tuv> +<tuv xml:lang="el"> +<seg>Icelandic</seg></tuv> +<tuv xml:lang="sv"> +<seg>Isländska</seg></tuv> +<tuv xml:lang="no"> +<seg>Islandsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Islandese</seg></tuv> +<tuv xml:lang="nl"> +<seg>IJslands</seg></tuv> +<tuv xml:lang="pl"> +<seg>Islandzki</seg></tuv> +<tuv xml:lang="fi"> +<seg>islanti</seg></tuv> +<tuv xml:lang="lt"> +<seg>Islandų</seg></tuv> +<tuv xml:lang="lv"> +<seg>IslandieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>IslandÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°zlanda dili</seg></tuv> +<tuv xml:lang="pt"> +<seg>Islandês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Islandský</seg></tuv> +<tuv xml:lang="et"> +<seg>Islandi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Islandsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Id</seg></tuv> +<tuv xml:lang="da"> +<seg>Id</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Id</seg></tuv> +<tuv xml:lang="ca"> +<seg>Id</seg></tuv> +<tuv xml:lang="eu"> +<seg>Id</seg></tuv> +<tuv xml:lang="hu"> +<seg>AzonosÃtó</seg></tuv> +<tuv xml:lang="fr"> +<seg>Id</seg></tuv> +<tuv xml:lang="ja"> +<seg>Id</seg></tuv> +<tuv xml:lang="es"> +<seg>Id</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import</seg></tuv> +<tuv xml:lang="da"> +<seg>Importér</seg></tuv> +<tuv xml:lang="bg"> +<seg>Импорт</seg></tuv> +<tuv xml:lang="ro"> +<seg>Importă</seg></tuv> +<tuv xml:lang="de"> +<seg>Importieren</seg></tuv> +<tuv xml:lang="ca"> +<seg>Importa</seg></tuv> +<tuv xml:lang="eu"> +<seg>Inportatu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Importálás</seg></tuv> +<tuv xml:lang="fr"> +<seg>Importer</seg></tuv> +<tuv xml:lang="ja"> +<seg>インãƒãƒ¼ãƒˆ</seg></tuv> +<tuv xml:lang="es"> +<seg>Importar</seg></tuv> +<tuv xml:lang="el"> +<seg>Εισαγωγή</seg></tuv> +<tuv xml:lang="sv"> +<seg>Importera</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Importa</seg></tuv> +<tuv xml:lang="nl"> +<seg>Importeren</seg></tuv> +<tuv xml:lang="pl"> +<seg>Importuj</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tuo</seg></tuv> +<tuv xml:lang="lt"> +<seg>Importuoti</seg></tuv> +<tuv xml:lang="lv"> +<seg>ImportÄ“t</seg></tuv> +<tuv xml:lang="sl"> +<seg>Uvozi</seg></tuv> +<tuv xml:lang="tr"> +<seg>Aktar:</seg></tuv> +<tuv xml:lang="pt"> +<seg>Importar</seg></tuv> +<tuv xml:lang="sk"> +<seg>Import</seg></tuv> +<tuv xml:lang="et"> +<seg>Import</seg></tuv> +<tuv xml:lang="cs"> +<seg>Importovat</seg></tuv> +<tuv xml:lang="is"> +<seg>Flytja inn</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import all messages</seg></tuv> +<tuv xml:lang="da"> +<seg>Importer all tekster</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import only translations for messages that exist already</seg></tuv> +<tuv xml:lang="da"> +<seg>Importer kun oversættelser for tekster som allerede eksisterer</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import translations from PO file</seg></tuv> +<tuv xml:lang="da"> +<seg>Importer oversættelser fra PO fil</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import translations from TMX file</seg></tuv> +<tuv xml:lang="da"> +<seg>Importer oversættelser fra TMX fil</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import translations from XLIFF file</seg></tuv> +<tuv xml:lang="da"> +<seg>Importer oversættelser fra XLIFF fil</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Import/Export</seg></tuv> +<tuv xml:lang="da"> +<seg>Import/Eksport</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg>Inportatu</seg></tuv> +<tuv xml:lang="hu"> +<seg>Impotálás/Exportálás</seg></tuv> +<tuv xml:lang="fr"> +<seg>Importer/Exporter</seg></tuv> +<tuv xml:lang="ja"> +<seg>インãƒãƒ¼ãƒˆ/エクスãƒãƒ¼ãƒˆ</seg></tuv> +<tuv xml:lang="es"> +<seg>Importar/Exportar</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Imported %d messages and %d notes</seg></tuv> +<tuv xml:lang="da"> +<seg>Importerede %d tekster og %d noter</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Indonesian</seg></tuv> +<tuv xml:lang="da"> +<seg>Indonesisk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Indoneziană</seg></tuv> +<tuv xml:lang="de"> +<seg>Indonesisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Indonesi</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Indonéz</seg></tuv> +<tuv xml:lang="fr"> +<seg>Indonésien</seg></tuv> +<tuv xml:lang="ja"> +<seg>インドãƒã‚·ã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Indonesio</seg></tuv> +<tuv xml:lang="el"> +<seg>Indonesian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Indonesiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Indonesisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Indonesiano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Indonesisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Indonezyjski</seg></tuv> +<tuv xml:lang="fi"> +<seg>indonesia</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>IndonÄ“zieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>IndonezijÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Endonezyaca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Indonésio</seg></tuv> +<tuv xml:lang="sk"> +<seg>Indonézsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Indoneesia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Indonésky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="da"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="de"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="ca"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="fr"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="ja"> +<seg>インターリングア</seg></tuv> +<tuv xml:lang="es"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="el"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="sv"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="no"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="it"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="nl"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="pl"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="fi"> +<seg>interlingue</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Interlingva</seg></tuv> +<tuv xml:lang="sl"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="tr"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="pt"> +<seg>InterlÃngua</seg></tuv> +<tuv xml:lang="sk"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="et"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="cs"> +<seg>Interlingua</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Interlingue</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Inuktitut</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Inupiak</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Irish</seg></tuv> +<tuv xml:lang="da"> +<seg>Irsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ИрландÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Irlandeză</seg></tuv> +<tuv xml:lang="de"> +<seg>Irisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Irlandès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ãr</seg></tuv> +<tuv xml:lang="fr"> +<seg>Irlandais</seg></tuv> +<tuv xml:lang="ja"> +<seg>アイルランド語</seg></tuv> +<tuv xml:lang="es"> +<seg>Irlandés</seg></tuv> +<tuv xml:lang="el"> +<seg>Irish</seg></tuv> +<tuv xml:lang="sv"> +<seg>Irländska</seg></tuv> +<tuv xml:lang="no"> +<seg>Irsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Irlandese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Iers</seg></tuv> +<tuv xml:lang="pl"> +<seg>Irlandzki</seg></tuv> +<tuv xml:lang="fi"> +<seg>iiri</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Īru</seg></tuv> +<tuv xml:lang="sl"> +<seg>IrÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°rlanda</seg></tuv> +<tuv xml:lang="pt"> +<seg>Irlandês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Ãrsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Iiri</seg></tuv> +<tuv xml:lang="cs"> +<seg>Irsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Italian</seg></tuv> +<tuv xml:lang="da"> +<seg>Italiensk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ИталианÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Italiană</seg></tuv> +<tuv xml:lang="de"> +<seg>Italienisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Italià </seg></tuv> +<tuv xml:lang="eu"> +<seg>Italiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Olasz</seg></tuv> +<tuv xml:lang="fr"> +<seg>Italien</seg></tuv> +<tuv xml:lang="ja"> +<seg>イタリア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Italiano</seg></tuv> +<tuv xml:lang="el"> +<seg>Italian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Italienska</seg></tuv> +<tuv xml:lang="no"> +<seg>Italiensk</seg></tuv> +<tuv xml:lang="it"> +<seg>Italiano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Italiaans</seg></tuv> +<tuv xml:lang="pl"> +<seg>WÅ‚oski</seg></tuv> +<tuv xml:lang="fi"> +<seg>italia</seg></tuv> +<tuv xml:lang="lt"> +<seg>Italų</seg></tuv> +<tuv xml:lang="lv"> +<seg>ItÄļu</seg></tuv> +<tuv xml:lang="sl"> +<seg>ItaljanÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°talyanca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Italiano</seg></tuv> +<tuv xml:lang="sk"> +<seg>Taliansky</seg></tuv> +<tuv xml:lang="et"> +<seg>Itaalia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Italsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Japanese</seg></tuv> +<tuv xml:lang="da"> +<seg>Japansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЯпонÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Japoneză</seg></tuv> +<tuv xml:lang="de"> +<seg>Japanisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Japonès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Japoniarra</seg></tuv> +<tuv xml:lang="hu"> +<seg>Japán</seg></tuv> +<tuv xml:lang="fr"> +<seg>Japonais</seg></tuv> +<tuv xml:lang="ja"> +<seg>日本語</seg></tuv> +<tuv xml:lang="es"> +<seg>Japonés</seg></tuv> +<tuv xml:lang="el"> +<seg>Ιαπωνική</seg></tuv> +<tuv xml:lang="sv"> +<seg>Japansk</seg></tuv> +<tuv xml:lang="no"> +<seg>Japansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Giapponese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Japans</seg></tuv> +<tuv xml:lang="pl"> +<seg>JapoÅ„skie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Japani</seg></tuv> +<tuv xml:lang="lt"> +<seg>Japonų</seg></tuv> +<tuv xml:lang="lv"> +<seg>JapÄņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>Japonski</seg></tuv> +<tuv xml:lang="tr"> +<seg>Japonca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Japonês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Japonská</seg></tuv> +<tuv xml:lang="et"> +<seg>Jaapani</seg></tuv> +<tuv xml:lang="cs"> +<seg>JaponÅ¡tina</seg></tuv> +<tuv xml:lang="is"> +<seg>Japanskt</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Javanese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="da"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="de"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="ca"> +<seg>Kanarès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Kanada</seg></tuv> +<tuv xml:lang="fr"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="ja"> +<seg>カンナダ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="el"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="sv"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="no"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="it"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="nl"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="pl"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="fi"> +<seg>kannada</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Kannadu</seg></tuv> +<tuv xml:lang="sl"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="tr"> +<seg>Kanada</seg></tuv> +<tuv xml:lang="pt"> +<seg>Canadiano</seg></tuv> +<tuv xml:lang="sk"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="et"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="cs"> +<seg>Kannada</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kashmiri</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kazakh</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kinyarwanda</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kirghiz</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kirundi</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Korean</seg></tuv> +<tuv xml:lang="da"> +<seg>Koreansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>КорейÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Coreeană</seg></tuv> +<tuv xml:lang="de"> +<seg>Koreanisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Coreà </seg></tuv> +<tuv xml:lang="eu"> +<seg>Korearra</seg></tuv> +<tuv xml:lang="hu"> +<seg>Koreai</seg></tuv> +<tuv xml:lang="fr"> +<seg>Coréen</seg></tuv> +<tuv xml:lang="ja"> +<seg>韓国語</seg></tuv> +<tuv xml:lang="es"> +<seg>Coreano</seg></tuv> +<tuv xml:lang="el"> +<seg>ΚοÏεάτικη</seg></tuv> +<tuv xml:lang="sv"> +<seg>Koreansk</seg></tuv> +<tuv xml:lang="no"> +<seg>Koreansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Coreano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Koreaans</seg></tuv> +<tuv xml:lang="pl"> +<seg>KoreaÅ„skie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Korea</seg></tuv> +<tuv xml:lang="lt"> +<seg>KorÄ—jieÄių</seg></tuv> +<tuv xml:lang="lv"> +<seg>KorejieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>Korejski</seg></tuv> +<tuv xml:lang="tr"> +<seg>Korece</seg></tuv> +<tuv xml:lang="pt"> +<seg>Coreano</seg></tuv> +<tuv xml:lang="sk"> +<seg>Kórejská</seg></tuv> +<tuv xml:lang="et"> +<seg>Korea</seg></tuv> +<tuv xml:lang="cs"> +<seg>KorejÅ¡tina</seg></tuv> +<tuv xml:lang="is"> +<seg>Kóreskt</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Kurdish</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Language</seg></tuv> +<tuv xml:lang="da"> +<seg>Sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg>Език</seg></tuv> +<tuv xml:lang="ro"> +<seg>Limbă</seg></tuv> +<tuv xml:lang="de"> +<seg>Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Llengua</seg></tuv> +<tuv xml:lang="eu"> +<seg>Hizkuntza berria</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelv</seg></tuv> +<tuv xml:lang="fr"> +<seg>Langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語(L)</seg></tuv> +<tuv xml:lang="es"> +<seg>Idioma</seg></tuv> +<tuv xml:lang="el"> +<seg>Γλώσσα</seg></tuv> +<tuv xml:lang="sv"> +<seg>SprÃ¥k</seg></tuv> +<tuv xml:lang="no"> +<seg>SprÃ¥k</seg></tuv> +<tuv xml:lang="it"> +<seg>Lingua</seg></tuv> +<tuv xml:lang="nl"> +<seg>Taal</seg></tuv> +<tuv xml:lang="pl"> +<seg>JÄ™zyk</seg></tuv> +<tuv xml:lang="fi"> +<seg>Kieli</seg></tuv> +<tuv xml:lang="lt"> +<seg>Kalba</seg></tuv> +<tuv xml:lang="lv"> +<seg>Valoda</seg></tuv> +<tuv xml:lang="sl"> +<seg>Jezik</seg></tuv> +<tuv xml:lang="tr"> +<seg>Dil</seg></tuv> +<tuv xml:lang="pt"> +<seg>Idioma</seg></tuv> +<tuv xml:lang="sk"> +<seg>Jazyk</seg></tuv> +<tuv xml:lang="et"> +<seg>Keel</seg></tuv> +<tuv xml:lang="cs"> +<seg>Jazyk</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Languages</seg></tuv> +<tuv xml:lang="da"> +<seg>Sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Nou llenguatge</seg></tuv> +<tuv xml:lang="eu"> +<seg>Hizkuntza berria</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelvek</seg></tuv> +<tuv xml:lang="fr"> +<seg>Langues</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語</seg></tuv> +<tuv xml:lang="es"> +<seg>Idiomas</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Laothian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Latin</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Latvian</seg></tuv> +<tuv xml:lang="da"> +<seg>Lettisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЛатвийÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Letonă</seg></tuv> +<tuv xml:lang="de"> +<seg>Lettisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Letó</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Lett</seg></tuv> +<tuv xml:lang="fr"> +<seg>Latvian</seg></tuv> +<tuv xml:lang="ja"> +<seg>ラトビア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Letón</seg></tuv> +<tuv xml:lang="el"> +<seg>Latvian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Lettiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Latvisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Lettone</seg></tuv> +<tuv xml:lang="nl"> +<seg>Lets</seg></tuv> +<tuv xml:lang="pl"> +<seg>Åotewski</seg></tuv> +<tuv xml:lang="fi"> +<seg>latvia</seg></tuv> +<tuv xml:lang="lt"> +<seg>Latvių</seg></tuv> +<tuv xml:lang="lv"> +<seg>LatvieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>LatvijÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Latviaca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Letónia</seg></tuv> +<tuv xml:lang="sk"> +<seg>LotyÅ¡ský</seg></tuv> +<tuv xml:lang="et"> +<seg>Läti</seg></tuv> +<tuv xml:lang="cs"> +<seg>LotyÅ¡sky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Latvian, Lettish</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Lingala</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Lithuanian</seg></tuv> +<tuv xml:lang="da"> +<seg>Litauisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЛитовÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Lituaniană</seg></tuv> +<tuv xml:lang="de"> +<seg>Litauisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Lituà </seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Litván</seg></tuv> +<tuv xml:lang="fr"> +<seg>Lituanien</seg></tuv> +<tuv xml:lang="ja"> +<seg>リトアニア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Lituano</seg></tuv> +<tuv xml:lang="el"> +<seg>Λιθουανικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Litauisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Litauisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Lituano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Lithouws</seg></tuv> +<tuv xml:lang="pl"> +<seg>Litewski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Liettua</seg></tuv> +<tuv xml:lang="lt"> +<seg>Lietuvių</seg></tuv> +<tuv xml:lang="lv"> +<seg>LietuvieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>litvanÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Litvanya dili</seg></tuv> +<tuv xml:lang="pt"> +<seg>Lituano</seg></tuv> +<tuv xml:lang="sk"> +<seg>Litovský</seg></tuv> +<tuv xml:lang="et"> +<seg>Leedu</seg></tuv> +<tuv xml:lang="cs"> +<seg>Litevské</seg></tuv> +<tuv xml:lang="is"> +<seg>LitháÃska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Local properties</seg></tuv> +<tuv xml:lang="da"> +<seg>Lokale egenskaber</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg>Propietats</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ezaugarriak</seg></tuv> +<tuv xml:lang="hu"> +<seg>Tulajdonságok</seg></tuv> +<tuv xml:lang="fr"> +<seg>Propriétées locales</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒãƒ¼ã‚«ãƒ«ãƒ—ãƒãƒ‘ティ</seg></tuv> +<tuv xml:lang="es"> +<seg>Propiedades locales</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Locale folders are useful to store special multilingual objects like images and specific logic. If used the <tt>Localizer</tt> object will transparently add the right locale folder to the url. If you want to use locale folders check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Les répertoires de langue sont utiles pour sauvegarder des objets multilingues speciaux commes des images et leur logique spécifique. Lorsqu'il est utilisé, l'objet <tt>Localizer</tt> va automatiquement ajouter le Répertoire de langue approprié à l'url. Si vous voulez utiliser un répertoire de langue spécifique, le sélectioner puis activé les modifications en cliquant sur le bouton <tt>Change</tt>.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ (Locale Folder) ã¯ã€ç”»åƒã‚„特殊ãªãƒã‚¸ãƒƒã‚¯ãªã©ãƒžãƒ«ãƒãƒªãƒ³ã‚¬ãƒ«ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã‚’æ ¼ç´ã™ã‚‹ã®ã«æœ‰ç”¨ã§ã™ã€‚ã“れを使用ã™ã‚‹ã¨ã€<tt>Localizer</tt> オブジェクトãŒé©åˆ‡ãªãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã‚’ URL ã«é€éŽçš„ã«è¿½åŠ ã—ã¦ãã‚Œã¾ã™ã€‚ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã‚’使用ã™ã‚‹ã«ã¯ã€ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ã‚’オンã«ã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Las carpetas locales son útiles para almacenar objetos multilingües especiales como imágenes y lógica especÃfica. Si se usan el objeto <tt>Localizer</tt> de forma transparente añadirá la carpeta local correcta a la <em>url</em>. Si quieres usar las carpetas locales selecciona el cuadro de selección, si no deseleccionalo, entonces pulsa en botón <tt>Cambiar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Macedonian</seg></tuv> +<tuv xml:lang="da"> +<seg>Makedonsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>МакедонÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Macedonă</seg></tuv> +<tuv xml:lang="de"> +<seg>Mazedonisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Macedoni</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Macedón</seg></tuv> +<tuv xml:lang="fr"> +<seg>Macédonien</seg></tuv> +<tuv xml:lang="ja"> +<seg>マケドニア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Macedonio</seg></tuv> +<tuv xml:lang="el"> +<seg>Macedonian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Makedonska</seg></tuv> +<tuv xml:lang="no"> +<seg>Makedonsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Macedone</seg></tuv> +<tuv xml:lang="nl"> +<seg>Macedonisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>MacedoÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>makedonia</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>MaÄ·edonieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>MakedonÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Makedonca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Macedónio</seg></tuv> +<tuv xml:lang="sk"> +<seg>Makedonský</seg></tuv> +<tuv xml:lang="et"> +<seg>Makedoonia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Makedonsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Malagasy</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Malay</seg></tuv> +<tuv xml:lang="da"> +<seg>Malayisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>МалайзииÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Malay</seg></tuv> +<tuv xml:lang="de"> +<seg>Malaiisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Malai</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Maláj</seg></tuv> +<tuv xml:lang="fr"> +<seg>Malais</seg></tuv> +<tuv xml:lang="ja"> +<seg>マレー語</seg></tuv> +<tuv xml:lang="es"> +<seg>Malayo</seg></tuv> +<tuv xml:lang="el"> +<seg>Malay</seg></tuv> +<tuv xml:lang="sv"> +<seg>Malajiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Malay</seg></tuv> +<tuv xml:lang="it"> +<seg>Malese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Maleis</seg></tuv> +<tuv xml:lang="pl"> +<seg>Malajski</seg></tuv> +<tuv xml:lang="fi"> +<seg>malaiji</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Malaju</seg></tuv> +<tuv xml:lang="sl"> +<seg>MalajÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Malay</seg></tuv> +<tuv xml:lang="pt"> +<seg>Malaio</seg></tuv> +<tuv xml:lang="sk"> +<seg>Malajský</seg></tuv> +<tuv xml:lang="et"> +<seg>Malaisia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Malajsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="da"> +<seg>Malayam</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="de"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="ca"> +<seg>Malaialam</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Maláj</seg></tuv> +<tuv xml:lang="fr"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="ja"> +<seg>マラヤラム語</seg></tuv> +<tuv xml:lang="es"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="el"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="sv"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="no"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="it"> +<seg>Malese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="pl"> +<seg>Malajski</seg></tuv> +<tuv xml:lang="fi"> +<seg>malajalam</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg>Malajalam</seg></tuv> +<tuv xml:lang="tr"> +<seg>Malaya</seg></tuv> +<tuv xml:lang="pt"> +<seg>Malaialam</seg></tuv> +<tuv xml:lang="sk"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="et"> +<seg>Malajalami</seg></tuv> +<tuv xml:lang="cs"> +<seg>Malayalam</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Maltese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Maori</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="da"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="de"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="ca"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Gudzsarati</seg></tuv> +<tuv xml:lang="fr"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="ja"> +<seg>マラッタ語</seg></tuv> +<tuv xml:lang="es"> +<seg>MarathÃ</seg></tuv> +<tuv xml:lang="el"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="sv"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="no"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="it"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="nl"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="pl"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="fi"> +<seg>marathi</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="tr"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="pt"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="sk"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="et"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Marathi</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Messages</seg></tuv> +<tuv xml:lang="da"> +<seg>Tekster</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ãœzenetek</seg></tuv> +<tuv xml:lang="fr"> +<seg>Messages</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージ</seg></tuv> +<tuv xml:lang="es"> +<seg>Mensajes</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Messages imported</seg></tuv> +<tuv xml:lang="da"> +<seg>Tekster importeret</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ãœzenetek</seg></tuv> +<tuv xml:lang="fr"> +<seg>Messages</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージ</seg></tuv> +<tuv xml:lang="es"> +<seg>Mensajes</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Moldavian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Mongolian</seg></tuv> +<tuv xml:lang="da"> +<seg>Mongolsk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Mongolă</seg></tuv> +<tuv xml:lang="de"> +<seg>Mongolisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Mongol</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Mongol</seg></tuv> +<tuv xml:lang="fr"> +<seg>Mongolien</seg></tuv> +<tuv xml:lang="ja"> +<seg>モンゴル語</seg></tuv> +<tuv xml:lang="es"> +<seg>Mongol</seg></tuv> +<tuv xml:lang="el"> +<seg>Mongolian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Mongoliska</seg></tuv> +<tuv xml:lang="no"> +<seg>Mongolsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Mongolo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Mongools</seg></tuv> +<tuv xml:lang="pl"> +<seg>Mongolski</seg></tuv> +<tuv xml:lang="fi"> +<seg>mongoli</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>MÅngoļu</seg></tuv> +<tuv xml:lang="sl"> +<seg>MongolÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Mongolca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Mongól</seg></tuv> +<tuv xml:lang="sk"> +<seg>Mongolský</seg></tuv> +<tuv xml:lang="et"> +<seg>Mongoolia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Mongolsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Name</seg></tuv> +<tuv xml:lang="da"> +<seg>Navn</seg></tuv> +<tuv xml:lang="bg"> +<seg>Име</seg></tuv> +<tuv xml:lang="ro"> +<seg>Nume</seg></tuv> +<tuv xml:lang="de"> +<seg>Name</seg></tuv> +<tuv xml:lang="ca"> +<seg>Nom</seg></tuv> +<tuv xml:lang="eu"> +<seg>Izena</seg></tuv> +<tuv xml:lang="hu"> +<seg>Név</seg></tuv> +<tuv xml:lang="fr"> +<seg>Nom</seg></tuv> +<tuv xml:lang="ja"> +<seg>åå‰</seg></tuv> +<tuv xml:lang="es"> +<seg>Nombre</seg></tuv> +<tuv xml:lang="el"> +<seg>Όνομα</seg></tuv> +<tuv xml:lang="sv"> +<seg>Namn</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Nome</seg></tuv> +<tuv xml:lang="nl"> +<seg>Naam</seg></tuv> +<tuv xml:lang="pl"> +<seg>Nazwa</seg></tuv> +<tuv xml:lang="fi"> +<seg>Nimi</seg></tuv> +<tuv xml:lang="lt"> +<seg>Vardas</seg></tuv> +<tuv xml:lang="lv"> +<seg>VÄrds</seg></tuv> +<tuv xml:lang="sl"> +<seg>Ime</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ad</seg></tuv> +<tuv xml:lang="pt"> +<seg>Nome</seg></tuv> +<tuv xml:lang="sk"> +<seg>Názov</seg></tuv> +<tuv xml:lang="et"> +<seg>Nimi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Jméno</seg></tuv> +<tuv xml:lang="is"> +<seg>Heiti</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Nauru</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Nepali</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Norwegian</seg></tuv> +<tuv xml:lang="da"> +<seg>Norsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>Ðорвежки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Norvegiană</seg></tuv> +<tuv xml:lang="de"> +<seg>Norwegisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Noruec</seg></tuv> +<tuv xml:lang="eu"> +<seg>Norwegiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Norvég</seg></tuv> +<tuv xml:lang="fr"> +<seg>Norvégien</seg></tuv> +<tuv xml:lang="ja"> +<seg>ノルウェー語</seg></tuv> +<tuv xml:lang="es"> +<seg>Noruego</seg></tuv> +<tuv xml:lang="el"> +<seg>ÎοÏβηγικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Norsk</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Norvegese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Noors</seg></tuv> +<tuv xml:lang="pl"> +<seg>Norweski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Norja</seg></tuv> +<tuv xml:lang="lt"> +<seg>Norvegų</seg></tuv> +<tuv xml:lang="lv"> +<seg>NorvÄ“Ä£u</seg></tuv> +<tuv xml:lang="sl"> +<seg>norveÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Norveççe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Norueguês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Nórsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Norra</seg></tuv> +<tuv xml:lang="cs"> +<seg>Norský</seg></tuv> +<tuv xml:lang="is"> +<seg>Norska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Note</seg></tuv> +<tuv xml:lang="da"> +<seg>Note</seg></tuv> +<tuv xml:lang="bg"> +<seg>Без</seg></tuv> +<tuv xml:lang="ro"> +<seg>Nimic</seg></tuv> +<tuv xml:lang="de"> +<seg>Anmerkung</seg></tuv> +<tuv xml:lang="ca"> +<seg>Nota</seg></tuv> +<tuv xml:lang="eu"> +<seg>Oharra</seg></tuv> +<tuv xml:lang="hu"> +<seg>Megjegyzés</seg></tuv> +<tuv xml:lang="fr"> +<seg>Note</seg></tuv> +<tuv xml:lang="ja"> +<seg>ノート</seg></tuv> +<tuv xml:lang="es"> +<seg>Nota</seg></tuv> +<tuv xml:lang="el"> +<seg>ΚανÎνα</seg></tuv> +<tuv xml:lang="sv"> +<seg>Anmärkning</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Nota</seg></tuv> +<tuv xml:lang="nl"> +<seg>Notitie</seg></tuv> +<tuv xml:lang="pl"> +<seg>Brak</seg></tuv> +<tuv xml:lang="fi"> +<seg>Ei mikään</seg></tuv> +<tuv xml:lang="lt"> +<seg>Pastaba</seg></tuv> +<tuv xml:lang="lv"> +<seg>PiezÄ«me</seg></tuv> +<tuv xml:lang="sl"> +<seg>Brez</seg></tuv> +<tuv xml:lang="tr"> +<seg>Hiçbiri</seg></tuv> +<tuv xml:lang="pt"> +<seg>Nota</seg></tuv> +<tuv xml:lang="sk"> +<seg>Žiadne</seg></tuv> +<tuv xml:lang="et"> +<seg>Märkus</seg></tuv> +<tuv xml:lang="cs"> +<seg>Nic</seg></tuv> +<tuv xml:lang="is"> +<seg>Engin</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Occitan</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Only untranslated messages</seg></tuv> +<tuv xml:lang="da"> +<seg>Kun uoversatte tekster</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Vissza az üzenetek szerkesztéséhez</seg></tuv> +<tuv xml:lang="fr"> +<seg>Retour vers la gestion des messages</seg></tuv> +<tuv xml:lang="ja"> +<seg>未翻訳メッセージã®ã¿</seg></tuv> +<tuv xml:lang="es"> +<seg>Solamente mensajes sin traducción</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Original language</seg></tuv> +<tuv xml:lang="da"> +<seg>Oprindeligt sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idioma per defecte</seg></tuv> +<tuv xml:lang="eu"> +<seg>Hobetsitako hizkuntza</seg></tuv> +<tuv xml:lang="hu"> +<seg>Alapértelmezett nyelv</seg></tuv> +<tuv xml:lang="fr"> +<seg>Cacher cette langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã®è¨€èªžã‚’éš ã™</seg></tuv> +<tuv xml:lang="es"> +<seg>Ocultar este idioma</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="da"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="de"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="ca"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Perzsa</seg></tuv> +<tuv xml:lang="fr"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="ja"> +<seg>オリヤ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="el"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="sv"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="no"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="it"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="nl"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="pl"> +<seg>Orija</seg></tuv> +<tuv xml:lang="fi"> +<seg>orija</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="tr"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="pt"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="sk"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="et"> +<seg>Oria</seg></tuv> +<tuv xml:lang="cs"> +<seg>Oriya</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Ownership</seg></tuv> +<tuv xml:lang="da"> +<seg>Ejerskab</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg>Propietat</seg></tuv> +<tuv xml:lang="eu"> +<seg>Jabetza</seg></tuv> +<tuv xml:lang="hu"> +<seg>Tulajdonos</seg></tuv> +<tuv xml:lang="fr"> +<seg>Propriétaire</seg></tuv> +<tuv xml:lang="ja"> +<seg>所有者</seg></tuv> +<tuv xml:lang="es"> +<seg>Propiedad</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Pashto, Pushto</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Persian</seg></tuv> +<tuv xml:lang="da"> +<seg>Persisk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Persană</seg></tuv> +<tuv xml:lang="de"> +<seg>Persisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Persa</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Perzsa</seg></tuv> +<tuv xml:lang="fr"> +<seg>Perse</seg></tuv> +<tuv xml:lang="ja"> +<seg>ペルシア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Persa</seg></tuv> +<tuv xml:lang="el"> +<seg>Persian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Persiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Persisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Persiano</seg></tuv> +<tuv xml:lang="nl"> +<seg>Persisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Perski</seg></tuv> +<tuv xml:lang="fi"> +<seg>persia</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>PersieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>PerzijÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Persçe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Persa</seg></tuv> +<tuv xml:lang="sk"> +<seg>Perský</seg></tuv> +<tuv xml:lang="et"> +<seg>Pärsia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Persky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Polish</seg></tuv> +<tuv xml:lang="da"> +<seg>Polsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ПолÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Poloneză</seg></tuv> +<tuv xml:lang="de"> +<seg>Polnisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Polonès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Polakiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Lengyel</seg></tuv> +<tuv xml:lang="fr"> +<seg>Polonais</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒãƒ¼ãƒ©ãƒ³ãƒ‰èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Polaco</seg></tuv> +<tuv xml:lang="el"> +<seg>Πολωνικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Polsk</seg></tuv> +<tuv xml:lang="no"> +<seg>Polsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Polacco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Pools</seg></tuv> +<tuv xml:lang="pl"> +<seg>Polski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Puola</seg></tuv> +<tuv xml:lang="lt"> +<seg>Lenkų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Poļu</seg></tuv> +<tuv xml:lang="sl"> +<seg>poljÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Lehçe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Polaco</seg></tuv> +<tuv xml:lang="sk"> +<seg>Poľský</seg></tuv> +<tuv xml:lang="et"> +<seg>Poola</seg></tuv> +<tuv xml:lang="cs"> +<seg>Polský</seg></tuv> +<tuv xml:lang="is"> +<seg>Pólska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Portuguese</seg></tuv> +<tuv xml:lang="da"> +<seg>Portugisisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ПортугалÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Portugheză</seg></tuv> +<tuv xml:lang="de"> +<seg>Portugiesisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Portuguès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Portugesa</seg></tuv> +<tuv xml:lang="hu"> +<seg>Portugál</seg></tuv> +<tuv xml:lang="fr"> +<seg>Portugais</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒãƒ«ãƒˆã‚¬ãƒ«èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Portugués</seg></tuv> +<tuv xml:lang="el"> +<seg>ΠοÏτογαλικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Portugisisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Portugisisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Portoghese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Portugees</seg></tuv> +<tuv xml:lang="pl"> +<seg>Portugalski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Portugali</seg></tuv> +<tuv xml:lang="lt"> +<seg>Portugalų</seg></tuv> +<tuv xml:lang="lv"> +<seg>PortugÄļu</seg></tuv> +<tuv xml:lang="sl"> +<seg>portugalÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Portekizce</seg></tuv> +<tuv xml:lang="pt"> +<seg>Português</seg></tuv> +<tuv xml:lang="sk"> +<seg>Portugalský</seg></tuv> +<tuv xml:lang="et"> +<seg>Portugali</seg></tuv> +<tuv xml:lang="cs"> +<seg>Portugalský</seg></tuv> +<tuv xml:lang="is"> +<seg>Portúgalska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Portuguese/Brazil</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Properties</seg></tuv> +<tuv xml:lang="da"> +<seg>Egenskaber</seg></tuv> +<tuv xml:lang="bg"> +<seg>ИнформациÑ</seg></tuv> +<tuv xml:lang="ro"> +<seg>Proprietăţi</seg></tuv> +<tuv xml:lang="de"> +<seg>Eigenschaften</seg></tuv> +<tuv xml:lang="ca"> +<seg>Propietats</seg></tuv> +<tuv xml:lang="eu"> +<seg>Propietateak</seg></tuv> +<tuv xml:lang="hu"> +<seg>Tulajdonságok</seg></tuv> +<tuv xml:lang="fr"> +<seg>Propriétés</seg></tuv> +<tuv xml:lang="ja"> +<seg>プãƒãƒ‘ティ</seg></tuv> +<tuv xml:lang="es"> +<seg>Propiedades</seg></tuv> +<tuv xml:lang="el"> +<seg>Ιδιότητες</seg></tuv> +<tuv xml:lang="sv"> +<seg>Egenskaper</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Proprietà </seg></tuv> +<tuv xml:lang="nl"> +<seg>Eigenschappen</seg></tuv> +<tuv xml:lang="pl"> +<seg>WÅ‚aÅ›ciwoÅ›ci</seg></tuv> +<tuv xml:lang="fi"> +<seg>Ominaisuudet</seg></tuv> +<tuv xml:lang="lt"> +<seg>SavybÄ—s</seg></tuv> +<tuv xml:lang="lv"> +<seg>ĪpaÅ¡Ä«bas</seg></tuv> +<tuv xml:lang="sl"> +<seg>Lastnosti</seg></tuv> +<tuv xml:lang="tr"> +<seg>Özellikler</seg></tuv> +<tuv xml:lang="pt"> +<seg>Propriedades</seg></tuv> +<tuv xml:lang="sk"> +<seg>Vlastnosti</seg></tuv> +<tuv xml:lang="et"> +<seg>Omadused</seg></tuv> +<tuv xml:lang="cs"> +<seg>Vlastnosti</seg></tuv> +<tuv xml:lang="is"> +<seg>Eiginleikar</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Punjabi</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Quechua</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Results %d-%d of %d</seg></tuv> +<tuv xml:lang="da"> +<seg>Resultater %d-%d of %d</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Eredemények %d-%d / %d</seg></tuv> +<tuv xml:lang="fr"> +<seg>Résutats %d-%d de %d</seg></tuv> +<tuv xml:lang="ja"> +<seg>çµæžœ: %d-%d (%dä¸)</seg></tuv> +<tuv xml:lang="es"> +<seg>Resultados %d-%d de %d</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Rhaeto-Romance</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Romanian</seg></tuv> +<tuv xml:lang="da"> +<seg>Romansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>РумънÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Română</seg></tuv> +<tuv xml:lang="de"> +<seg>Rumänisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Romanès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Errumaniera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Románia</seg></tuv> +<tuv xml:lang="fr"> +<seg>Roumain</seg></tuv> +<tuv xml:lang="ja"> +<seg>ルーマニア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Rumano</seg></tuv> +<tuv xml:lang="el"> +<seg>Romanian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Rumänska</seg></tuv> +<tuv xml:lang="no"> +<seg>Rumensk</seg></tuv> +<tuv xml:lang="it"> +<seg>Romeno</seg></tuv> +<tuv xml:lang="nl"> +<seg>Roemeens</seg></tuv> +<tuv xml:lang="pl"> +<seg>RumuÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>romania</seg></tuv> +<tuv xml:lang="lt"> +<seg>Rumunų</seg></tuv> +<tuv xml:lang="lv"> +<seg>RumÄņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>RomunÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Romence</seg></tuv> +<tuv xml:lang="pt"> +<seg>Romeno</seg></tuv> +<tuv xml:lang="sk"> +<seg>Rumunský</seg></tuv> +<tuv xml:lang="et"> +<seg>Rumeenia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Rumunsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Russian</seg></tuv> +<tuv xml:lang="da"> +<seg>Russisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>РуÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Rusă</seg></tuv> +<tuv xml:lang="de"> +<seg>Russisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Rus</seg></tuv> +<tuv xml:lang="eu"> +<seg>Errusiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Orosz</seg></tuv> +<tuv xml:lang="fr"> +<seg>Russe</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚·ã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Ruso</seg></tuv> +<tuv xml:lang="el"> +<seg>Ρωσικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Rysk</seg></tuv> +<tuv xml:lang="no"> +<seg>Russisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Russo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Russisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Rosyjski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Venäjä</seg></tuv> +<tuv xml:lang="lt"> +<seg>Rusų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Krievu</seg></tuv> +<tuv xml:lang="sl"> +<seg>ruÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Rusça</seg></tuv> +<tuv xml:lang="pt"> +<seg>Russo</seg></tuv> +<tuv xml:lang="sk"> +<seg>Ruský</seg></tuv> +<tuv xml:lang="et"> +<seg>Vene</seg></tuv> +<tuv xml:lang="cs"> +<seg>Ruský</seg></tuv> +<tuv xml:lang="is"> +<seg>Rússneska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Samoan</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Sangho</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg>Español</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Sanskrit</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Save</seg></tuv> +<tuv xml:lang="da"> +<seg>Gem</seg></tuv> +<tuv xml:lang="bg"> +<seg>ЗапиÑ</seg></tuv> +<tuv xml:lang="ro"> +<seg>Salvează</seg></tuv> +<tuv xml:lang="de"> +<seg>Speichern</seg></tuv> +<tuv xml:lang="ca"> +<seg>Desa</seg></tuv> +<tuv xml:lang="eu"> +<seg>Gorde</seg></tuv> +<tuv xml:lang="hu"> +<seg>Mentés</seg></tuv> +<tuv xml:lang="fr"> +<seg>Enregistrer</seg></tuv> +<tuv xml:lang="ja"> +<seg>ä¿å˜</seg></tuv> +<tuv xml:lang="es"> +<seg>Guardar</seg></tuv> +<tuv xml:lang="el"> +<seg>Αποθήκευση</seg></tuv> +<tuv xml:lang="sv"> +<seg>Spara</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Salva</seg></tuv> +<tuv xml:lang="nl"> +<seg>Opslaan</seg></tuv> +<tuv xml:lang="pl"> +<seg>Zapisz</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tallenna</seg></tuv> +<tuv xml:lang="lt"> +<seg>Ä®raÅ¡yti</seg></tuv> +<tuv xml:lang="lv"> +<seg>SaglabÄt</seg></tuv> +<tuv xml:lang="sl"> +<seg>Shrani</seg></tuv> +<tuv xml:lang="tr"> +<seg>Kaydet</seg></tuv> +<tuv xml:lang="pt"> +<seg>Gravar</seg></tuv> +<tuv xml:lang="sk"> +<seg>UložiÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Salvesta</seg></tuv> +<tuv xml:lang="cs"> +<seg>Uložit</seg></tuv> +<tuv xml:lang="is"> +<seg>Vista</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Save changes</seg></tuv> +<tuv xml:lang="da"> +<seg>Gem ændringer</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Änderungen speichern</seg></tuv> +<tuv xml:lang="ca"> +<seg>Guardar canvis</seg></tuv> +<tuv xml:lang="eu"> +<seg>Aldaketak gorde</seg></tuv> +<tuv xml:lang="hu"> +<seg>Változások mentése</seg></tuv> +<tuv xml:lang="fr"> +<seg>Sauvegarder les modifications</seg></tuv> +<tuv xml:lang="ja"> +<seg>変更をä¿å˜</seg></tuv> +<tuv xml:lang="es"> +<seg>Guardar cambios</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Saved changes.</seg></tuv> +<tuv xml:lang="da"> +<seg>Ændringer er gemt.</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Änderungen speichern</seg></tuv> +<tuv xml:lang="ca"> +<seg>Guardar canvis</seg></tuv> +<tuv xml:lang="eu"> +<seg>Aldaketak gorde</seg></tuv> +<tuv xml:lang="hu"> +<seg>Változások mentése</seg></tuv> +<tuv xml:lang="fr"> +<seg>Sauvegarder les modifications</seg></tuv> +<tuv xml:lang="ja"> +<seg>変更をä¿å˜</seg></tuv> +<tuv xml:lang="es"> +<seg>Cambios guardados.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Scots Gaelic</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Security</seg></tuv> +<tuv xml:lang="da"> +<seg>Sikkerhed</seg></tuv> +<tuv xml:lang="bg"> +<seg>Защита</seg></tuv> +<tuv xml:lang="ro"> +<seg>Securitate</seg></tuv> +<tuv xml:lang="de"> +<seg>Sicherheit</seg></tuv> +<tuv xml:lang="ca"> +<seg>Seguretat</seg></tuv> +<tuv xml:lang="eu"> +<seg>Segurtasuna</seg></tuv> +<tuv xml:lang="hu"> +<seg>Biztonság</seg></tuv> +<tuv xml:lang="fr"> +<seg>Sécurité</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã‚»ã‚ュリティ</seg></tuv> +<tuv xml:lang="es"> +<seg>Seguridad</seg></tuv> +<tuv xml:lang="el"> +<seg>Ασφάλεια</seg></tuv> +<tuv xml:lang="sv"> +<seg>Säkerhet</seg></tuv> +<tuv xml:lang="no"> +<seg>Sikkerhet</seg></tuv> +<tuv xml:lang="it"> +<seg>Sicurezza</seg></tuv> +<tuv xml:lang="nl"> +<seg>Beveiliging</seg></tuv> +<tuv xml:lang="pl"> +<seg>BezpieczeÅ„stwo</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tietoturva</seg></tuv> +<tuv xml:lang="lt"> +<seg>Saugumas</seg></tuv> +<tuv xml:lang="lv"> +<seg>DroÅ¡Ä«ba</seg></tuv> +<tuv xml:lang="sl"> +<seg>Varnost</seg></tuv> +<tuv xml:lang="tr"> +<seg>Güvenlik</seg></tuv> +<tuv xml:lang="pt"> +<seg>Segurança</seg></tuv> +<tuv xml:lang="sk"> +<seg>ZabezpeÄenie</seg></tuv> +<tuv xml:lang="et"> +<seg>Turvalisus</seg></tuv> +<tuv xml:lang="cs"> +<seg>ZabezpeÄenÃ</seg></tuv> +<tuv xml:lang="is"> +<seg>Öryggi</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Serbian</seg></tuv> +<tuv xml:lang="da"> +<seg>Serbisk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Sârbă</seg></tuv> +<tuv xml:lang="de"> +<seg>Serbisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Serbi</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Szerb</seg></tuv> +<tuv xml:lang="fr"> +<seg>Serbe</seg></tuv> +<tuv xml:lang="ja"> +<seg>セルビア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Serbio</seg></tuv> +<tuv xml:lang="el"> +<seg>Serbian</seg></tuv> +<tuv xml:lang="sv"> +<seg>Serbiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Serbisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Serbo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Servisch</seg></tuv> +<tuv xml:lang="pl"> +<seg>Serbski</seg></tuv> +<tuv xml:lang="fi"> +<seg>serbia</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Serbu</seg></tuv> +<tuv xml:lang="sl"> +<seg>SrbÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Sırpça</seg></tuv> +<tuv xml:lang="pt"> +<seg>Sérvio</seg></tuv> +<tuv xml:lang="sk"> +<seg>Srbský</seg></tuv> +<tuv xml:lang="et"> +<seg>Serbia</seg></tuv> +<tuv xml:lang="cs"> +<seg>Srbsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Serbo-Croatian</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Sesotho</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Setswana</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Shona</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Show this language</seg></tuv> +<tuv xml:lang="da"> +<seg>Vis dette sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago sarrerarik</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs bejegyzés.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Afficher cette langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã®è¨€èªžã‚’表示ã™ã‚‹</seg></tuv> +<tuv xml:lang="es"> +<seg>Mostrar este idioma</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Sindhi</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Sinhalese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Siswati</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Slovak</seg></tuv> +<tuv xml:lang="da"> +<seg>Slovakisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>Словашки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Slovacă</seg></tuv> +<tuv xml:lang="de"> +<seg>Slowakisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Eslovac</seg></tuv> +<tuv xml:lang="eu"> +<seg>Eslovakiera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Szlovák</seg></tuv> +<tuv xml:lang="fr"> +<seg>Slovaque</seg></tuv> +<tuv xml:lang="ja"> +<seg>スãƒãƒ´ã‚¡ã‚ア語</seg></tuv> +<tuv xml:lang="es"> +<seg>Eslovaco</seg></tuv> +<tuv xml:lang="el"> +<seg>Σλοβακικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Slovakisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Slovakisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Slovacco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Slovaaks</seg></tuv> +<tuv xml:lang="pl"> +<seg>SÅ‚owacki</seg></tuv> +<tuv xml:lang="fi"> +<seg>Slovakki</seg></tuv> +<tuv xml:lang="lt"> +<seg>Slovakų</seg></tuv> +<tuv xml:lang="lv"> +<seg>SlovÄku</seg></tuv> +<tuv xml:lang="sl"> +<seg>slovaÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Slovakça</seg></tuv> +<tuv xml:lang="pt"> +<seg>Eslovaco</seg></tuv> +<tuv xml:lang="sk"> +<seg>Slovenský</seg></tuv> +<tuv xml:lang="et"> +<seg>Slovaki</seg></tuv> +<tuv xml:lang="cs"> +<seg>Slovenský</seg></tuv> +<tuv xml:lang="is"> +<seg>Slóvenska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Slovenian</seg></tuv> +<tuv xml:lang="da"> +<seg>Slovensk</seg></tuv> +<tuv xml:lang="bg"> +<seg>СловенÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Slovenă</seg></tuv> +<tuv xml:lang="de"> +<seg>Slowenisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Eslovè</seg></tuv> +<tuv xml:lang="eu"> +<seg>Sloveniera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Szlovén</seg></tuv> +<tuv xml:lang="fr"> +<seg>Slovène</seg></tuv> +<tuv xml:lang="ja"> +<seg>スãƒãƒ´ã‚§ãƒ‹ã‚¢èªž</seg></tuv> +<tuv xml:lang="es"> +<seg>Esloveno</seg></tuv> +<tuv xml:lang="el"> +<seg>Σλοβενικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Slovensk</seg></tuv> +<tuv xml:lang="no"> +<seg>Slovensk</seg></tuv> +<tuv xml:lang="it"> +<seg>Sloveno</seg></tuv> +<tuv xml:lang="nl"> +<seg>Sloveens</seg></tuv> +<tuv xml:lang="pl"> +<seg>SÅ‚oweÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Slovenia</seg></tuv> +<tuv xml:lang="lt"> +<seg>SlovÄ—nų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Slovēņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>slovenÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Slovence</seg></tuv> +<tuv xml:lang="pt"> +<seg>Esloveno</seg></tuv> +<tuv xml:lang="sk"> +<seg>Slovinský</seg></tuv> +<tuv xml:lang="et"> +<seg>Sloveeni</seg></tuv> +<tuv xml:lang="cs"> +<seg>Slovinský</seg></tuv> +<tuv xml:lang="is"> +<seg>Slóvanska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Somali</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Spanish</seg></tuv> +<tuv xml:lang="da"> +<seg>Spansk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ИÑпанÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Spaniolă</seg></tuv> +<tuv xml:lang="de"> +<seg>Spanisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Espanyol</seg></tuv> +<tuv xml:lang="eu"> +<seg>Gaztelera</seg></tuv> +<tuv xml:lang="hu"> +<seg>Spanyol</seg></tuv> +<tuv xml:lang="fr"> +<seg>Espagnol</seg></tuv> +<tuv xml:lang="ja"> +<seg>スペイン語</seg></tuv> +<tuv xml:lang="es"> +<seg>Español</seg></tuv> +<tuv xml:lang="el"> +<seg>Ισπανικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Spansk</seg></tuv> +<tuv xml:lang="no"> +<seg>Spansk</seg></tuv> +<tuv xml:lang="it"> +<seg>Spagnolo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Spaans</seg></tuv> +<tuv xml:lang="pl"> +<seg>HiszpaÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Espanja</seg></tuv> +<tuv xml:lang="lt"> +<seg>Ispanų</seg></tuv> +<tuv xml:lang="lv"> +<seg>SpÄņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>Å¡panÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°spanyolca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Espanhol</seg></tuv> +<tuv xml:lang="sk"> +<seg>Å panielsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Hispaania</seg></tuv> +<tuv xml:lang="cs"> +<seg>Å panÄ›lský</seg></tuv> +<tuv xml:lang="is"> +<seg>Spænska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Spanish/Argentina</seg></tuv> +<tuv xml:lang="da"> +<seg>Spansk/Argentina</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg>Gaztelania/Argentina</seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Spanish/Colombia</seg></tuv> +<tuv xml:lang="da"> +<seg>Spansk/Colombia</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg>Gaztelania/Colombia</seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg>Español</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Spanish/Mexico</seg></tuv> +<tuv xml:lang="da"> +<seg>Spansk/Mexico</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg>Gaztelania/Mexico</seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg>Español</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Spanish/Spain</seg></tuv> +<tuv xml:lang="da"> +<seg>Spansk/Spanien</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg>Gaztelania/Spain</seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg>Español</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Sundanese</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Swahili</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Swedish</seg></tuv> +<tuv xml:lang="da"> +<seg>Svensk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ШведÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Suedeză</seg></tuv> +<tuv xml:lang="de"> +<seg>Schwedisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Suec</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Svéd</seg></tuv> +<tuv xml:lang="fr"> +<seg>Suédois</seg></tuv> +<tuv xml:lang="ja"> +<seg>スウェーデン語</seg></tuv> +<tuv xml:lang="es"> +<seg>Sueco</seg></tuv> +<tuv xml:lang="el"> +<seg>Σουηδικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Svensk</seg></tuv> +<tuv xml:lang="no"> +<seg>Svensk</seg></tuv> +<tuv xml:lang="it"> +<seg>Svedese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Zweeds</seg></tuv> +<tuv xml:lang="pl"> +<seg>Szwedzki</seg></tuv> +<tuv xml:lang="fi"> +<seg>Ruotsi</seg></tuv> +<tuv xml:lang="lt"> +<seg>Å vedų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Zviedru</seg></tuv> +<tuv xml:lang="sl"> +<seg>Å¡vedÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ä°sveççe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Sueco</seg></tuv> +<tuv xml:lang="sk"> +<seg>Å védsky</seg></tuv> +<tuv xml:lang="et"> +<seg>Rootsi</seg></tuv> +<tuv xml:lang="cs"> +<seg>Å védský</seg></tuv> +<tuv xml:lang="is"> +<seg>Sænska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>TMX</seg></tuv> +<tuv xml:lang="da"> +<seg>TMX</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>TMX stands for Translation Memory eXchange. The purpose of a translation memory is to gather thousands of translations. Whenever you need a term such as <tt>Home</tt> for your website chances are it is already translated, and all you have to do is to load a TMX file to get the translations.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tagalog</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tajik</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="da"> +<seg>Tamilsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ТамилÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="de"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="ca"> +<seg>Tà mil</seg></tuv> +<tuv xml:lang="eu"> +<seg>Tamila</seg></tuv> +<tuv xml:lang="hu"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="fr"> +<seg>Tamoul</seg></tuv> +<tuv xml:lang="ja"> +<seg>タミル語</seg></tuv> +<tuv xml:lang="es"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="el"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="sv"> +<seg>Tamilsk</seg></tuv> +<tuv xml:lang="no"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="it"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="nl"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="pl"> +<seg>Tamilskie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tamili</seg></tuv> +<tuv xml:lang="lt"> +<seg>Tamilų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Tamilu</seg></tuv> +<tuv xml:lang="sl"> +<seg>Tamilski</seg></tuv> +<tuv xml:lang="tr"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="pt"> +<seg>Tamil</seg></tuv> +<tuv xml:lang="sk"> +<seg>Tamilská</seg></tuv> +<tuv xml:lang="et"> +<seg>Tamili</seg></tuv> +<tuv xml:lang="cs"> +<seg>TamilÅ¡tina</seg></tuv> +<tuv xml:lang="is"> +<seg>Tamil</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Target language</seg></tuv> +<tuv xml:lang="da"> +<seg>Oversættelsessprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago sarrerarik</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs bejegyzés.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Il n'y a pas de langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語ãŒã‚ã‚Šã¾ã›ã‚“</seg></tuv> +<tuv xml:lang="es"> +<seg>No hay idiomas.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Target languages</seg></tuv> +<tuv xml:lang="da"> +<seg>Oversættelsessprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago sarrerarik</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs bejegyzés.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Il n'y a pas de langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語ãŒã‚ã‚Šã¾ã›ã‚“</seg></tuv> +<tuv xml:lang="es"> +<seg>No hay idiomas.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tatar</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Team e-mail address</seg></tuv> +<tuv xml:lang="da"> +<seg>Team e-mail adresse</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Adresse email de l'équipe</seg></tuv> +<tuv xml:lang="ja"> +<seg>翻訳ãƒãƒ¼ãƒ ã®é›»åメールアドレス</seg></tuv> +<tuv xml:lang="es"> +<seg>Dirección de <em>email</em> del equipo</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="da"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="de"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="ca"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="fr"> +<seg>Telougou</seg></tuv> +<tuv xml:lang="ja"> +<seg>テルグ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="el"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="sv"> +<seg>Telugo</seg></tuv> +<tuv xml:lang="no"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="it"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="nl"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="pl"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="fi"> +<seg>telugu</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="sl"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="tr"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="pt"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="sk"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="et"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="cs"> +<seg>Telugu</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Thai</seg></tuv> +<tuv xml:lang="da"> +<seg>Thailandsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ТайландÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Thai</seg></tuv> +<tuv xml:lang="de"> +<seg>Thai</seg></tuv> +<tuv xml:lang="ca"> +<seg>Tailandès</seg></tuv> +<tuv xml:lang="eu"> +<seg>Thaia</seg></tuv> +<tuv xml:lang="hu"> +<seg>Thai</seg></tuv> +<tuv xml:lang="fr"> +<seg>Thaïlandais</seg></tuv> +<tuv xml:lang="ja"> +<seg>タイ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Tailandés</seg></tuv> +<tuv xml:lang="el"> +<seg>ΤαϊλανδÎζικη</seg></tuv> +<tuv xml:lang="sv"> +<seg>Thailändsk</seg></tuv> +<tuv xml:lang="no"> +<seg>Thai</seg></tuv> +<tuv xml:lang="it"> +<seg>Thai</seg></tuv> +<tuv xml:lang="nl"> +<seg>Thaïs</seg></tuv> +<tuv xml:lang="pl"> +<seg>Tajskie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Thai</seg></tuv> +<tuv xml:lang="lt"> +<seg>TailandieÄių</seg></tuv> +<tuv xml:lang="lv"> +<seg>Taizemes</seg></tuv> +<tuv xml:lang="sl"> +<seg>Tajski</seg></tuv> +<tuv xml:lang="tr"> +<seg>Tayvan Dili</seg></tuv> +<tuv xml:lang="pt"> +<seg>Tailandês</seg></tuv> +<tuv xml:lang="sk"> +<seg>Thajská</seg></tuv> +<tuv xml:lang="et"> +<seg>Tai</seg></tuv> +<tuv xml:lang="cs"> +<seg>ThajÅ¡tina</seg></tuv> +<tuv xml:lang="is"> +<seg>Tælenskt</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>The message catalog also supports importing TMX files. You can add new messages and translations importing a TMX file in TMX level 1. Enter the filename and click the <tt>Import</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a +fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt> +gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Vous pouvez ajouter de nouveau messages et traductions en important un fichier de type "PO". Saisissez le nom de fichier, sélectionnez la langue de traduction et cliquez sur le bouton <tt>Import</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ–°ã—ã„メッセージã¨ç¿»è¨³ã‚’ PO ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦è¿½åŠ ã§ãã¾ã™ã€‚ファイルåを入力ã—ã€ç¿»è¨³ã®è¨€èªžã‚’é¸æŠžã—ã€<b>インãƒãƒ¼ãƒˆ</b> ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Puedes añadir nuevos mensajes y traducciones importando ficheros PO. Introduce el nombre del fichero, selecciona el idioma de las traducciones y pulsa el botón <tt>Importar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>There are no attributes</seg></tuv> +<tuv xml:lang="da"> +<seg>Der er ingen attributter</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago sarrerarik</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs bejegyzés.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Il n'y a pas de langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語ãŒã‚ã‚Šã¾ã›ã‚“</seg></tuv> +<tuv xml:lang="es"> +<seg>No hay atributos.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>There are no languages</seg></tuv> +<tuv xml:lang="da"> +<seg>Der er ingen sprog</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago sarrerarik</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs bejegyzés.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Il n'y a pas de langue</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語ãŒã‚ã‚Šã¾ã›ã‚“</seg></tuv> +<tuv xml:lang="es"> +<seg>No hay idiomas.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>There are no messages.</seg></tuv> +<tuv xml:lang="da"> +<seg>Der er ingen tekster</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago sarrerarik</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs bejegyzés.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Il n'y a pas de message</seg></tuv> +<tuv xml:lang="ja"> +<seg>言語ãŒã‚ã‚Šã¾ã›ã‚“。</seg></tuv> +<tuv xml:lang="es"> +<seg>No hay mensajes.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>There are no properties.</seg></tuv> +<tuv xml:lang="da"> +<seg>Der er ingen egenskaber</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg>Neue Sprache</seg></tuv> +<tuv xml:lang="ca"> +<seg>Idiomes pendents</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ez dago ezaugarri-orririk</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nincs tulajdonságokat leÃró lap.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Il n'y a pas de propriétés</seg></tuv> +<tuv xml:lang="ja"> +<seg>プãƒãƒ‘ティãŒã‚ã‚Šã¾ã›ã‚“。</seg></tuv> +<tuv xml:lang="es"> +<seg>No hay propiedades.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>This <tt>%s</tt> object needs to be upgraded</seg></tuv> +<tuv xml:lang="da"> +<seg>Dette <tt>%s</tt> objekt skal opgraderes</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ezt a <tt>%s</tt> objektumot frissÃtsd!</seg></tuv> +<tuv xml:lang="fr"> +<seg>Cet objet <tt>%s</tt> requière une mise à niveau.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã® <tt>%s</tt> オブジェクトã¯æ›´æ–°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Este objeto <tt>%s</tt> necesita ser actualizado</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>This <tt>Localizer</tt> object doesn't need to be upgraded.</seg></tuv> +<tuv xml:lang="da"> +<seg>Dette <tt>Localizer</tt> objekt behøver ikke at bliver opgraderet</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ez a <tt>Localizer</tt> objektum nem igényel frissitést.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Cet objet <tt>Localizer</tt> ne requière pas de mise à niveau.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã® <tt>Localizer</tt> オブジェクトã¯ã€æ›´æ–°ã®å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。</seg></tuv> +<tuv xml:lang="es"> +<seg>Este objeto <tt>Localizer</tt> no necesita actualizarse</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>This <tt>Localizer</tt> object needs to be upgraded.</seg></tuv> +<tuv xml:lang="da"> +<seg>Dette <tt>Localizer</tt> objekt skal opgraderes</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ezt a <tt>Localizr</tt> objektumtumot frissÃtsd!</seg></tuv> +<tuv xml:lang="fr"> +<seg>Cet objet <tt>Localizer</tt> a besoin d'une mise à niveau.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã®ã‚ªãƒ–ジェクトã¯ã€æ›´æ–°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Este objeto <tt>Localizer</tt> debe ser actualizado</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>This object doesn't need to be upgraded.</seg></tuv> +<tuv xml:lang="da"> +<seg>Dette objekt har ikke behov for at blive opgraderet</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ez az objektum nem igényel frissitést.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Cet objet n'a pas besoin de mise à niveau.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã®ã‚ªãƒ–ジェクトã¯ã€æ›´æ–°ã®å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。</seg></tuv> +<tuv xml:lang="es"> +<seg>Este objeto no necesita ser actualizado.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tibetan</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tigrinya</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Title</seg></tuv> +<tuv xml:lang="da"> +<seg>Titel</seg></tuv> +<tuv xml:lang="bg"> +<seg>ДлъжноÑÑ‚</seg></tuv> +<tuv xml:lang="ro"> +<seg>Titlu</seg></tuv> +<tuv xml:lang="de"> +<seg>Titel</seg></tuv> +<tuv xml:lang="ca"> +<seg>TÃtol</seg></tuv> +<tuv xml:lang="eu"> +<seg>Titulua</seg></tuv> +<tuv xml:lang="hu"> +<seg>CÃm</seg></tuv> +<tuv xml:lang="fr"> +<seg>Titre</seg></tuv> +<tuv xml:lang="ja"> +<seg>肩書</seg></tuv> +<tuv xml:lang="es"> +<seg>TÃtulo</seg></tuv> +<tuv xml:lang="el"> +<seg>Τίτλος</seg></tuv> +<tuv xml:lang="sv"> +<seg>Titel</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Titolo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Titel</seg></tuv> +<tuv xml:lang="pl"> +<seg>TytuÅ‚</seg></tuv> +<tuv xml:lang="fi"> +<seg>Otsikko</seg></tuv> +<tuv xml:lang="lt"> +<seg>Titulas</seg></tuv> +<tuv xml:lang="lv"> +<seg>Titls</seg></tuv> +<tuv xml:lang="sl"> +<seg>Naslov</seg></tuv> +<tuv xml:lang="tr"> +<seg>BaÅŸlık</seg></tuv> +<tuv xml:lang="pt"> +<seg>TÃtulo</seg></tuv> +<tuv xml:lang="sk"> +<seg>Titul</seg></tuv> +<tuv xml:lang="et"> +<seg>Tiitel</seg></tuv> +<tuv xml:lang="cs"> +<seg>Titul</seg></tuv> +<tuv xml:lang="is"> +<seg>Titill</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>To add a language select it and click the <tt>Add</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Para añadir un idioma seleccionalo y pulsa el botón <tt>Añadir</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>To add a new property enter its name, select its type and click the <tt>Add</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Pour ajouter une nouvelle propriété, saisissez son nom, choisissez son type et cliquez sur le bouton <tt>Add</tt>.</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ–°ã—ã„プãƒãƒ‘ãƒ†ã‚£ã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€åå‰ã‚’入力ã—ã€ç¨®é¡žã‚’é¸æŠžã—ã¾ã™ã€‚ãã—ã¦ã€<b>è¿½åŠ </b>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Para añadir una nueva propiedad introduce su nombre, selecciona su tipo y pulsa el botón <tt>Añadir</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>To add an attribute introduce its id and click the <tt>Add</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Új üzenet hozzadásához ird be, majd kattintsd a <tt>Hozzáadás</tt> gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Pour ajouter un nouveau message, sélectionnez le et cliquer sur le bouton <tt>Add</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ–°ã—ã„ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€<b>è¿½åŠ </b> ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Para añadir un atributo introduce su id y pulsa el botón <tt>Añadir</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>To change the default language select it and click the <tt>Change</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Para añadir un idioma seleccionalo y pulsa el botón <tt>Añadir</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>To delete a language check it and click the <tt>Delete</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Para eliminar un atributo seleccionalo y pulsa el botón <tt>Eliminar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>To delete an attribute check it and click the <tt>Delete</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelv hozzáadásához kattints a <tt>Hozzáadás</tt> gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Pour ajouter une langue, sélectionnez la et cliquer sur le bouton <tt>Add</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>è¨€èªžã‚’è¿½åŠ ã™ã‚‹ã«ã¯ã€è¿½åŠ ã™ã‚‹è¨€èªžã‚’é¸æŠžã—ã¦ã€<tt>è¿½åŠ </tt>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Para eliminar un atributo seleccionalo y pulsa el botón <tt>Eliminar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tonga</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Tsonga</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Turkish</seg></tuv> +<tuv xml:lang="da"> +<seg>Tyrkisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ТурÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Turcă</seg></tuv> +<tuv xml:lang="de"> +<seg>Türkisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Turc</seg></tuv> +<tuv xml:lang="eu"> +<seg>Turkiarra</seg></tuv> +<tuv xml:lang="hu"> +<seg>Török</seg></tuv> +<tuv xml:lang="fr"> +<seg>Turc</seg></tuv> +<tuv xml:lang="ja"> +<seg>トルコ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Turco</seg></tuv> +<tuv xml:lang="el"> +<seg>ΤουÏκική</seg></tuv> +<tuv xml:lang="sv"> +<seg>Turkisk</seg></tuv> +<tuv xml:lang="no"> +<seg>Tyrkisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Turco</seg></tuv> +<tuv xml:lang="nl"> +<seg>Turks</seg></tuv> +<tuv xml:lang="pl"> +<seg>Tureckie</seg></tuv> +<tuv xml:lang="fi"> +<seg>Turkki</seg></tuv> +<tuv xml:lang="lt"> +<seg>Turkų</seg></tuv> +<tuv xml:lang="lv"> +<seg>Turku</seg></tuv> +<tuv xml:lang="sl"> +<seg>TurÅ¡ki</seg></tuv> +<tuv xml:lang="tr"> +<seg>Türkçe</seg></tuv> +<tuv xml:lang="pt"> +<seg>Turco</seg></tuv> +<tuv xml:lang="sk"> +<seg>Turecká</seg></tuv> +<tuv xml:lang="et"> +<seg>Türgi</seg></tuv> +<tuv xml:lang="cs"> +<seg>TureÄtina</seg></tuv> +<tuv xml:lang="is"> +<seg>Tyrknenskt</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Turkmen</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Twi</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Type</seg></tuv> +<tuv xml:lang="da"> +<seg>Type</seg></tuv> +<tuv xml:lang="bg"> +<seg>Тип</seg></tuv> +<tuv xml:lang="ro"> +<seg>Tip</seg></tuv> +<tuv xml:lang="de"> +<seg>Typ</seg></tuv> +<tuv xml:lang="ca"> +<seg>Tipus</seg></tuv> +<tuv xml:lang="eu"> +<seg>Mota</seg></tuv> +<tuv xml:lang="hu"> +<seg>TÃpus</seg></tuv> +<tuv xml:lang="fr"> +<seg>Type</seg></tuv> +<tuv xml:lang="ja"> +<seg>タイプ</seg></tuv> +<tuv xml:lang="es"> +<seg>Tipo</seg></tuv> +<tuv xml:lang="el"> +<seg>ΤÏπος</seg></tuv> +<tuv xml:lang="sv"> +<seg>Typ</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Tipo</seg></tuv> +<tuv xml:lang="nl"> +<seg>Type</seg></tuv> +<tuv xml:lang="pl"> +<seg>Typ</seg></tuv> +<tuv xml:lang="fi"> +<seg>Tyyppi</seg></tuv> +<tuv xml:lang="lt"> +<seg>Tipas</seg></tuv> +<tuv xml:lang="lv"> +<seg>Tips</seg></tuv> +<tuv xml:lang="sl"> +<seg>Vrsta</seg></tuv> +<tuv xml:lang="tr"> +<seg>Tür</seg></tuv> +<tuv xml:lang="pt"> +<seg>Tipo</seg></tuv> +<tuv xml:lang="sk"> +<seg>Typ</seg></tuv> +<tuv xml:lang="et"> +<seg>Tüüp</seg></tuv> +<tuv xml:lang="cs"> +<seg>Typ</seg></tuv> +<tuv xml:lang="is"> +<seg>Tegund</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Uighur</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Ukrainian</seg></tuv> +<tuv xml:lang="da"> +<seg>Ukrainsk</seg></tuv> +<tuv xml:lang="bg"> +<seg>УкраинÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Ucrainiană</seg></tuv> +<tuv xml:lang="de"> +<seg>Ukrainisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Ucraïnès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Ukrán</seg></tuv> +<tuv xml:lang="fr"> +<seg>Ukrainien</seg></tuv> +<tuv xml:lang="ja"> +<seg>ウクライナ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Ucraniano</seg></tuv> +<tuv xml:lang="el"> +<seg>ΟυκÏανικό</seg></tuv> +<tuv xml:lang="sv"> +<seg>Ukrainsk</seg></tuv> +<tuv xml:lang="no"> +<seg>Ukrainsk</seg></tuv> +<tuv xml:lang="it"> +<seg>Ucraino</seg></tuv> +<tuv xml:lang="nl"> +<seg>Oekraïns</seg></tuv> +<tuv xml:lang="pl"> +<seg>UkraiÅ„ski</seg></tuv> +<tuv xml:lang="fi"> +<seg>Ukraina</seg></tuv> +<tuv xml:lang="lt"> +<seg>UkrainieÄių</seg></tuv> +<tuv xml:lang="lv"> +<seg>Ukraiņu</seg></tuv> +<tuv xml:lang="sl"> +<seg>ukrajinÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Ukraynaca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Ucraniano</seg></tuv> +<tuv xml:lang="sk"> +<seg>Ukrajinský</seg></tuv> +<tuv xml:lang="et"> +<seg>Ukraina</seg></tuv> +<tuv xml:lang="cs"> +<seg>Ukrajinský</seg></tuv> +<tuv xml:lang="is"> +<seg>ÚkraÃnska</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Undo</seg></tuv> +<tuv xml:lang="da"> +<seg>Fortryd</seg></tuv> +<tuv xml:lang="bg"> +<seg>ОтмÑна</seg></tuv> +<tuv xml:lang="ro"> +<seg>Des-face</seg></tuv> +<tuv xml:lang="de"> +<seg>Rückgängig</seg></tuv> +<tuv xml:lang="ca"> +<seg>Desfés</seg></tuv> +<tuv xml:lang="eu"> +<seg>Desegin</seg></tuv> +<tuv xml:lang="hu"> +<seg>Visszavonás</seg></tuv> +<tuv xml:lang="fr"> +<seg>Annuler</seg></tuv> +<tuv xml:lang="ja"> +<seg>å…ƒã«æˆ»ã™</seg></tuv> +<tuv xml:lang="es"> +<seg>Deshacer</seg></tuv> +<tuv xml:lang="el"> +<seg>ΑναίÏεση</seg></tuv> +<tuv xml:lang="sv"> +<seg>Ã…ngra</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Annulla</seg></tuv> +<tuv xml:lang="nl"> +<seg>Ongedaan maken</seg></tuv> +<tuv xml:lang="pl"> +<seg>Cofnij</seg></tuv> +<tuv xml:lang="fi"> +<seg>Peru</seg></tuv> +<tuv xml:lang="lt"> +<seg>AtÅ¡aukti</seg></tuv> +<tuv xml:lang="lv"> +<seg>Atcelt</seg></tuv> +<tuv xml:lang="sl"> +<seg>Razveljavi</seg></tuv> +<tuv xml:lang="tr"> +<seg>Geri al</seg></tuv> +<tuv xml:lang="pt"> +<seg>Desfazer</seg></tuv> +<tuv xml:lang="sk"> +<seg>VrátiÅ¥ späť</seg></tuv> +<tuv xml:lang="et"> +<seg>Võta tagasi</seg></tuv> +<tuv xml:lang="cs"> +<seg>ZpÄ›t</seg></tuv> +<tuv xml:lang="is"> +<seg>Hætta við</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Upgrade</seg></tuv> +<tuv xml:lang="da"> +<seg>Opgradere</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>FrissÃtés</seg></tuv> +<tuv xml:lang="fr"> +<seg>Mise à niveau</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ›´æ–°</seg></tuv> +<tuv xml:lang="es"> +<seg>Actualizar</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Urdu</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Use locale folders</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Nyelvi mappák használata</seg></tuv> +<tuv xml:lang="fr"> +<seg>Utiliser le répertoire local</seg></tuv> +<tuv xml:lang="ja"> +<seg>ãƒã‚±ãƒ¼ãƒ«ãƒ•ã‚©ãƒ«ãƒ€ã‚’使ã†</seg></tuv> +<tuv xml:lang="es"> +<seg>Usar carpetas locales</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Uzbek</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Vietnamese</seg></tuv> +<tuv xml:lang="da"> +<seg>Vietnamesisk</seg></tuv> +<tuv xml:lang="bg"> +<seg>ВиетнамÑки</seg></tuv> +<tuv xml:lang="ro"> +<seg>Vietnameză</seg></tuv> +<tuv xml:lang="de"> +<seg>Vietnamesisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Vietnamita</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Vietnami</seg></tuv> +<tuv xml:lang="fr"> +<seg>Vietnamien</seg></tuv> +<tuv xml:lang="ja"> +<seg>ベトナム語</seg></tuv> +<tuv xml:lang="es"> +<seg>Vietnamita</seg></tuv> +<tuv xml:lang="el"> +<seg>Vietnamese</seg></tuv> +<tuv xml:lang="sv"> +<seg>Vietnamesiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Vietnamesisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Vietnamita</seg></tuv> +<tuv xml:lang="nl"> +<seg>Vietnamees</seg></tuv> +<tuv xml:lang="pl"> +<seg>Wietnamski</seg></tuv> +<tuv xml:lang="fi"> +<seg>vietnam</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>VjetnamieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>VietnamÄina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Vietnamca</seg></tuv> +<tuv xml:lang="pt"> +<seg>Vietnamita</seg></tuv> +<tuv xml:lang="sk"> +<seg>Vietnamský</seg></tuv> +<tuv xml:lang="et"> +<seg>Vietnami</seg></tuv> +<tuv xml:lang="cs"> +<seg>Vietnamsky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>View</seg></tuv> +<tuv xml:lang="da"> +<seg>Vis</seg></tuv> +<tuv xml:lang="bg"> +<seg>Преглед</seg></tuv> +<tuv xml:lang="ro"> +<seg>Vizualizare</seg></tuv> +<tuv xml:lang="de"> +<seg>Ansicht</seg></tuv> +<tuv xml:lang="ca"> +<seg>Visualitza</seg></tuv> +<tuv xml:lang="eu"> +<seg>Ikusi</seg></tuv> +<tuv xml:lang="hu"> +<seg>Nézet</seg></tuv> +<tuv xml:lang="fr"> +<seg>Affichage</seg></tuv> +<tuv xml:lang="ja"> +<seg>表示</seg></tuv> +<tuv xml:lang="es"> +<seg>Vista</seg></tuv> +<tuv xml:lang="el"> +<seg>Î Ïοβολή</seg></tuv> +<tuv xml:lang="sv"> +<seg>Visa</seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg>Visualizza</seg></tuv> +<tuv xml:lang="nl"> +<seg>Beeld</seg></tuv> +<tuv xml:lang="pl"> +<seg>Widok</seg></tuv> +<tuv xml:lang="fi"> +<seg>Näytä</seg></tuv> +<tuv xml:lang="lt"> +<seg>Vaizdas</seg></tuv> +<tuv xml:lang="lv"> +<seg>SkatÄ«t</seg></tuv> +<tuv xml:lang="sl"> +<seg>Videz</seg></tuv> +<tuv xml:lang="tr"> +<seg>Görüntüle</seg></tuv> +<tuv xml:lang="pt"> +<seg>Ver</seg></tuv> +<tuv xml:lang="sk"> +<seg>ZobraziÅ¥</seg></tuv> +<tuv xml:lang="et"> +<seg>Vaade</seg></tuv> +<tuv xml:lang="cs"> +<seg>Pohled</seg></tuv> +<tuv xml:lang="is"> +<seg>Skoða</seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Volapuk</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Welsh</seg></tuv> +<tuv xml:lang="da"> +<seg>Wallisisk</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>Galeză</seg></tuv> +<tuv xml:lang="de"> +<seg>Walisisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Gal·lès</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Welszi</seg></tuv> +<tuv xml:lang="fr"> +<seg>Gallois</seg></tuv> +<tuv xml:lang="ja"> +<seg>ウェールズ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Galés</seg></tuv> +<tuv xml:lang="el"> +<seg>Welsh</seg></tuv> +<tuv xml:lang="sv"> +<seg>Walesiska</seg></tuv> +<tuv xml:lang="no"> +<seg>Walisisk</seg></tuv> +<tuv xml:lang="it"> +<seg>Gallese</seg></tuv> +<tuv xml:lang="nl"> +<seg>Welsh</seg></tuv> +<tuv xml:lang="pl"> +<seg>Walijski</seg></tuv> +<tuv xml:lang="fi"> +<seg>wales</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>VelsieÅ¡u</seg></tuv> +<tuv xml:lang="sl"> +<seg>WelÅ¡Äina</seg></tuv> +<tuv xml:lang="tr"> +<seg>Welsh</seg></tuv> +<tuv xml:lang="pt"> +<seg>Galês</seg></tuv> +<tuv xml:lang="sk"> +<seg>WelÅ¡ský</seg></tuv> +<tuv xml:lang="et"> +<seg>Kõmri</seg></tuv> +<tuv xml:lang="cs"> +<seg>VelÅ¡sky</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>With this form you can change the title of the message catalog. The title also is used as the value of the <tt>Project-Id-Version</tt> field in the header of the PO files, which are generated when the message catalog is exported.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>À l'aide de ce formulaire vous pouvez modifier le titre du message catalog. Le titre est également utilisé comme valeur du champ <tt>Project-Id-Version</tt>dans l'entête des fichiers PO. Ces derniers sont créés quand le message catalog est exporté.</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒã‚° (Message Catalog) ã®ã‚¿ã‚¤ãƒˆãƒ«ã‚’変更ã§ãã¾ã™ã€‚ã“ã®ã‚¿ã‚¤ãƒˆãƒ«ã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒã‚°ã‚’エクスãƒãƒ¼ãƒˆã™ã‚‹ã¨ç”Ÿæˆã•ã‚Œã‚‹ PO ファイルã®ãƒ˜ãƒƒãƒ€å†…ã«ã‚ã‚‹ã€<tt>Project-Id-Version</tt> フィールドã®å€¤ã¨ã—ã¦ã‚‚使ã‚ã‚Œã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Con este formulario puedes cambiar el tÃtulo del catálogo de mensajes. El tÃtulo también se utiliza como valor del campo <tt>Project-Id-Version</tt> en la cabecera de los ficheros PO, los cuales se generan cuando se exporta el catálogo de mensajes.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Wolof</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Xhosa</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="da"> +<seg>Jiddisch</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg>IdiÅŸ</seg></tuv> +<tuv xml:lang="de"> +<seg>Jiddisch</seg></tuv> +<tuv xml:lang="ca"> +<seg>Jiddisch</seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="fr"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="ja"> +<seg>イディッシュ語</seg></tuv> +<tuv xml:lang="es"> +<seg>Yidish</seg></tuv> +<tuv xml:lang="el"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="sv"> +<seg>Jiddisch</seg></tuv> +<tuv xml:lang="no"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="it"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="nl"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="pl"> +<seg>Jidisz</seg></tuv> +<tuv xml:lang="fi"> +<seg>jiddiÅ¡</seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg>JidiÅ¡s</seg></tuv> +<tuv xml:lang="sl"> +<seg>JidiÅ¡</seg></tuv> +<tuv xml:lang="tr"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="pt"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="sk"> +<seg>JidiÅ¡</seg></tuv> +<tuv xml:lang="et"> +<seg>JidiÅ¡</seg></tuv> +<tuv xml:lang="cs"> +<seg>Yiddish</seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Yoruba</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>You can add new messages and translations importing a PO file. Enter the filename, select the language of the translations and click the <tt>Import</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a +fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt> +gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Vous pouvez ajouter de nouveau messages et traductions en important un fichier de type "PO". Saisissez le nom de fichier, sélectionnez la langue de traduction et cliquez sur le bouton <tt>Import</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ–°ã—ã„メッセージã¨ç¿»è¨³ã‚’ PO ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦è¿½åŠ ã§ãã¾ã™ã€‚ファイルåを入力ã—ã€ç¿»è¨³ã®è¨€èªžã‚’é¸æŠžã—ã€<b>インãƒãƒ¼ãƒˆ</b> ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Puedes añadir nuevos mensajes y traducciones importando ficheros PO. Introduce el nombre del fichero, selecciona el idioma de las traducciones y pulsa el botón <tt>Importar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>You can export the messages and their translations to PO files. Check <tt>locale.pot</tt> to get only the messages, without their translations. Check any other option to get a PO file with the messages and their translations to the selected language. Then click the <tt>Export</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Vous pouvez exporter des messages et leurs traductions dans des fichiers de type "PO". Sélectionnez <tt>locale.pot</tt> pour exporter les messages sans traductions. Sélectionnez tout autre options pour générer un fichier "PO" avec ses messages et leurs traductions dans le langage sélectioné. Ensuite cliquez sur le bouton <tt>Export</tt>.</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージã¨ç¿»è¨³ã¯ã€PO ファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚翻訳をçœã„ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã ã‘ã‚’å¾—ã‚‹ã«ã¯ <tt>locale.pot</tt> ã®ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚é¸æŠžã—ãŸè¨€èªžã«å¯¾ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¨ç¿»è¨³ã‚’å¾—ã‚‹ã«ã¯ã€ãã®ã»ã‹ã®ã‚ªãƒ—ションをãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚ãã—ã¦ã€<b>エクスãƒãƒ¼ãƒˆ</b>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Puedes exportar los mensajes y sus traducciones a ficheros PO. Selecciona <tt>locale.pot</tt> para obtener tan solo los mensajes, sin sus traducciones. Selecciona cualquier otra opción para obtener un fichero PO con los mensajes y sus traducciones al idioma seleccionado. Entonces pulsa el botón <tt>Exportar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>You can export the messages and their translations to TMX level 1 files. To do that just click the <tt>Export</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a +fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt> +gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Vous pouvez ajouter de nouveau messages et traductions en important un fichier de type "PO". Saisissez le nom de fichier, sélectionnez la langue de traduction et cliquez sur le bouton <tt>Import</tt> .</seg></tuv> +<tuv xml:lang="ja"> +<seg>æ–°ã—ã„メッセージã¨ç¿»è¨³ã‚’ PO ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦è¿½åŠ ã§ãã¾ã™ã€‚ファイルåを入力ã—ã€ç¿»è¨³ã®è¨€èªžã‚’é¸æŠžã—ã€<b>インãƒãƒ¼ãƒˆ</b> ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Puedes añadir nuevos mensajes y traducciones importando ficheros PO. Introduce el nombre del fichero, selecciona el idioma de las traducciones y pulsa el botón <tt>Importar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>You can export the messages and their translations to XLIFF files. Check any option to get a XLIFF file with the messages and their translations to the selected language. Then click the <tt>Export</tt> button.</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg>Új nyelvet és a forditás hozzáadásához inportáld be a PO fájlt. Ãrd be a +fájlnevet, válaszd ki a fordÃtás nyelvét, és kattints a <tt>Import</tt> +gombra.</seg></tuv> +<tuv xml:lang="fr"> +<seg>Vous pouvez exporter des messages et leurs traductions dans des fichiers de type "PO". Sélectionnez <tt>locale.pot</tt> pour exporter les messages sans traductions. Sélectionnez tout autre options pour générer un fichier "PO" avec ses messages et leurs traductions dans le langage sélectioné. Ensuite cliquez sur le bouton <tt>Export</tt>.</seg></tuv> +<tuv xml:lang="ja"> +<seg>メッセージã¨ç¿»è¨³ã¯ã€PO ファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚翻訳をçœã„ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã ã‘ã‚’å¾—ã‚‹ã«ã¯ <tt>locale.pot</tt> ã®ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚é¸æŠžã—ãŸè¨€èªžã«å¯¾ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¨ç¿»è¨³ã‚’å¾—ã‚‹ã«ã¯ã€ãã®ã»ã‹ã®ã‚ªãƒ—ションをãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚ãã—ã¦ã€<b>エクスãƒãƒ¼ãƒˆ</b>ボタンをクリックã—ã¾ã™ã€‚</seg></tuv> +<tuv xml:lang="es"> +<seg>Puedes exportar los mensajes y sus traducciones a ficheros PO. Selecciona <tt>locale.pot</tt> para obtener tan solo los mensajes, sin sus traducciones. Selecciona cualquier otra opción para obtener un fichero PO con los mensajes y sus traducciones al idioma seleccionado. Entonces pulsa el botón <tt>Exportar</tt>.</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Your e-mail address</seg></tuv> +<tuv xml:lang="da"> +<seg>Din email adresse</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Votre adresse email</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã‚ãªãŸã®é›»åメールアドレス</seg></tuv> +<tuv xml:lang="es"> +<seg>Tu dirección de <em>email</em></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Your name</seg></tuv> +<tuv xml:lang="da"> +<seg>Dit navn</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg>Votre nom</seg></tuv> +<tuv xml:lang="ja"> +<seg>ã‚ãªãŸã®åå‰</seg></tuv> +<tuv xml:lang="es"> +<seg>Tu nombre</seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Zhuang</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>Zulu</seg></tuv> +<tuv xml:lang="da"> +<seg></seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +<tu> +<tuv xml:lang="en"> +<seg>label</seg></tuv> +<tuv xml:lang="da"> +<seg>etiket</seg></tuv> +<tuv xml:lang="bg"> +<seg></seg></tuv> +<tuv xml:lang="ro"> +<seg></seg></tuv> +<tuv xml:lang="de"> +<seg></seg></tuv> +<tuv xml:lang="ca"> +<seg></seg></tuv> +<tuv xml:lang="eu"> +<seg></seg></tuv> +<tuv xml:lang="hu"> +<seg></seg></tuv> +<tuv xml:lang="fr"> +<seg></seg></tuv> +<tuv xml:lang="ja"> +<seg></seg></tuv> +<tuv xml:lang="es"> +<seg></seg></tuv> +<tuv xml:lang="el"> +<seg></seg></tuv> +<tuv xml:lang="sv"> +<seg></seg></tuv> +<tuv xml:lang="no"> +<seg></seg></tuv> +<tuv xml:lang="it"> +<seg></seg></tuv> +<tuv xml:lang="nl"> +<seg></seg></tuv> +<tuv xml:lang="pl"> +<seg></seg></tuv> +<tuv xml:lang="fi"> +<seg></seg></tuv> +<tuv xml:lang="lt"> +<seg></seg></tuv> +<tuv xml:lang="lv"> +<seg></seg></tuv> +<tuv xml:lang="sl"> +<seg></seg></tuv> +<tuv xml:lang="tr"> +<seg></seg></tuv> +<tuv xml:lang="pt"> +<seg></seg></tuv> +<tuv xml:lang="sk"> +<seg></seg></tuv> +<tuv xml:lang="et"> +<seg></seg></tuv> +<tuv xml:lang="cs"> +<seg></seg></tuv> +<tuv xml:lang="is"> +<seg></seg></tuv> +</tu> + +</body> +</tmx> \ No newline at end of file diff --git a/product/Localizer/locale/pt.po b/product/Localizer/locale/pt.po new file mode 100644 index 0000000000000000000000000000000000000000..4ea056566812e7c7591c433c0f16cc138542e6bd --- /dev/null +++ b/product/Localizer/locale/pt.po @@ -0,0 +1,1109 @@ +msgid "" +msgstr "" +"Project-Id-Version: 0.3.0\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2005-01-24 09:00 BRST\n" +"Last-Translator: Rodrigo Dias Arruda Senra <rsenra@acm.org>\n" +"Language-Team: ??\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" +"Um objeto Local Content provê armazenamento para propriedades multi-" +"linguÃsticas (ou não multi-linguÃsticas). Também facilita na separação entre " +"lógica e apresentação de conteúdo." + +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" +"Um objeto Localizer permite a customização da polÃtica de negociação de " +"lÃngua. Ele permite o uso de cookies, do path ou qualquer outro critério " +"para selecionar a lÃngua preferida do usuário." + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" +"Um Local Folder é uma solução genérica para gerenciar qualquer tipo de " +"objeto multi-linguÃstico, arquivos, imagens, scripts, etc." + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" +"Um Catálogo de Mensagens armazena mensagens e suas traduções em diferentes " +"lÃnguas. Ele provê o método <tt>gettext</tt> para obter a tradução correta " +"da respectiva mensagem. Catálogos de Mensagens são úteis para traduzir " +"componentes da interface como rótulos, botões, etc." + +#: utils.py:96 +msgid "Abkhazian" +msgstr "Afegão" + +msgid "Add" +msgstr "Adicionar" + +msgid "Add Local Content" +msgstr "Adicionar Local Content" + +msgid "Add Local Folder" +msgstr "Adiciona Local Folder" + +msgid "Add Localizer" +msgstr "Adiciona Localizer" + +msgid "Add Message Catalog" +msgstr "Adicionar Catálogo de Mensagens" + +msgid "Add language" +msgstr "Adicionar LÃngua" + +#: utils.py:97 +msgid "Afar" +msgstr "Afar" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "Afrikaans" + +#: utils.py:99 +msgid "Albanian" +msgstr "Albanês" + +#: utils.py:100 +msgid "Amharic" +msgstr "Aramaico" + +#: utils.py:101 +msgid "Arabic" +msgstr "Ãrabe" + +#: utils.py:102 +msgid "Armenian" +msgstr "Armeno" + +#: utils.py:103 +msgid "Assamese" +msgstr "Assamês" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "Atributos" + +#: utils.py:104 +msgid "Aymara" +msgstr "Aymarês" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "Azerbaijanês" + +#: utils.py:106 +msgid "Bashkir" +msgstr "Bashkir" + +#: utils.py:107 +msgid "Basque" +msgstr "Basco" + +#: utils.py:116 +msgid "Belarusian" +msgstr "Bilorusso" + +#: utils.py:108 +msgid "Bengali" +msgstr "Bengalês" + +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" +"Além do tÃtulo, o cabeçalho de uma arquivo PO armazena mais informação, o " +"nome, o endereço de e-mail do útlimo tradutor, o endereço de e-mail do grupo " +"de tradução e a codificação (charset). O formulário abaixo permite modificar " +"tasi informações para cada uma das lÃnguas." + +#: utils.py:109 +msgid "Bhutani" +msgstr "Bhutanês" + +#: utils.py:110 +msgid "Bihari" +msgstr "Bihari" + +#: utils.py:111 +msgid "Bislama" +msgstr "Bislama" + +#: utils.py:112 +msgid "Bosnian" +msgstr "Bosniano" + +#: utils.py:113 +msgid "Breton" +msgstr "Bretão" + +#, fuzzy +msgid "Browse the messages" +msgstr "Não existem mensagens" + +#: utils.py:114 +msgid "Bulgarian" +msgstr "Búlgaro" + +#: utils.py:115 +msgid "Burmese" +msgstr "Brumanês" + +#: utils.py:117 +msgid "Cambodian" +msgstr "Cambojano" + +#: utils.py:118 +msgid "Catalan" +msgstr "Catalão" + +msgid "Change" +msgstr "Alterar" + +msgid "Charset" +msgstr "Charset" + +#: utils.py:119 +msgid "Chinese" +msgstr "Chinês" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "Chinês/China" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "Chinês/Taiwan" + +msgid "Clear catalog and import all messages" +msgstr "Limpar este catálogo e re-importar todas as mensagens." + +#: utils.py:88 +msgid "Contents" +msgstr "Conteúdo" + +#: utils.py:122 +msgid "Cornish" +msgstr "Cornês" + +#: utils.py:123 +msgid "Corsican" +msgstr "Corso" + +#: utils.py:124 +msgid "Croatian" +msgstr "Croata" + +#: utils.py:125 +msgid "Czech" +msgstr "Tcheco" + +#: utils.py:126 +msgid "Danish" +msgstr "Noroeguês" + +msgid "Default language" +msgstr "LÃngua default" + +msgid "Delete" +msgstr "Apagar" + +msgid "Delete languages" +msgstr "Apagar lÃnguas" + +#: utils.py:127 +msgid "Dutch" +msgstr "Holandês" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "Holandês/Bélgica" + +#: utils.py:129 +msgid "English" +msgstr "Inglês" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "Inglês/Reino Unido" + +#: utils.py:131 +msgid "English/United States" +msgstr "Inglês/Estados Unidos" + +#: utils.py:132 +msgid "Esperanto" +msgstr "Esperanto" + +#: utils.py:133 +msgid "Estonian" +msgstr "Estonês" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "Exportar" + +msgid "Export messages to PO file" +msgstr "Exportar mensagens para arquivos no formato PO" + +msgid "Export messages to TMX file" +msgstr "Exportar mensagens para arquivo no formato TMX" + +msgid "Export messages to XLIFF file" +msgstr "Exportar mensagens para arquivo no formato XLIFF" + +#: utils.py:134 +msgid "Faroese" +msgstr "Faroês" + +#: utils.py:135 +msgid "Fiji" +msgstr "Fiji" + +msgid "File" +msgstr "Arquivo" + +msgid "File / Language" +msgstr "Arquivo / LÃngua" + +msgid "Filter" +msgstr "Filtro" + +#: utils.py:94 +msgid "Find" +msgstr "Buscar" + +#: utils.py:136 +msgid "Finnish" +msgstr "Finlandês" + +#: utils.py:137 +msgid "French" +msgstr "Francês" + +#: utils.py:138 +msgid "French/Belgium" +msgstr "Francês/Bélgica" + +#: utils.py:139 +msgid "French/Canada" +msgstr "Francês/Canadá" + +#: utils.py:140 +msgid "French/France" +msgstr "Francês/França" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "Francês/Suiça" + +#: utils.py:142 +msgid "Frisian" +msgstr "Frisian" + +#: utils.py:143 +msgid "Galician" +msgstr "Espanhol/GalÃcia" + +#: utils.py:144 +msgid "Georgian" +msgstr "Georgia" + +#: utils.py:145 +msgid "German" +msgstr "Alemão" + +#: utils.py:146 +msgid "German/Austria" +msgstr "Alemão/Aústria" + +#: utils.py:147 +msgid "German/Germany" +msgstr "Alemão/Alemanha" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "Alemão/Suiça" + +#: utils.py:149 +msgid "Greek" +msgstr "Grego" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "Groelandês" + +#: utils.py:151 +msgid "Guarani" +msgstr "Guarani" + +#: utils.py:152 +msgid "Gujarati" +msgstr "Gujarati" + +#: utils.py:153 +msgid "Hausa" +msgstr "Hausa" + +#: utils.py:154 +msgid "Hebrew" +msgstr "hebreu" + +#: utils.py:155 +msgid "Hindi" +msgstr "Hindu" + +msgid "How much" +msgstr "Quanto" + +#: utils.py:156 +msgid "Hungarian" +msgstr "Húngaro" + +#: utils.py:157 +msgid "Icelandic" +msgstr "Islândia" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Importar" + +msgid "Import all messages" +msgstr "Importar todas as mensagens" + +msgid "Import only translations for messages that exist already" +msgstr "Importar apenas traduções para mensagens pré-existentes" + +msgid "Import translations from PO file" +msgstr "Importar traduções de arquivo no formato PO" + +msgid "Import translations from TMX file" +msgstr "Importar traduções a partir de arquivo no formato TMX" + +msgid "Import translations from XLIFF file" +msgstr "Importar traduções de arquivo no formato XLIFF" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "Importadas %d mensagens e %d observações" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "Importadas %d mensagens e %d observações para %s" + +#: LocalContent.py:294 +#, fuzzy +msgid "Imported %d messages to %s" +msgstr "Importadas %d mensagens e %d observações" + +#: utils.py:158 +msgid "Indonesian" +msgstr "Indonésia" + +#: utils.py:159 +msgid "Interlingua" +msgstr "IntrerlÃngua" + +#: utils.py:160 +msgid "Interlingue" +msgstr "InterlÃngua" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "Inuktitut" + +#: utils.py:162 +msgid "Inupiak" +msgstr "Inupiak" + +#: utils.py:163 +msgid "Irish" +msgstr "Irlandês" + +#: utils.py:164 +msgid "Italian" +msgstr "Italiano" + +#: utils.py:165 +msgid "Japanese" +msgstr "Japonês" + +#: utils.py:166 +msgid "Javanese" +msgstr "Javanês" + +#: utils.py:167 +msgid "Kannada" +msgstr "Kannada" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "Kashmiri" + +#: utils.py:169 +msgid "Kazakh" +msgstr "Kazakh" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "Kinyarwandanês" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "Kirghiz" + +#: utils.py:172 +msgid "Kirundi" +msgstr "Kirundi" + +#: utils.py:173 +msgid "Korean" +msgstr "Coreano" + +#: utils.py:174 +msgid "Kurdish" +msgstr "Curdo" + +msgid "Language" +msgstr "LÃngua" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "LÃnguas" + +#: utils.py:175 +msgid "Laothian" +msgstr "Laoanês" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "Latvério" + +#: utils.py:178 +msgid "Lingala" +msgstr "Lingala" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "Lituano" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "Propriedades locais" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" +"Pastas Locale são úteis para armazenar objetos multi-linguÃsticos como " +"imagens e lógica especÃfica. Se usado, um objeto <tt>Localizer</tt> irá " +"adicionar a pasta locale correta à url transparentemente. Se você desejar " +"utilzar pastas locale selecione a caixa-de-seleção e clique no botão " +"<tt>Alterar</tt>." + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Adiciona Localizer" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "Luxemburguês" + +#: utils.py:181 +msgid "Macedonian" +msgstr "Macedônico" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "Maltês" + +#: utils.py:186 +msgid "Maori" +msgstr "Maori" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "Mensagens importadas" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "Mensagens" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +msgid "Messages imported" +msgstr "Mensagens importadas" + +#: utils.py:188 +msgid "Moldavian" +msgstr "Moldávio" + +#: utils.py:189 +msgid "Mongolian" +msgstr "Mongol" + +msgid "Name" +msgstr "Nome" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "Nepalês" + +#, fuzzy +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" +"<em>Não há linguas disponÃveis, favor adicioná-las através da aba <a " +"href='manage_languages'>LÃnguas</a> </em>" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "Saami do Norte" + +#: utils.py:193 +msgid "Norwegian" +msgstr "Noroeguês" + +msgid "Note" +msgstr "Observação" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "Apenas mensagens não-traduzidas" + +msgid "Original language" +msgstr "LÃngua Original" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Propriedade" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +msgid "Persian" +msgstr "Persa" + +#: utils.py:199 +msgid "Polish" +msgstr "Polonês" + +#: utils.py:200 +msgid "Portuguese" +msgstr "Português" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "Português/Brazil" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "Propriedades" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Resultados %d-%d em %d" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "Romaniano" + +#: utils.py:206 +msgid "Russian" +msgstr "Russo" + +#: utils.py:207 +msgid "Samoan" +msgstr "Samoano" + +#: utils.py:208 +msgid "Sangho" +msgstr "" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "Sânscrito" + +msgid "Save" +msgstr "Salvar" + +msgid "Save changes" +msgstr "Salvar alterações" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +msgid "Saved changes." +msgstr "Mudanças salvas." + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "Galês Escocês" + +#: utils.py:91 +msgid "Security" +msgstr "Segurança" + +#: utils.py:211 +msgid "Serbian" +msgstr "Sérvio" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "Servo-Croata" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +msgid "Sindhi" +msgstr "" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "Eslovaco" + +#: utils.py:220 +msgid "Slovenian" +msgstr "Esloveno" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "Espanhol" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "Espanhol/Argentina" + +#: utils.py:224 +msgid "Spanish/Colombia" +msgstr "Espanhol/Colômbia" + +#: utils.py:225 +msgid "Spanish/Mexico" +msgstr "Espanhol/México" + +#: utils.py:226 +msgid "Spanish/Spain" +msgstr "Espanhol/Espanha" + +#: utils.py:227 +msgid "Sundanese" +msgstr "Sudanês" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "Sueco" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +msgid "Tamil" +msgstr "" + +msgid "Target language" +msgstr "LÃngua alvo" + +msgid "Target languages" +msgstr "LÃnguas Alvo" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "Endereço de e-mail do Grupo" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"O Catálogo de Mensagens também suporta importar arquivos TMX. Você pode " +"adicionar mensagens e traduções importando um arquivo TMX em um TMX nÃvel 1. " +"Entre com o nome do arquivo e clique no botão <tt>Importar</tt>." + +msgid "There are no attributes" +msgstr "Não existem atributos definidos" + +msgid "There are no languages" +msgstr "Não existem lÃnguas definidas" + +msgid "There are no messages." +msgstr "Não existem mensagens" + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "Este objeto não precisa de atualização." + +#: utils.py:236 +msgid "Tibetan" +msgstr "Tibetano" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "TÃtulo" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" +"Para acrescentar uma lÃngua selecione a mesma e clique no botão " +"<tt>Adicionar</tt>" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" +"Para adicionar um atributo introduza o id e clique no botão <tt> Adicionar</" +"tt>." + +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" +"Para alterar a lÃngua default selecione a mesma e clique no botão " +"<tt>Adicionar</tt>" + +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" +"Para remover uma lÃngua selecione a mesma e clique no botão <tt>Remover</tt>." + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" +"Para remover um atributo selecione o mesmo e clique no botão <tt>Remover</" +"tt>." + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +msgid "Translate properties" +msgstr "Traduzir propriedades" + +#, fuzzy +msgid "Translations" +msgstr "Traduzir propriedades" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "Turco" + +#: utils.py:241 +msgid "Turkmen" +msgstr "Turcomeno" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Tipo" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "Ucraniano" + +#: utils.py:92 +msgid "Undo" +msgstr "Desfazer" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "Atualizar" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "Use pastas locale" + +#: utils.py:246 +msgid "Uzbek" +msgstr "Uzbeco" + +msgid "Value" +msgstr "Valor" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "Vietnamita" + +#: utils.py:89 +msgid "View" +msgstr "Visualizar" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "Escocês" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" +"Com este formulário você pode alterar o tÃtulo do Catálogo de Mensagens. O " +"tÃtulo também é usado como valor do campo <tt>Project-Id-version</tt> no " +"cabeçalho dos arquivos PO, os quais são gerados quando o catálogo é " +"exportado." + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"Você pode adicionar novas mensagens e traduções importando um arquivo PO. " +"Forneça o nome do arquivo, selecione a lÃngua a traduzir e clique no botão " +"<tt>Importar</tt>." + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Você pode exportar as mensagens e suas traduções para arquivos PO. Selecione " +"<tt>locale.pot</tt> para exportar apenas mensagens, sem as respectivas " +"traduções. Selecione qualquer outra opção para obter um arquivo PO com " +"mensagens e traduções na lÃngua selecionada. Finalmente clique no botão " +"<tt>Exportar</tt>." + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"Você pode exportar as mensagens e suas traduções para arquivos TMX nÃvel 1. " +"Para fazê-lo basta clicar no botão <tt>Exportar</tt>." + +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Você pode exportar as mensagens e suas traduções para arquivos PO. Selecione " +"<tt>locale.pot</tt> para exportar apenas mensagens, sem as respectivas " +"traduções. Selecione qualquer outra opção para obter um arquivo PO com " +"mensagens e traduções na lÃngua selecionada. Finalmente clique no botão " +"<tt>Exportar</tt>." + +msgid "Your e-mail address" +msgstr "Seu endereço de e-mail" + +msgid "Your name" +msgstr "Seu nome" + +#: utils.py:254 +msgid "Zhuang" +msgstr "" + +#: utils.py:255 +msgid "Zulu" +msgstr "Zulu" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "Este <tt>%s</tt> objeto precisa de atualização" + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "Este objeto <tt>Localizer</tt> precisa ser atualizado." + +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "Este objeto <tt>Localizer</tt> não precisa ser atualizado." + +#~ msgid "Import/Export" +#~ msgstr "Importar/Exportar" + +#~ msgid "TMX" +#~ msgstr "TMX" + +#~ msgid "label" +#~ msgstr "rótulo" + +#~ msgid "Default" +#~ msgstr "Default" + +#~ msgid "" +#~ "To delete a language check it and click the <tt>Delete</tt> button. To " +#~ "change the default language select it and click the <tt>Change</tt> " +#~ "button." +#~ msgstr "" +#~ "Para remover uma lÃngua selecione a mesma e clique no botão <tt>Remover</" +#~ "tt>. Para alterar a lÃngua default selecione a mesma e clique no botão " +#~ "<tt>Alterar</tt>." + +#~ msgid "Show this language" +#~ msgstr "Mostrar esta lÃngua" + +#~ msgid "" +#~ "To add a new property enter its name, select its type and click the " +#~ "<tt>Add</tt> button." +#~ msgstr "" +#~ "Para adicionar uma nova propriedade preencha o respectivo nome, selecione " +#~ "seu tipo e clique no botão <tt>Adicionar</tt>" diff --git a/product/Localizer/locale/ru.po b/product/Localizer/locale/ru.po new file mode 100644 index 0000000000000000000000000000000000000000..cb7d02ad2c6a9cfa21c4a43ccfd103cf0bf58fbe --- /dev/null +++ b/product/Localizer/locale/ru.po @@ -0,0 +1,1145 @@ +# russian po file for Localizer. +# Copyright (C) 2003 Free Software Foundation, Inc. +# Alexey Lubimov <avl@altlinux.ru>, 2003. +msgid "" +msgstr "" +"Project-Id-Version: User messages\n" +"POT-Creation-Date: 2010-01-29 14:01+CET\n" +"PO-Revision-Date: 2003-07-31 09:07+MSK\n" +"Last-Translator: Lubimov Alexey <avl@altlinux.ru>\n" +"Language-Team: ru <RU@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: MessageCatalog.py:684 +msgid "%s" +msgstr "" + +#: MessageCatalog.py:809 LocalContent.py:237 +msgid "1.1.x" +msgstr "" + +#: MessageCatalog.py:679 LocalContent.py:143 +msgid "1.x" +msgstr "" + +#, fuzzy +msgid "" +"A Local Content object provides a storage for multilingual (and non " +"multilingual) properties. It also helps you keep your content separated from " +"the logic and the presentation." +msgstr "" +"Local Content объект предоÑтавлÑет хранилище Ð´Ð»Ñ Ð¼Ð½Ð¾Ð³Ð¾Ñзычных (и не " +"многоÑзычных) ÑвойÑтв. Он также помогает хранить данные (content) отдельно " +"от логики (logic) и предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ (presentation)." + +#, fuzzy +msgid "" +"A Localizer object lets you customize the language negotiation policy. It " +"lets you use cookies, the path or any other criteria to select the user " +"preferred language." +msgstr "" +"Объект Localizer позволÑет адаптировать политику выбора Ñзыка. Он позволÑет " +"иÑпользовать куки (cookies), путь и любые другие критерии Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° " +"предпочитаемого пользователем Ñзыка." + +msgid "" +"A local folder is a generic solution to manage any kind of multingual " +"objects, files, images, scripts, etc.." +msgstr "" +"Ð›Ð¾ÐºÐ°Ð»ÑŒÐ½Ð°Ñ Ð¿Ð°Ð¿ÐºÐ°, Ñто универÑальный ÑпоÑоб ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð»ÑŽÐ±Ñ‹Ð¼Ð¸ аÑпектами " +"мультиÑзыковых объектов, файлов, изображений, Ñкриптов и Ñ‚.д...\r\n" +" " + +msgid "" +"A message catalog stores messages and its translations to different " +"languages. It provides the <tt>gettext</tt> method to get the right " +"translation for a given message. Message catalogs are useful to translate " +"the application interfaces (labels, buttons, etc..)." +msgstr "" +"Каталог Ñообщений хранит ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ их переводы на разные Ñзыки Он " +"предоÑтавлÑет <tt>gettext</tt> метод Ð´Ð»Ñ Ð´Ð¾Ñтупа к правильному переводу " +"требуемого ÑообщениÑ. Каталог Ñообщений иÑпользуетÑÑ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð° интерфейÑа " +"приложений (метки, кнопки, итд..)." + +#: utils.py:96 +msgid "Abkhazian" +msgstr "" + +msgid "Add" +msgstr "Добавить" + +msgid "Add Local Content" +msgstr "Добавить локальное Ñодержимое" + +msgid "Add Local Folder" +msgstr "Добавить локальную папку" + +msgid "Add Localizer" +msgstr "Добавить Localizer" + +msgid "Add Message Catalog" +msgstr "Добавить каталог Ñообщений" + +#, fuzzy +msgid "Add language" +msgstr "Язык" + +#: utils.py:97 +msgid "Afar" +msgstr "" + +#: utils.py:98 +msgid "Afrikaans" +msgstr "" + +#: utils.py:99 +msgid "Albanian" +msgstr "" + +#: utils.py:100 +msgid "Amharic" +msgstr "" + +#: utils.py:101 +msgid "Arabic" +msgstr "" + +#: utils.py:102 +msgid "Armenian" +msgstr "" + +#: utils.py:103 +#, fuzzy +msgid "Assamese" +msgstr "СообщениÑ" + +#: LocalFolder.py:62 +msgid "Attributes" +msgstr "Ðтрибуты" + +#: utils.py:104 +msgid "Aymara" +msgstr "" + +#: utils.py:105 +msgid "Azerbaijani" +msgstr "" + +#: utils.py:106 +msgid "Bashkir" +msgstr "" + +#: utils.py:107 +msgid "Basque" +msgstr "Язык баÑков" + +#: utils.py:116 +msgid "Belarusian" +msgstr "" + +#: utils.py:108 +msgid "Bengali" +msgstr "" + +#, fuzzy +msgid "" +"Besides the title the header of a PO file stores more information; the name " +"and the email address of the last translator, the email address of the " +"translation team and the charset. The forms below let you modify this " +"information for each language." +msgstr "" +"Кроме заглавиÑ, заголовок PO файла Ñодержит дополнительную информацию, Ð¸Ð¼Ñ Ð¸ " +"e-mail поÑледнего переводчика, e-mail команды переводчиков и кодировку. " +"Форму внизу позволÑет изменить Ñту информацию Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ñзыка." + +#: utils.py:109 +msgid "Bhutani" +msgstr "" + +#: utils.py:110 +msgid "Bihari" +msgstr "" + +#: utils.py:111 +msgid "Bislama" +msgstr "" + +#: utils.py:112 +msgid "Bosnian" +msgstr "" + +#: utils.py:113 +msgid "Breton" +msgstr "" + +#, fuzzy +msgid "Browse the messages" +msgstr "Сообщений нет" + +#: utils.py:114 +#, fuzzy +msgid "Bulgarian" +msgstr "ВенгерÑкий" + +#: utils.py:115 +msgid "Burmese" +msgstr "" + +#: utils.py:117 +msgid "Cambodian" +msgstr "" + +#: utils.py:118 +msgid "Catalan" +msgstr "КаталонÑкое наречие" + +msgid "Change" +msgstr "Изменить" + +msgid "Charset" +msgstr "Кодировка" + +#: utils.py:119 +#, fuzzy +msgid "Chinese" +msgstr "Изменить" + +#: utils.py:120 +msgid "Chinese/China" +msgstr "" + +#: utils.py:121 +msgid "Chinese/Taiwan" +msgstr "" + +msgid "Clear catalog and import all messages" +msgstr "" + +#: utils.py:88 +msgid "Contents" +msgstr "Содержимое" + +#: utils.py:122 +msgid "Cornish" +msgstr "" + +#: utils.py:123 +msgid "Corsican" +msgstr "" + +#: utils.py:124 +#, fuzzy +msgid "Croatian" +msgstr "КаталонÑкое наречие" + +#: utils.py:125 +msgid "Czech" +msgstr "" + +#: utils.py:126 +#, fuzzy +msgid "Danish" +msgstr "ИÑпанÑкий" + +#, fuzzy +msgid "Default language" +msgstr "Скрыть Ñтот Ñзык" + +msgid "Delete" +msgstr "Удалить" + +#, fuzzy +msgid "Delete languages" +msgstr "Языки не доÑтупны" + +#: utils.py:127 +msgid "Dutch" +msgstr "" + +#: utils.py:128 +msgid "Dutch/Belgium" +msgstr "" + +#: utils.py:129 +msgid "English" +msgstr "" + +#: utils.py:130 +msgid "English/United Kingdom" +msgstr "" + +#: utils.py:131 +msgid "English/United States" +msgstr "" + +#: utils.py:132 +msgid "Esperanto" +msgstr "" + +#: utils.py:133 +msgid "Estonian" +msgstr "" + +#: MessageCatalog.py:308 LocalContent.py:81 +msgid "Export" +msgstr "ÐкÑпорт" + +msgid "Export messages to PO file" +msgstr "" + +msgid "Export messages to TMX file" +msgstr "" + +msgid "Export messages to XLIFF file" +msgstr "" + +#: utils.py:134 +msgid "Faroese" +msgstr "" + +#: utils.py:135 +msgid "Fiji" +msgstr "" + +msgid "File" +msgstr "Файл" + +msgid "File / Language" +msgstr "Файл / Ñзык" + +msgid "Filter" +msgstr "Фильтр" + +#: utils.py:94 +msgid "Find" +msgstr "ПоиÑк" + +#: utils.py:136 +msgid "Finnish" +msgstr "" + +#: utils.py:137 +msgid "French" +msgstr "ФранцузÑкий" + +#: utils.py:138 +#, fuzzy +msgid "French/Belgium" +msgstr "ФранцузÑкий" + +#: utils.py:139 +#, fuzzy +msgid "French/Canada" +msgstr "ФранцузÑкий" + +#: utils.py:140 +#, fuzzy +msgid "French/France" +msgstr "ФранцузÑкий" + +#: utils.py:141 +msgid "French/Switzerland" +msgstr "" + +#: utils.py:142 +msgid "Frisian" +msgstr "" + +#: utils.py:143 +msgid "Galician" +msgstr "" + +#: utils.py:144 +#, fuzzy +msgid "Georgian" +msgstr "Ðемецкий" + +#: utils.py:145 +msgid "German" +msgstr "Ðемецкий" + +#: utils.py:146 +#, fuzzy +msgid "German/Austria" +msgstr "Ðемецкий" + +#: utils.py:147 +#, fuzzy +msgid "German/Germany" +msgstr "Ðемецкий" + +#: utils.py:148 +msgid "German/Switzerland" +msgstr "" + +#: utils.py:149 +msgid "Greek" +msgstr "" + +#: utils.py:150 +msgid "Greenlandic" +msgstr "" + +#: utils.py:151 +#, fuzzy +msgid "Guarani" +msgstr "ВенгерÑкий" + +#: utils.py:152 +msgid "Gujarati" +msgstr "" + +#: utils.py:153 +msgid "Hausa" +msgstr "" + +#: utils.py:154 +msgid "Hebrew" +msgstr "" + +#: utils.py:155 +#, fuzzy +msgid "Hindi" +msgstr "ПоиÑк" + +msgid "How much" +msgstr "" + +#: utils.py:156 +msgid "Hungarian" +msgstr "ВенгерÑкий" + +#: utils.py:157 +msgid "Icelandic" +msgstr "" + +msgid "Id" +msgstr "Id" + +#: MessageCatalog.py:306 LocalContent.py:79 +msgid "Import" +msgstr "Импорт" + +msgid "Import all messages" +msgstr "" + +msgid "Import only translations for messages that exist already" +msgstr "" + +msgid "Import translations from PO file" +msgstr "" + +msgid "Import translations from TMX file" +msgstr "" + +msgid "Import translations from XLIFF file" +msgstr "" + +#: MessageCatalog.py:761 +msgid "Imported %d messages and %d notes" +msgstr "" + +#: MessageCatalog.py:880 +msgid "Imported %d messages and %d notes to %s" +msgstr "" + +#: LocalContent.py:294 +msgid "Imported %d messages to %s" +msgstr "" + +#: utils.py:158 +msgid "Indonesian" +msgstr "" + +#: utils.py:159 +msgid "Interlingua" +msgstr "" + +#: utils.py:160 +msgid "Interlingue" +msgstr "" + +#: utils.py:161 +msgid "Inuktitut" +msgstr "" + +#: utils.py:162 +msgid "Inupiak" +msgstr "" + +#: utils.py:163 +msgid "Irish" +msgstr "" + +#: utils.py:164 +#, fuzzy +msgid "Italian" +msgstr "КаталонÑкое наречие" + +#: utils.py:165 +msgid "Japanese" +msgstr "ЯпонÑкий" + +#: utils.py:166 +#, fuzzy +msgid "Javanese" +msgstr "ЯпонÑкий" + +#: utils.py:167 +msgid "Kannada" +msgstr "" + +#: utils.py:168 +msgid "Kashmiri" +msgstr "" + +#: utils.py:169 +msgid "Kazakh" +msgstr "" + +#: utils.py:170 +msgid "Kinyarwanda" +msgstr "" + +#: utils.py:171 +msgid "Kirghiz" +msgstr "" + +#: utils.py:172 +msgid "Kirundi" +msgstr "" + +#: utils.py:173 +msgid "Korean" +msgstr "" + +#: utils.py:174 +msgid "Kurdish" +msgstr "" + +msgid "Language" +msgstr "Язык" + +#: LanguageManager.py:157 +msgid "Languages" +msgstr "Языки" + +#: utils.py:175 +msgid "Laothian" +msgstr "" + +#: utils.py:176 +msgid "Latin" +msgstr "" + +#: utils.py:177 +msgid "Latvian" +msgstr "" + +#: utils.py:178 +msgid "Lingala" +msgstr "" + +#: utils.py:179 +msgid "Lithuanian" +msgstr "" + +#: LocalPropertyManager.py:67 +msgid "Local properties" +msgstr "Локальные ÑвойÑтва" + +msgid "" +"Locale folders are useful to store special multilingual objects like images " +"and specific logic. If used the <tt>Localizer</tt> object will transparently " +"add the right locale folder to the url. If you want to use locale folders " +"check the checkbox, otherwise uncheck it, then click the <tt>Change</tt> " +"button." +msgstr "" +"Папки локалей иÑпользуютÑÑ Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¼Ð½Ð¾Ð³Ð¾Ñзычных объектов, таких как " +"Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ Ñпецифичной логики. При иÑпользовании объект- <tt>Localizer</" +"tt> прозрачно добавит папку локалей в url. При желании иÑпользовать папки " +"локалей, необходимо отметить Ñ‡ÐµÐºÐ±Ð¾ÐºÑ Ð¸Ð»Ð¸ в ином Ñлучае ÑнÑÑ‚ÑŒ Ñ Ð½ÐµÐ³Ð¾ отметку " +"и щелкнуть кнопку <tt>Изменить</tt>." + +#: MessageCatalog.py:678 MessageCatalog.py:808 LocalContent.py:142 +#: LocalContent.py:236 +#, fuzzy +msgid "Localizer" +msgstr "Добавить Localizer" + +#: utils.py:180 +msgid "Luxembourgish" +msgstr "" + +#: utils.py:181 +msgid "Macedonian" +msgstr "" + +#: utils.py:182 +msgid "Malagasy" +msgstr "" + +#: utils.py:183 +msgid "Malay" +msgstr "" + +#: utils.py:184 +msgid "Malayalam" +msgstr "" + +#: utils.py:185 +msgid "Maltese" +msgstr "" + +#: utils.py:186 +msgid "Maori" +msgstr "" + +#: utils.py:187 +msgid "Marathi" +msgstr "" + +#, fuzzy +msgid "Message to translate" +msgstr "СообщениÑ" + +#: MessageCatalog.py:303 +msgid "Messages" +msgstr "СообщениÑ" + +#: MessageCatalog.py:763 MessageCatalog.py:879 LocalContent.py:293 +#, fuzzy +msgid "Messages imported" +msgstr "СообщениÑ" + +#: utils.py:188 +msgid "Moldavian" +msgstr "" + +#: utils.py:189 +msgid "Mongolian" +msgstr "" + +msgid "Name" +msgstr "ИмÑ" + +#: utils.py:190 +msgid "Nauru" +msgstr "" + +#: utils.py:191 +msgid "Nepali" +msgstr "" + +msgid "" +"No languages available, please add them using the <a " +"href='manage_languages'>Languages</a> tab" +msgstr "" + +#: utils.py:192 +msgid "Northern Saami" +msgstr "" + +#: utils.py:193 +msgid "Norwegian" +msgstr "" + +msgid "Note" +msgstr "" + +#: utils.py:194 +msgid "Occitan" +msgstr "" + +msgid "Only untranslated messages" +msgstr "Только непереведнные ÑообщениÑ" + +#, fuzzy +msgid "Original language" +msgstr "Скрыть Ñтот Ñзык" + +#: utils.py:195 +msgid "Oriya" +msgstr "" + +#: utils.py:196 +msgid "Oromo" +msgstr "" + +#: utils.py:93 +msgid "Ownership" +msgstr "Владелец" + +#: utils.py:197 +msgid "Pashto" +msgstr "" + +#: utils.py:198 +#, fuzzy +msgid "Persian" +msgstr "Ðемецкий" + +#: utils.py:199 +msgid "Polish" +msgstr "" + +#: utils.py:200 +#, fuzzy +msgid "Portuguese" +msgstr "СвойÑтва" + +#: utils.py:201 +msgid "Portuguese/Brazil" +msgstr "" + +#: utils.py:90 MessageCatalog.py:305 +msgid "Properties" +msgstr "СвойÑтва" + +#: utils.py:202 +msgid "Punjabi" +msgstr "" + +#: utils.py:203 +msgid "Quechua" +msgstr "" + +msgid "Results %d-%d of %d" +msgstr "Результаты %d-%d из %d" + +#: utils.py:204 +msgid "Rhaeto-Romance" +msgstr "" + +#: utils.py:205 +msgid "Romanian" +msgstr "" + +#: utils.py:206 +msgid "Russian" +msgstr "" + +#: utils.py:207 +msgid "Samoan" +msgstr "" + +#: utils.py:208 +#, fuzzy +msgid "Sangho" +msgstr "ИÑпанÑкий" + +#: utils.py:209 +msgid "Sanskrit" +msgstr "" + +msgid "Save" +msgstr "Сохранить" + +msgid "Save changes" +msgstr "Сохранить изменениÑ" + +#: MessageCatalog.py:439 MessageCatalog.py:454 +msgid "Saved changes." +msgstr "Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñохранены." + +#: utils.py:210 +msgid "Scots Gaelic" +msgstr "" + +#: utils.py:91 +msgid "Security" +msgstr "БезопаÑноÑÑ‚ÑŒ" + +#: utils.py:211 +#, fuzzy +msgid "Serbian" +msgstr "Ðемецкий" + +#: utils.py:212 +msgid "Serbo-Croatian" +msgstr "" + +#: utils.py:213 +msgid "Sesotho" +msgstr "" + +#: utils.py:214 +msgid "Setswana" +msgstr "" + +#: utils.py:215 +msgid "Shona" +msgstr "" + +#: utils.py:216 +#, fuzzy +msgid "Sindhi" +msgstr "ПоиÑк" + +#: utils.py:217 +msgid "Sinhalese" +msgstr "" + +#: utils.py:218 +msgid "Siswati" +msgstr "" + +#: utils.py:219 +msgid "Slovak" +msgstr "" + +#: utils.py:220 +msgid "Slovenian" +msgstr "" + +#: utils.py:221 +msgid "Somali" +msgstr "" + +#: utils.py:222 +msgid "Spanish" +msgstr "ИÑпанÑкий" + +#: utils.py:223 +msgid "Spanish/Argentina" +msgstr "" + +#: utils.py:224 +#, fuzzy +msgid "Spanish/Colombia" +msgstr "ИÑпанÑкий" + +#: utils.py:225 +#, fuzzy +msgid "Spanish/Mexico" +msgstr "ИÑпанÑкий" + +#: utils.py:226 +#, fuzzy +msgid "Spanish/Spain" +msgstr "ИÑпанÑкий" + +#: utils.py:227 +msgid "Sundanese" +msgstr "" + +#: utils.py:228 +msgid "Swahili" +msgstr "" + +#: utils.py:229 +msgid "Swedish" +msgstr "" + +#: utils.py:230 +msgid "Tagalog" +msgstr "" + +#: utils.py:231 +msgid "Tajik" +msgstr "" + +#: utils.py:232 +#, fuzzy +msgid "Tamil" +msgstr "Заголовок" + +#, fuzzy +msgid "Target language" +msgstr "Языки не доÑтупны" + +#, fuzzy +msgid "Target languages" +msgstr "Языки не доÑтупны" + +#: utils.py:233 +msgid "Tatar" +msgstr "" + +msgid "Team e-mail address" +msgstr "Групповой e-mail адреÑ" + +#: utils.py:234 +msgid "Telugu" +msgstr "" + +#: utils.py:235 +msgid "Thai" +msgstr "" + +msgid "" +"The message catalog also supports importing TMX files. You can add new " +"messages and translations importing a TMX file in TMX level 1. Enter the " +"filename and click the <tt>Import</tt> button." +msgstr "" +"Каталог Ñообщений также поддерживает импорт TMX файлов. Ð’Ñ‹ можете добавить " +"новый ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ переводы, Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð¸Ñ€ÑƒÑ TMX файл в TMX уровень 1. Введите Ð¸Ð¼Ñ " +"файла и щелкните по кнопке <tt>Импорт</tt> " + +#, fuzzy +msgid "There are no attributes" +msgstr "Ðтрибутов нет" + +#, fuzzy +msgid "There are no languages" +msgstr "Языки не доÑтупны" + +#, fuzzy +msgid "There are no messages." +msgstr "Сообщений нет" + +msgid "This object is up-to-date." +msgstr "" + +#, fuzzy +msgid "This object must be upgraded." +msgstr "Ðтот объект не требует обновлениÑ" + +#: utils.py:236 +msgid "Tibetan" +msgstr "" + +#: utils.py:237 +msgid "Tigrinya" +msgstr "" + +msgid "Title" +msgstr "Заголовок" + +msgid "To add a language select it and click the <tt>Add</tt> button." +msgstr "" +"Чтобы добавить Ñзык, его надо выбрать и щелкнуть по кнопке <tt>Добавить</tt>" + +msgid "To add an attribute introduce its id and click the <tt>Add</tt> button." +msgstr "" +"Чтобы добавить атрибуты, надо ввеÑти их id и щелкнуть по кнопке " +"<tt>Добавить</tt>" + +#, fuzzy +msgid "" +"To change the default language select it and click the <tt>Change</tt> " +"button." +msgstr "" +"Чтобы добавить Ñзык, его надо выбрать и щелкнуть по кнопке <tt>Добавить</tt>" + +#, fuzzy +msgid "To delete a language check it and click the <tt>Delete</tt> button." +msgstr "" +"Чтобы удалить атрибут, надо отметить его и щелкнуть кнопку <tt>Удалить</tt>" + +msgid "To delete an attribute check it and click the <tt>Delete</tt> button." +msgstr "" +"Чтобы удалить атрибут, надо отметить его и щелкнуть кнопку <tt>Удалить</tt>" + +#: utils.py:238 +msgid "Tonga" +msgstr "" + +#: LocalPropertyManager.py:70 +#, fuzzy +msgid "Translate properties" +msgstr "СвойÑтв нет" + +#, fuzzy +msgid "Translations" +msgstr "СвойÑтв нет" + +#: utils.py:239 +msgid "Tsonga" +msgstr "" + +#: utils.py:240 +msgid "Turkish" +msgstr "" + +#: utils.py:241 +msgid "Turkmen" +msgstr "" + +#: utils.py:242 +msgid "Twi" +msgstr "" + +msgid "Type" +msgstr "Тип" + +#: utils.py:243 +msgid "Uighur" +msgstr "" + +#: utils.py:244 +msgid "Ukrainian" +msgstr "" + +#: utils.py:92 +msgid "Undo" +msgstr "Отмена" + +#: LanguageManager.py:168 +msgid "Upgrade" +msgstr "Обновление" + +#: utils.py:245 +msgid "Urdu" +msgstr "" + +msgid "Use locale folders" +msgstr "ИÑпользовать локальные папки" + +#: utils.py:246 +msgid "Uzbek" +msgstr "" + +msgid "Value" +msgstr "" + +#: utils.py:247 +msgid "Vietnamese" +msgstr "" + +#: utils.py:89 +msgid "View" +msgstr "Вид" + +#: utils.py:248 +msgid "Volapuk" +msgstr "" + +#: utils.py:249 +msgid "Welsh" +msgstr "" + +msgid "" +"With this form you can change the title of the message catalog. The title " +"also is used as the value of the <tt>Project-Id-Version</tt> field in the " +"header of the PO files, which are generated when the message catalog is " +"exported." +msgstr "" +"Ð’ Ñтой форме можно изменить заголовок каталога Ñообщений. Заголовок также " +"иÑпользуетÑÑ, как значение <tt>Project-Id-Version</tt> в шапке PO файлов, " +"которые генерируютÑÑ Ð¿Ñ€Ð¸ ÑкÑпорте Ñтого каталога Ñообщений." + +#: utils.py:250 +msgid "Wolof" +msgstr "" + +#: utils.py:251 +msgid "Xhosa" +msgstr "" + +#: utils.py:252 +msgid "Yiddish" +msgstr "" + +#: utils.py:253 +msgid "Yoruba" +msgstr "" + +msgid "" +"You can add new messages and translations importing a PO file. Enter the " +"filename, select the language of the translations and click the <tt>Import</" +"tt> button." +msgstr "" +"Можно добавить новые ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ переводы Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð¸Ñ€ÑƒÑ PO файл. Ð”Ð»Ñ Ñтого " +"введите Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°, выберите Ñзык переводов и щелкните по кнопке <tt>Импорт</" +"tt>" + +msgid "" +"You can export the messages and their translations to PO files. Check " +"<tt>locale.pot</tt> to get only the messages, without their translations. " +"Check any other option to get a PO file with the messages and their " +"translations to the selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Можно ÑкÑпортировать ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ их переводы в PO файлы. ÐžÐ¿Ñ†Ð¸Ñ <tt>locale." +"pot</tt> позволÑет получить только ÑообщениÑ, без их перевода. Ð”Ð»Ñ " +"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ PO файла Ñ ÑообщениÑми и их переводами, необходимо ототметить " +"нужные опции и атем щелкнуть по кнопке <tt>ÐкÑпорт</tt>" + +msgid "" +"You can export the messages and their translations to TMX level 1 files. To " +"do that just click the <tt>Export</tt> button." +msgstr "" +"Можно ÑкÑпортировать ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ их перевод в TMX уровень 1 файлы. Ð”Ð»Ñ Ñтого " +"проÑто щелкните по кнопке <tt>ÐкÑпорт</tt>" + +#, fuzzy +msgid "" +"You can export the messages and their translations to XLIFF files. Check any " +"option to get a XLIFF file with the messages and their translations to the " +"selected language. Then click the <tt>Export</tt> button." +msgstr "" +"Можно ÑкÑпортировать ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ их переводы в PO файлы. ÐžÐ¿Ñ†Ð¸Ñ <tt>locale." +"pot</tt> позволÑет получить только ÑообщениÑ, без их перевода. Ð”Ð»Ñ " +"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ PO файла Ñ ÑообщениÑми и их переводами, необходимо ототметить " +"нужные опции и атем щелкнуть по кнопке <tt>ÐкÑпорт</tt>" + +msgid "Your e-mail address" +msgstr "Ваш e-mail адреÑ" + +msgid "Your name" +msgstr "Ваше имÑ" + +#: utils.py:254 +#, fuzzy +msgid "Zhuang" +msgstr "Изменить" + +#: utils.py:255 +msgid "Zulu" +msgstr "" + +#: MessageCatalog.py:681 LocalContent.py:145 +msgid "paragraph" +msgstr "" + +#: MessageCatalog.py:680 MessageCatalog.py:810 LocalContent.py:144 +#: LocalContent.py:238 +msgid "plaintext" +msgstr "" + +#: LocalContent.py:148 +msgid "utf-8" +msgstr "" + +#~ msgid "This <tt>%s</tt> object needs to be upgraded" +#~ msgstr "Ðтот <tt>%s</tt> объект требует обновлениÑ" + +#~ msgid "This <tt>Localizer</tt> object needs to be upgraded." +#~ msgstr "Ðтот объект <tt>Localizer</tt> требует обновлениÑ" + +#, fuzzy +#~ msgid "This <tt>Localizer</tt> object doesn't need to be upgraded." +#~ msgstr "Ðтот объект <tt>Localizer</tt> не требует обновлениÑ" + +#~ msgid "Import/Export" +#~ msgstr "Импорт/ÐкÑпорт" + +#~ msgid "TMX" +#~ msgstr "TMX" + +#~ msgid "label" +#~ msgstr "Метка" + +#~ msgid "Default" +#~ msgstr "По умолчанию" + +#~ msgid "Show this language" +#~ msgstr "Показать Ñтот Ñзык" + +#~ msgid "" +#~ "To add a new property enter its name, select its type and click the " +#~ "<tt>Add</tt> button." +#~ msgstr "" +#~ "Ð”Ð»Ñ Ð´Ð¾Ð±Ð°Ð²ÐºÐ¸ нового ÑвойÑтва, надо ввеÑти его Ð¸Ð¼Ñ Ð¸ щелкнуть по кнопке " +#~ "<tt>Добавить</tt>." + +#~ msgid "" +#~ "To delete a language check it and click the <tt>Delete</tt> button. To " +#~ "change the default language select it and click the <tt>Change</tt> " +#~ "button." +#~ msgstr "" +#~ "Ð”Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ñзыка, его надо отметить и щелкнуть <tt>Удалить</tt>. Ð”Ð»Ñ " +#~ "уÑтановки Ñзыка по умолчанию, его надо выбрать и щелкнуть кнопку " +#~ "<tt>Изменить</tt>" diff --git a/product/Localizer/logo.gif b/product/Localizer/logo.gif new file mode 100644 index 0000000000000000000000000000000000000000..f0cf62745c8cd4f1f033e8895ba74ab100526315 Binary files /dev/null and b/product/Localizer/logo.gif differ diff --git a/product/Localizer/logo300.jpg b/product/Localizer/logo300.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83c76785c0ec05c587a863437643201f6fd213b2 Binary files /dev/null and b/product/Localizer/logo300.jpg differ diff --git a/product/Localizer/logoSmall300.jpg b/product/Localizer/logoSmall300.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6490ed88a7ab3a8ebb29c55983da01281d932 Binary files /dev/null and b/product/Localizer/logoSmall300.jpg differ diff --git a/product/Localizer/patches.py b/product/Localizer/patches.py new file mode 100644 index 0000000000000000000000000000000000000000..4762fe1a8df4981b84b230eb4f9cd90edb2a6cd0 --- /dev/null +++ b/product/Localizer/patches.py @@ -0,0 +1,149 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2006 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +This is a hotfix, it dynamically applies several patches to Zope. +""" + +# Import from the Standard Library +import logging +import os +from thread import allocate_lock, get_ident + +# Import from itools +from .itools.i18n import AcceptLanguageType + +# Import from Zope +import Globals +from ZPublisher import Publish +from ZPublisher.HTTPRequest import HTTPRequest + + +# Flag +patch = False +Z_DEBUG_MODE = os.environ.get('Z_DEBUG_MODE') == '1' + + +logger = logging.getLogger('Localizer') + + +# PATCH 1: Global Request +# +# The original purpose was to get the request object from places where the +# acquisition was disabled (within the __of__ method for example). It was +# inspired by the Tim McLaughlin's GlobalGetRequest proposal, see +# http://dev.zope.org/Wikis/DevSite/Proposals/GlobalGetRequest +# +# Currently it keeps a Context instance, which wraps the request object, +# but also other things, like the user's session, as it is required by +# the ikaaro CMS. +# +# The request objects are stored in a dictionary in the Publish module, +# whose keys are the thread id. +# +# Also, we keep the get_request method in the Globals module for backwards +# compatibility (with TranslationService for example). + +_requests = {} +_requests_lock = allocate_lock() + + +def get_request(): + """Get a request object""" + return _requests.get(get_ident(), None) + + +def new_publish(request, module_name, after_list, debug=0, + zope_publish=Publish.publish): + # Get the process id + ident = get_ident() + + # Add the request object to the global dictionnary + _requests_lock.acquire() + try: + _requests[ident] = request + finally: + _requests_lock.release() + + # Call the old publish + try: + # Publish + x = zope_publish(request, module_name, after_list, debug) + finally: + # Remove the request object. + # When conflicts occur the "publish" method is called again, + # recursively. In this situation the "_requests dictionary would + # be cleaned in the innermost call, hence outer calls find the + # request does not exist anymore. For this reason we check first + # wether the request is there or not. + if ident in _requests: + _requests_lock.acquire() + try: + del _requests[ident] + finally: + _requests_lock.release() + + return x + + +if patch is False: + logger.info('Install "Globals.get_request".') + + # Apply the patch + Publish.publish = new_publish + + # First import (it's not a refresh operation). + # We need to apply the patches. + patch = True + + # Add to Globals for backwards compatibility + Globals.get_request = get_request + + + +# PATCH 2: Accept +# +# Adds the variable AcceptLanguage to the REQUEST. It provides a higher +# level interface than HTTP_ACCEPT_LANGUAGE. + +# Apply the patch +def new_processInputs(self): + HTTPRequest.old_processInputs(self) + + request = self + + # Set the AcceptLanguage variable + # Initialize with the browser configuration + accept_language = request['HTTP_ACCEPT_LANGUAGE'] + # Patches for user agents that don't support correctly the protocol + user_agent = request['HTTP_USER_AGENT'] + if user_agent.startswith('Mozilla/4') and user_agent.find('MSIE') == -1: + # Netscape 4.x + q = 1.0 + langs = [] + for lang in [ x.strip() for x in accept_language.split(',') ]: + langs.append('%s;q=%f' % (lang, q)) + q = q/2 + accept_language = ','.join(langs) + + accept_language = AcceptLanguageType.decode(accept_language) + self.other['AcceptLanguage'] = accept_language + + +if patch: + HTTPRequest.old_processInputs = HTTPRequest.processInputs + HTTPRequest.processInputs = new_processInputs + diff --git a/product/Localizer/ui/LM_languages.dtml b/product/Localizer/ui/LM_languages.dtml new file mode 100644 index 0000000000000000000000000000000000000000..ff06ac09f06041ca1d59c1558ac1573b9c6409fd --- /dev/null +++ b/product/Localizer/ui/LM_languages.dtml @@ -0,0 +1,93 @@ +<dtml-var manage_page_header> +<dtml-var manage_tabs> + +<fieldset><legend><dtml-var "gettext('Add language')"></legend> +<p class="form-help"> + <dtml-gettext> + To add a language select it and click the <tt>Add</tt> button. + </dtml-gettext> +</p> + +<dtml-let languages=get_languages> + <form action="manage_addLanguage" method="post"> + <table> + <tr> + <td> + <select name="language"> + <dtml-in get_all_languages mapping sort=name> + <dtml-unless "code in languages"> + <option value="<dtml-var code>"> + <dtml-var "gettext(name)"> [&dtml-code;]</option> + </dtml-unless> + </dtml-in> + </select> + <input type="submit" value=" <dtml-var "gettext('Add')"> "> + </td> + </tr> + </table> + </form> +</dtml-let> +</fieldset> + + +<fieldset><legend><dtml-var "gettext('Delete languages')"></legend> +<dtml-let languages=get_languages_mapping> + <dtml-if languages> + <p class="form-help"> + <dtml-gettext> + To delete a language check it and click the <tt>Delete</tt> button. + </dtml-gettext> + </p> + + <form action="<dtml-var URL1>" method="post"> + <table> + <tr> + <th></th> + <th align="left"></th> + </tr> + <dtml-in languages mapping sort=name> + <tr> + <td><input type="checkbox" name="languages:tuple" + value="<dtml-var code>"></td> + <td><dtml-var "gettext(name)"> [<dtml-var code>]</td> + </tr> + </dtml-in> + <tr> + <td></td> + <td> + <input type="submit" name="manage_delLanguages:method" + value=" <dtml-var "gettext('Delete')"> "> + </td> + </tr> + </table> + </form> + <dtml-else> + <em><dtml-gettext>There are no languages</dtml-gettext></em> + </dtml-if> +</dtml-let> +</fieldset> + +<fieldset><legend><dtml-var "gettext('Default language')"></legend> + <form action="<dtml-var URL1>" method="post"> + <table> + <tr> + <td> + <dtml-gettext> + To change the default language select it and click the + <tt>Change</tt> button. + </dtml-gettext> + </td> + </tr> + <tr> + <td> + <input type="text" name="language" value="<dtml-var get_default_language>"> + <input type="submit" name="manage_changeDefaultLang:method" + value=" <dtml-var "gettext('Change')"> "> + </td> + </tr> + </table> + </form> +</fieldset> + + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/LM_upgrade.dtml b/product/Localizer/ui/LM_upgrade.dtml new file mode 100644 index 0000000000000000000000000000000000000000..f19c54f5c7d03314c54aefcd1a956b07457f729e --- /dev/null +++ b/product/Localizer/ui/LM_upgrade.dtml @@ -0,0 +1,27 @@ +<dtml-var manage_page_header> +<dtml-var manage_tabs> + + +<dtml-if need_upgrade> + <p class="form-help"> + <dtml-gettext> + This object must be upgraded. + </dtml-gettext> + </p> + + <blockquote> + <form action="manage_upgrade" action="post"> + <input type="submit" value=" <dtml-var "gettext('Upgrade')"> "> + </form> + </blockquote> + +<dtml-else> + <p class="form-help"> + <dtml-gettext> + This object is up-to-date. + </dtml-gettext> + </p> +</dtml-if> + + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/Localizer_add.dtml b/product/Localizer/ui/Localizer_add.dtml new file mode 100644 index 0000000000000000000000000000000000000000..62e8ce3bf5e8242a7c844f9bfc4749634be6ee26 --- /dev/null +++ b/product/Localizer/ui/Localizer_add.dtml @@ -0,0 +1,42 @@ +<dtml-unless management_page_charset> + <dtml-call "REQUEST.set('management_page_charset', 'UTF-8')"> +</dtml-unless> +<dtml-var manage_page_header> + +<dtml-var "manage_form_title(this(), _, form_title=gettext('Add Localizer'), + help_product='Localizer', + help_topic='Localizer_add.stx')"> + + +<p class="form-help"> + <dtml-gettext> + A Localizer object lets you customize the language negotiation policy. + It lets you use cookies, the path or any other criteria to select the + user preferred language. + </dtml-gettext> +</p> + + +<form action="manage_addLocalizer" method="post"> + <table> + <tr> + <th align="right"><dtml-var "gettext('Id')"></th> + <td>Localizer</td> + </tr> + <tr> + <th align="right"><em><dtml-var "gettext('Title')"></em></th> + <td><input type="text" name="title"></td> + </tr> + <tr> + <th align="right"><dtml-var "gettext('Languages')"></th> + <td><input type="text" name="languages:tokens" value="en"></td> + </tr> + <tr> + <td></td> + <td><input type="submit" value=" <dtml-var "gettext('Add')"> "></td> + </tr> + </table> +</form> + + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/Localizer_hook.dtml b/product/Localizer/ui/Localizer_hook.dtml new file mode 100644 index 0000000000000000000000000000000000000000..6bfd10a3cb47720f960fdc9cb544b5b7802786f9 --- /dev/null +++ b/product/Localizer/ui/Localizer_hook.dtml @@ -0,0 +1,35 @@ +<dtml-var manage_page_header> +<dtml-var manage_tabs> + +<p class="form-help"> + <dtml-gettext> + Locale folders are useful to store special multilingual objects like + images and specific logic. If used the <tt>Localizer</tt> object will + transparently add the right locale folder to the url. If you want to + use locale folders check the checkbox, otherwise uncheck it, then click + the <tt>Change</tt> button. + </dtml-gettext> +</p> + + +<blockquote> +<form action="manage_hook" method="post"> + <table> + <tr> + <td> + <input type="checkbox" name="hook"<dtml-if hooked> checked</dtml-if>> + </td> + <td> + <dtml-var "gettext('Use locale folders')"> + </td> + </tr> + <tr> + <td></td> + <td><input type="submit" value=" <dtml-var "gettext('Change')"> "></td> + </tr> + </table> +</form> +</blockquote> + + +<dtml-var manage_page_footer> \ No newline at end of file diff --git a/product/Localizer/ui/MC_Export_form.dtml b/product/Localizer/ui/MC_Export_form.dtml new file mode 100644 index 0000000000000000000000000000000000000000..3abf0944299429da159d062ff4b5abf148d32e7b --- /dev/null +++ b/product/Localizer/ui/MC_Export_form.dtml @@ -0,0 +1,40 @@ +<dtml-var manage_page_header> +<dtml-var manage_tabs> + +<fieldset><legend><dtml-var "gettext('Export messages to PO file')"></legend> +<p class="form-help"> + <dtml-gettext> + You can export the messages and their translations to PO files. Check + <tt>locale.pot</tt> to get only the messages, without their translations. + Check any other option to get a PO file with the messages and their + translations to the selected language. Then click the <tt>Export</tt> + button. + </dtml-gettext> +</p> + +<form action="manage_export" method="post"> + <table> + <tr> + <th align="left"> + <dtml-var "gettext('File / Language')"> + </th> + </tr> + <tr> + <td valign="top"> + <select name="x"> + <option value="locale.pot" selected>locale.pot</option> + <dtml-in get_languages_mapping mapping sort=name> + <option value="<dtml-var code>"><dtml-var code>.po / <dtml-var "gettext(name)"></option> + </dtml-in> + </select> + </td> + </tr> + <tr> + <td><input type="submit" value=" <dtml-var "gettext('Export')"> "></td> + <td></td> + </tr> + </table> +</form> +</fieldset> + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/MC_Import_form.dtml b/product/Localizer/ui/MC_Import_form.dtml new file mode 100644 index 0000000000000000000000000000000000000000..45785624e2c1cec832b9ff2a7e52daf931103529 --- /dev/null +++ b/product/Localizer/ui/MC_Import_form.dtml @@ -0,0 +1,38 @@ +<dtml-var manage_page_header> +<dtml-var manage_tabs> + +<fieldset><legend><dtml-var "gettext('Import translations from PO file')"></legend> +<p class="form-help"> + <dtml-gettext> + You can add new messages and translations importing a PO file. Enter the + filename, select the language of the translations and click the + <tt>Import</tt> button. + </dtml-gettext> +</p> + + +<form action="manage_import" method="post" enctype="multipart/form-data"> + <table> + <tr> + <th align="right"><dtml-var "gettext('File')"></th> + <td><input type="file" name="file"></td> + </tr> + <tr> + <th align="right" valign="top"><dtml-var "gettext('Language')"></th> + <td> + <select name="lang"> + <dtml-in get_languages_mapping mapping sort=name> + <option value="<dtml-var code>" <dtml-if sequence-start>selected</dtml-if>><dtml-var "gettext(name)"> [&dtml-code;]</option> + </dtml-in> + </select> + </td> + </tr> + <tr> + <th></th> + <td><input type="submit" value=" <dtml-var "gettext('Import')"> "></td> + </tr> + </table> +</form> +</fieldset> + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/MC_add.dtml b/product/Localizer/ui/MC_add.dtml new file mode 100644 index 0000000000000000000000000000000000000000..c79716bf1bfa12d4fc75e892bad491a0db81a5d3 --- /dev/null +++ b/product/Localizer/ui/MC_add.dtml @@ -0,0 +1,49 @@ +<dtml-unless management_page_charset> + <dtml-call "REQUEST.set('management_page_charset', 'UTF-8')"> +</dtml-unless> +<dtml-var manage_page_header> + +<dtml-var "manage_form_title(this(), _, + form_title=gettext('Add Message Catalog'), + help_product='Localizer', + help_topic='MC_add.stx')"> + + +<p class="form-help"> + <dtml-gettext> + A message catalog stores messages and its translations to different + languages. It provides the <tt>gettext</tt> method to get the right + translation for a given message. Message catalogs are useful to + translate the application interfaces (labels, buttons, etc..). + </dtml-gettext> +</p> + + + +<form action="manage_addMessageCatalog" method="post"> + <table> + <tr> + <th align="right"><dtml-var "gettext('Id')"></th> + <td><input type="text" name="id"></td> + </tr> + <tr> + <th align="right"><em><dtml-var "gettext('Title')"></em></th> + <td><input type="text" name="title"></td> + </tr> + <tr> + <th align="right"><dtml-var "gettext('Original language')"></th> + <td><input type="text" size="10" name="sourcelang" value="en"></td> + </tr> + <tr> + <th align="right"><dtml-var "gettext('Target languages')"></th> + <td><input type="text" name="languages:tokens" value=""></td> + </tr> + <tr> + <th></th> + <td><input type="submit" value=" <dtml-var "gettext('Add')"> "></td> + </tr> + </table> +</form> + + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/MC_messages.dtml b/product/Localizer/ui/MC_messages.dtml new file mode 100644 index 0000000000000000000000000000000000000000..6dab11b5acccb95af70e5d7357b26c293c3bf973 --- /dev/null +++ b/product/Localizer/ui/MC_messages.dtml @@ -0,0 +1,112 @@ +<dtml-var manage_page_header> +<dtml-let manage_tabs_message="get_tabs_message(REQUEST)"> + <dtml-var manage_tabs> +</dtml-let> +<dtml-with "get_namespace(REQUEST)" mapping> + +<dtml-if languages> +<!-- OK --> +<table width="100%"> + <tr> + <td valign="top"> + <dtml-if n_messages> + <form action="<dtml-var URL1>" method="post"> + <input type="hidden" name="batch_start:int" + value="<dtml-var batch_start>"> + <input type="hidden" name="batch_size:int" + value="<dtml-var batch_size>"> + <input type="hidden" name="regex" value="<dtml-var regex>"> + <input type="hidden" name="lang" value="<dtml-var language>"> + <input type="hidden" name="empty" value="<dtml-var empty>"> + <input type="hidden" name="message" + value="<dtml-var message_encoded html_quote>"> + <fieldset> + <legend><dtml-var "gettext('Message to translate')"></legend> + <div style="font-family: monospace"><dtml-var message html_quote + ></div> + </fieldset> + <fieldset> + <legend><dtml-var "gettext('Note')"></legend> + <input name="note:utf8:ustring" type="text" value="&dtml-note;" + size="55"> + </fieldset> + <fieldset> + <legend><dtml-var "gettext('Translations')"></legend> + <dtml-in languages mapping sort=name> + <a href="<dtml-var url>"><dtml-if "code == language"><span style="font-weight: bold"><dtml-var name></span><dtml-else><dtml-var name></dtml-if></a> + + </dtml-in> + <input type="hidden" name="language" value="<dtml-var language>"> + <br> + <textarea name="translation:utf8:ustring" cols="65" rows="10" + wrap="off"><dtml-var translation html_quote></textarea> + </fieldset> + <br> + <input type="submit" name="manage_editMessage:method" + value=" <dtml-var "gettext('Save')"> "> + <input type="submit" name="manage_delMessage:method" + value=" <dtml-var "gettext('Delete')"> "> + </form> + <dtml-else> + <dtml-gettext>There are no messages.</dtml-gettext> + <br> + <dtml-in languages mapping> + <a href="<dtml-var url>"><dtml-if "code == language"><span style="font-weight: bold"><dtml-var name></span><dtml-else><dtml-var name></dtml-if></a> + </dtml-in> + </dtml-if> + </td> + <td valign="top" width="300"> + <fieldset> + <legend><dtml-var "gettext('Browse the messages')"></legend> + <form action="manage_messages" action="get"> + <input type="hidden" name="batch_start:int" + value="<dtml-var batch_start>"> + <input type="hidden" name="batch_size:int" + value="<dtml-var batch_size>"> + <input type="hidden" name="lang" value="<dtml-var language>"> + <input type="hidden" name="empty" value=""> + <input type="checkbox" name="empty" <dtml-if empty>checked</dtml-if>> + <dtml-var "gettext('Only untranslated messages')"> + <br> + <input type="text" name="regex" value="<dtml-var regex>"> + <input type="submit" value=" <dtml-var "gettext('Filter')"> "> + </form> + <dtml-if n_messages> + <br> + <dtml-var "gettext('Results %d-%d of %d') % (batch_start+1, (batch_start+batch_size < n_messages and batch_start+batch_size) or n_messages, n_messages)"> + <dtml-if "batch_start > 0"> + <a href="<dtml-var previous>"><<</a> + </dtml-if> + <dtml-if "batch_start + batch_size < n_messages"> + <a href="<dtml-var next>">>></a> + </dtml-if> + <br> + <table width="100%" cellspacing="0"> + <dtml-in messages mapping> + <tr> + <td<dtml-if current> bgcolor="yellow"<dtml-elif sequence-odd> bgcolor="#DDDDDD"</dtml-if>> + <small> + <a href="<dtml-var url>"><dtml-var message size="40" html_quote></a> + </small> + </td> + </tr> + </dtml-in> + </table> + <dtml-else> + <dtml-gettext>There are no messages.</dtml-gettext> + </dtml-if> + </fieldset> + </td> + </tr> +</table> + +<!-- EMPTY --> +<dtml-else> +<p> +<dtml-gettext>No languages available, please add them using the + <a href='manage_languages'>Languages</a> tab</dtml-gettext> +</p> +</dtml-if> + +</dtml-with> +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/MC_properties.dtml b/product/Localizer/ui/MC_properties.dtml new file mode 100644 index 0000000000000000000000000000000000000000..6d978e29ee88a34b294643327ae47ac1e050d72f --- /dev/null +++ b/product/Localizer/ui/MC_properties.dtml @@ -0,0 +1,105 @@ +<dtml-var manage_page_header> +<dtml-var manage_tabs> + + +<p class="form-help"> + <dtml-gettext> + With this form you can change the title of the message catalog. The + title also is used as the value of the <tt>Project-Id-Version</tt> + field in the header of the PO files, which are generated when the + message catalog is exported. + </dtml-gettext> +</p> + + +<blockquote> +<form action="manage_properties" method="post"> + <table> + <tr> + <th align="right"> + <dtml-var "gettext('Title')"> + </th> + <td> + <input type="text" name="title" value="<dtml-var title>"> + </td> + </tr> + <tr> + <th></th> + <td> + <input type="submit" value=" <dtml-var "gettext('Save changes')"> "> + </td> + </tr> + </table> +</form> +</blockquote> + + +<p class="form-help"> + <dtml-gettext> + Besides the title the header of a PO file stores more information; + the name and the email address of the last translator, the email + address of the translation team and the charset. The forms below + let you modify this information for each language. + </dtml-gettext> +</p> + +<blockquote> +<dtml-in get_languages_mapping mapping> + <h4> + <dtml-var "gettext(name)"> [<dtml-var code>] + </h4> + <blockquote> + <form action="update_po_header" method="post"> + <input type="hidden" name="lang" value="<dtml-var code>"> + <dtml-with "get_po_header(code)" mapping> + <table> + <tr> + <td align="right"><dtml-var "gettext('Your name')"></td> + <td> + <input type="text" name="last_translator_name" size="30" + value="<dtml-var last_translator_name>"> + </td> + </tr> + <tr> + <td align="right"><dtml-var "gettext('Your e-mail address')"></td> + <td> + <input type="text" name="last_translator_email" size="30" + value="<dtml-var last_translator_email>"> + </td> + </tr> + <tr> + <td align="right"><dtml-var "gettext('Team e-mail address')"></td> + <td> + <input type="text" name="language_team" size="30" + value="<dtml-var language_team>"> + </td> + </tr> + <tr> + <td align="right"><dtml-var "gettext('Charset')"></td> + <td> + <select name="charset"> + <dtml-in get_charsets prefix=sequence> + <option value="<dtml-var sequence-item>" + <dtml-if "charset == sequence_item">selected</dtml-if>> + <dtml-var sequence-item> + </option> + </dtml-in> + </select> + </td> + </tr> + <tr> + <td></td> + <td> + <input type="submit" + value=" <dtml-var "gettext('Save changes')"> "> + </td> + </tr> + </table> + </dtml-with> + </form> + </blockquote> +</dtml-in> +</blockquote> + + +<dtml-var manage_page_footer> diff --git a/product/Localizer/ui/changeLanguageForm.dtml b/product/Localizer/ui/changeLanguageForm.dtml new file mode 100644 index 0000000000000000000000000000000000000000..845b73b44fed615337074bd0244423c729fc8a1c --- /dev/null +++ b/product/Localizer/ui/changeLanguageForm.dtml @@ -0,0 +1,13 @@ +<form id="change_language" action="<dtml-var absolute_url>/changeLanguage" + method="post"> + <div> + <select name="lang" onchange="javascript:document.getElementById('change_language').submit()"> + <dtml-in "context.get_languages_map()" mapping> + <option value="<dtml-var id>"<dtml-if selected> selected="selected"</dtml-if>><dtml-var "gettext(title, id)"></option> + </dtml-in> + </select> + <dtml-comment> + <input type="submit" value="<dtml-var "gettext('Change')">"> + </dtml-comment> + </div> +</form> \ No newline at end of file diff --git a/product/Localizer/ui/manage_page_header.dtml b/product/Localizer/ui/manage_page_header.dtml new file mode 100644 index 0000000000000000000000000000000000000000..3f53aa39eb979023a6a18307d5255fd4ee2d1af4 --- /dev/null +++ b/product/Localizer/ui/manage_page_header.dtml @@ -0,0 +1,26 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<dtml-call "RESPONSE.setHeader('Content-Type','text/html; charset=UTF-8')"> +<title><dtml-var title_or_id></title> +<dtml-let ag="REQUEST.get('HTTP_USER_AGENT', '')" + is_nav4="ag[:9] == 'Mozilla/4' and _.string.find(ag, 'MSIE') < 0" + use_css="REQUEST.get('zmi_use_css', '1')" + zmi_embedded_css="1"> + <dtml-if use_css> + <dtml-if is_nav4> + <style type="text/css"> + <!-- + <dtml-var manage_page_style.css> + --> + </style> + <dtml-else> + <link rel="stylesheet" type="text/css" + href="<dtml-var BASEPATH1>/manage_page_style.css"> + </dtml-if> + </dtml-if> +</dtml-let> + +</head> +<body bgcolor="#ffffff" link="#000099" alink="#000099" vlink="#000099"> diff --git a/product/Localizer/utils.py b/product/Localizer/utils.py new file mode 100644 index 0000000000000000000000000000000000000000..36d786e6d577a546619678d56e14fbf3b0aaa59c --- /dev/null +++ b/product/Localizer/utils.py @@ -0,0 +1,256 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2000-2003 Juan David Ibáñez Palomar <jdavid@itaapy.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Import from itools +from .itools.utils import get_abspath +from .itools.i18n import AcceptLanguageType, init_language_selector + +# Import from Zope +from App.Common import package_home + +# Import from Localizer +from patches import get_request + + +# Package home +ph = package_home(globals()) + +# Initializes a list with the charsets +charsets = [ x.strip() for x in open(ph + '/charsets.txt').readlines() ] + + + +########################################################################### +# Language negotiation +########################################################################### +def lang_negotiator(available_languages): + """Receives two ordered lists, the list of user preferred languages and + the list of available languages. Returns the first user pref. language + that is available, if none is available returns None. + """ + request = get_request() + if request is None: + return None + + try: + accept = request['AcceptLanguage'] + except KeyError: + return None + + return accept.select_language(available_languages) + + +init_language_selector(lang_negotiator) + + +########################################################################### +# Provide an API to access translations stored as MO files in the 'locale' +# directory. +########################################################################### +class DomainAware(object): + """ + This class is just a stub. We're not interested in filesystem-based + po-file translations. + + All subclasses should be either changed not to require DomainAware + or removed altogether. + """ + + def __init__(self, namespace): + mname = namespace['__name__'] + domain = get_abspath('locale', mname=mname) + self.class_domain = domain + + + def gettext(self, message, language=None): + return message + +_ = DomainAware(globals()).gettext + + +########################################################################### +# Defines strings that must be internationalized +########################################################################### + +# Tabs of the management screens +u'Contents' +u'View' +u'Properties' +u'Security' +u'Undo' +u'Ownership' +u'Find' +# Languages (FIXME This will be removed once we upgrade to itools 0.60) +u'Abkhazian' +u'Afar' +u'Afrikaans' +u'Albanian' +u'Amharic' +u'Arabic' +u'Armenian' +u'Assamese' +u'Aymara' +u'Azerbaijani' +u'Bashkir' +u'Basque' +u'Bengali' +u'Bhutani' +u'Bihari' +u'Bislama' +u'Bosnian' +u'Breton' +u'Bulgarian' +u'Burmese' +u'Belarusian' +u'Cambodian' +u'Catalan' +u'Chinese' +u'Chinese/China' +u'Chinese/Taiwan' +u'Cornish' +u'Corsican' +u'Croatian' +u'Czech' +u'Danish' +u'Dutch' +u'Dutch/Belgium' +u'English' +u'English/United Kingdom' +u'English/United States' +u'Esperanto' +u'Estonian' +u'Faroese' +u'Fiji' +u'Finnish' +u'French' +u'French/Belgium' +u'French/Canada' +u'French/France' +u'French/Switzerland' +u'Frisian' +u'Galician' +u'Georgian' +u'German' +u'German/Austria' +u'German/Germany' +u'German/Switzerland' +u'Greek' +u'Greenlandic' +u'Guarani' +u'Gujarati' +u'Hausa' +u'Hebrew' +u'Hindi' +u'Hungarian' +u'Icelandic' +u'Indonesian' +u'Interlingua' +u'Interlingue' +u'Inuktitut' +u'Inupiak' +u'Irish' +u'Italian' +u'Japanese' +u'Javanese' +u'Kannada' +u'Kashmiri' +u'Kazakh' +u'Kinyarwanda' +u'Kirghiz' +u'Kirundi' +u'Korean' +u'Kurdish' +u'Laothian' +u'Latin' +u'Latvian' +u'Lingala' +u'Lithuanian' +u'Luxembourgish' +u'Macedonian' +u'Malagasy' +u'Malay' +u'Malayalam' +u'Maltese' +u'Maori' +u'Marathi' +u'Moldavian' +u'Mongolian' +u'Nauru' +u'Nepali' +u'Northern Saami' +u'Norwegian' +u'Occitan' +u'Oriya' +u'Oromo' +u'Pashto' +u'Persian' +u'Polish' +u'Portuguese' +u'Portuguese/Brazil' +u'Punjabi' +u'Quechua' +u'Rhaeto-Romance' +u'Romanian' +u'Russian' +u'Samoan' +u'Sangho' +u'Sanskrit' +u'Scots Gaelic' +u'Serbian' +u'Serbo-Croatian' +u'Sesotho' +u'Setswana' +u'Shona' +u'Sindhi' +u'Sinhalese' +u'Siswati' +u'Slovak' +u'Slovenian' +u'Somali' +u'Spanish' +u'Spanish/Argentina' +u'Spanish/Colombia' +u'Spanish/Mexico' +u'Spanish/Spain' +u'Sundanese' +u'Swahili' +u'Swedish' +u'Tagalog' +u'Tajik' +u'Tamil' +u'Tatar' +u'Telugu' +u'Thai' +u'Tibetan' +u'Tigrinya' +u'Tonga' +u'Tsonga' +u'Turkish' +u'Turkmen' +u'Twi' +u'Uighur' +u'Ukrainian' +u'Urdu' +u'Uzbek' +u'Vietnamese' +u'Volapuk' +u'Welsh' +u'Wolof' +u'Xhosa' +u'Yiddish' +u'Yoruba' +u'Zhuang' +u'Zulu' diff --git a/product/Localizer/version.txt b/product/Localizer/version.txt new file mode 100644 index 0000000000000000000000000000000000000000..15092b26d13b26d99a3d8c296cc5701cc67b5814 --- /dev/null +++ b/product/Localizer/version.txt @@ -0,0 +1 @@ +Localizer 1.3b1 diff --git a/product/ZSQLCatalog/SQLCatalog.py b/product/ZSQLCatalog/SQLCatalog.py index 2d7a9540e54c29bb823b2116edfca47adefecee7..11460123948650fb940c49ade83adde9d0e87e33 100644 --- a/product/ZSQLCatalog/SQLCatalog.py +++ b/product/ZSQLCatalog/SQLCatalog.py @@ -2019,12 +2019,13 @@ class Catalog(Folder, return self.getColumnSearchKey(column)[0] is not None @profiler_decorator - def getColumnDefaultSearchKey(self, key): + def getColumnDefaultSearchKey(self, key, search_key_name=None): """ Return a SearchKey instance which would ultimately receive the value associated with given key. """ - search_key, related_key_definition = self.getColumnSearchKey(key) + search_key, related_key_definition = self.getColumnSearchKey(key, + search_key_name=search_key_name) if search_key is None: result = None else: @@ -2062,13 +2063,13 @@ class Catalog(Folder, return result @profiler_decorator - def _buildQueryFromAbstractSyntaxTreeNode(self, node, search_key): + def _buildQueryFromAbstractSyntaxTreeNode(self, node, search_key, wrap): if search_key.dequoteParsedText(): _dequote = dequote else: _dequote = lambda x: x if node.isLeaf(): - result = search_key.buildQuery(_dequote(node.getValue()), + result = search_key.buildQuery(wrap(_dequote(node.getValue())), comparison_operator=node.getComparisonOperator()) elif node.isColumn(): result = self.buildQueryFromAbstractSyntaxTreeNode(node.getSubNode(), node.getColumnName()) @@ -2079,9 +2080,9 @@ class Catalog(Folder, for subnode in node.getNodeList(): if subnode.isLeaf(): value_dict.setdefault(subnode.getComparisonOperator(), - []).append(_dequote(subnode.getValue())) + []).append(wrap(_dequote(subnode.getValue()))) else: - subquery = self._buildQueryFromAbstractSyntaxTreeNode(subnode, search_key) + subquery = self._buildQueryFromAbstractSyntaxTreeNode(subnode, search_key, wrap) if subquery is not None: append(subquery) logical_operator = node.getLogicalOperator() @@ -2100,7 +2101,7 @@ class Catalog(Folder, return result @profiler_decorator - def buildQueryFromAbstractSyntaxTreeNode(self, node, key): + def buildQueryFromAbstractSyntaxTreeNode(self, node, key, wrap=lambda x: x): """ Build a query from given Abstract Syntax Tree (AST) node by recursing in its childs. @@ -2129,7 +2130,8 @@ class Catalog(Folder, else: build_key = search_key.getSearchKey(sql_catalog=self, related_key_definition=related_key_definition) - result = self._buildQueryFromAbstractSyntaxTreeNode(node, build_key) + result = self._buildQueryFromAbstractSyntaxTreeNode(node, build_key, + wrap) if related_key_definition is not None: result = search_key.buildQuery(sql_catalog=self, related_key_definition=related_key_definition, @@ -2180,22 +2182,7 @@ class Catalog(Folder, empty_value_dict[key] = value else: script = self.getScriptableKeyScript(key) - if isinstance(value, _Query): - # Query instance: use as such, ignore key. - result = value - elif script is not None: - result = script(value) - elif isinstance(value, basestring): - # String: parse using key's default search key. - search_key = self.getColumnDefaultSearchKey(key) - if search_key is not None: - abstract_syntax_tree = self._parseSearchText(search_key, value) - if abstract_syntax_tree is None: - # Parsing failed, create a query from the bare string. - result = self.buildSingleQuery(key, value) - else: - result = self.buildQueryFromAbstractSyntaxTreeNode(abstract_syntax_tree, key) - elif isinstance(value, dict): + if isinstance(value, dict): # Dictionnary: might contain the search key to use. search_key_name = value.get('key') # Backward compatibility: former "Keyword" key is now named @@ -2206,7 +2193,37 @@ class Catalog(Folder, # as "RawKey" elif search_key_name == 'ExactMatch': search_key_name = value['key'] = 'RawKey' - result = self.buildSingleQuery(key, value, search_key_name) + if isinstance(value, _Query): + # Query instance: use as such, ignore key. + result = value + elif script is not None: + result = script(value) + elif isinstance(value, (basestring, dict)): + # String: parse using key's default search key. + raw_value = value + if isinstance(value, dict): + # De-wrap value for parsing, and re-wrap when building queries. + def wrap(x): + result = raw_value.copy() + result['query'] = x + return result + value = value['query'] + else: + wrap = lambda x: x + search_key_name = None + search_key = self.getColumnDefaultSearchKey(key, + search_key_name=search_key_name) + if search_key is not None: + if isinstance(value, basestring): + abstract_syntax_tree = self._parseSearchText(search_key, value) + else: + abstract_syntax_tree = None + if abstract_syntax_tree is None: + # Parsing failed, create a query from the bare string. + result = self.buildSingleQuery(key, raw_value, search_key_name) + else: + result = self.buildQueryFromAbstractSyntaxTreeNode( + abstract_syntax_tree, key, wrap) else: # Any other type, just create a query. (can be a DateTime, ...) result = self.buildSingleQuery(key, value) diff --git a/product/ZSQLCatalog/SearchKey/DateTimeKey.py b/product/ZSQLCatalog/SearchKey/DateTimeKey.py index 1ac5b428c285cc73bd22d7dc5536255144f8cf53..db3a6c253a87ff7c5c794630b6f81e509d1b9ad7 100644 --- a/product/ZSQLCatalog/SearchKey/DateTimeKey.py +++ b/product/ZSQLCatalog/SearchKey/DateTimeKey.py @@ -258,8 +258,11 @@ class DateTimeKey(SearchKey): query_list = [] extend = query_list.extend for comparison_operator, value_list in operator_value_dict.iteritems(): + reference_value = value_list[0] + if isinstance(reference_value, dict): + reference_value = reference_value['query'] try: - if parsed: + if isinstance(reference_value, basestring): subquery_list = operator_matcher_dict[comparison_operator]( self, group, column, value_list, comparison_operator, logical_operator) diff --git a/product/ZSQLCatalog/tests/testSQLCatalog.py b/product/ZSQLCatalog/tests/testSQLCatalog.py index 71c9f3dfc6e628eea69118e6f572c09f046076cf..085132c9e31e417c8f0c89c3d302aa4ad635a8f1 100644 --- a/product/ZSQLCatalog/tests/testSQLCatalog.py +++ b/product/ZSQLCatalog/tests/testSQLCatalog.py @@ -299,11 +299,16 @@ class TestSQLCatalog(ERP5TypeTestCase): def _testDateTimeKey(self, column, timezone): self.catalog(ReferenceQuery(ReferenceQuery(operator='>=', date=DateTime('2008/10/01 12:10:21')), operator='and'), - {column: {'query': '>2008/10/01 12:10:20', 'format': '%Y/%m/%d'}}) + {column: {'query': '>"2008/10/01 12:10:20"', 'format': '%Y/%m/%d', 'type': 'date'}}) + self.catalog(ReferenceQuery(ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2008/10/01 12:10:21')), + ReferenceQuery(operator='<', date=DateTime('2008/10/02 10:00:00')), + operator='and'), operator='and'), + {column: {'query': '>"2008/10/01 12:10:20" AND <"2008/10/02 10:00:00"', 'format': '%Y/%m/%d', 'type': 'date'}}) self.catalog(ReferenceQuery(ReferenceQuery(operator='>=', date=DateTime('2008/10/01 12:10:21 CEST')), operator='and'), - {column: {'query': '>2008/10/01 12:10:20 CEST', 'format': '%Y/%m/%d'}}) + {column: {'query': '>"2008/10/01 12:10:20 CEST"', 'format': '%Y/%m/%d', 'type': 'date'}}) self.catalog(ReferenceQuery(ReferenceQuery(operator='>=', date=DateTime('2008/10/01 12:10:21 CET')), operator='and'), - {column: {'query': '>2008/10/01 12:10:20 CET', 'format': '%Y/%m/%d'}}) + {column: {'query': '>"2008/10/01 12:10:20 CET"', 'format': '%Y/%m/%d', 'type': 'date'}}) self.catalog(ReferenceQuery(ReferenceQuery( ReferenceQuery(operator='>=', date=DateTime('2008/10/01 %s' % timezone)), ReferenceQuery(operator='<', date=DateTime('2008/10/02 %s' % timezone)) @@ -338,10 +343,31 @@ class TestSQLCatalog(ERP5TypeTestCase): ReferenceQuery(operator='<', date=DateTime('2008/10/02 %s' % timezone)) , operator='and'), operator='and'), {column: {'type': 'date', 'query': '01/10/2008 %s' % timezone, 'format': '%d/%m/%Y'}}) - self.catalog(ReferenceQuery(ReferenceQuery(operator='in', date=[DateTime('2008/01/10 %s' % timezone), DateTime('2008/01/09 %s' % timezone)]), operator='and'), + self.catalog(ReferenceQuery(ReferenceQuery( + ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2008/01/10 ' + timezone)), + ReferenceQuery(operator='<', date=DateTime('2008/01/11 ' + timezone)), + operator='and'), + ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2008/01/09 ' + timezone)), + ReferenceQuery(operator='<', date=DateTime('2008/01/10 ' + timezone)), + operator='and'), + operator='or'), operator='and'), {column: {'query': ['2008/01/10 %s' % timezone, '2008/01/09 %s' % timezone], 'operator': 'in'}}, check_search_text=False) - self.catalog(ReferenceQuery(ReferenceQuery(operator='>', date=DateTime('2008/01/10 %s' % timezone)), operator='and'), + self.catalog(ReferenceQuery(ReferenceQuery( + ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2008/01/10 ' + timezone)), + ReferenceQuery(operator='<', date=DateTime('2008/01/11 ' + timezone)), + operator='and'), + ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2008/01/09 ' + timezone)), + ReferenceQuery(operator='<', date=DateTime('2008/01/10 ' + timezone)), + operator='and'), + operator='or'), operator='and'), + {column: ['2008/01/10 %s' % timezone, '2008/01/09 %s' % timezone]}, + check_search_text=False) + self.catalog(ReferenceQuery(ReferenceQuery(operator='>=', date=DateTime('2008/01/11 %s' % timezone)), operator='and'), {column: {'query': '2008/01/10 %s' % timezone, 'range': 'nlt'}}, check_search_text=False) self.catalog(ReferenceQuery(ReferenceQuery( @@ -707,6 +733,38 @@ class TestSQLCatalog(ERP5TypeTestCase): operator='and'), {'default': 'AN OR ORB'}) + def _searchTextInDictQuery(self, column): + self.catalog(ReferenceQuery(ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2001/08/11')), + ReferenceQuery(operator='<', date=DateTime('2008/10/01')), + operator='and'), operator='and'), + { + column: {'query': '>2001/08/10 AND <2008/10/01', 'format': '%d/%m/%Y', 'type': 'date'}, + } + ) + # Ambiguous date representation with format: dmY + self.catalog(ReferenceQuery(ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2001/08/11')), + ReferenceQuery(operator='<', date=DateTime('2008/10/01')), + operator='and'), operator='and'), + { + column: {'query': '>10/08/2001 AND <01/10/2008', 'format': '%d/%m/%Y', 'type': 'date'}, + } + ) + # Ambiguous date representation with format: mdY, same input as above + self.catalog(ReferenceQuery(ReferenceQuery( + ReferenceQuery(operator='>=', date=DateTime('2001/10/09')), + ReferenceQuery(operator='<', date=DateTime('2008/01/10')), + operator='and'), operator='and'), + { + column: {'query': '>10/08/2001 AND <01/10/2008', 'format': '%m/%d/%Y', 'type': 'date'}, + } + ) + + def test_searchTextInDictQuery(self): + self._searchTextInDictQuery('date') + self._searchTextInDictQuery('related_date') + ##return catalog(title=Query(title='a', operator='not')) #return catalog(title={'query': 'a', 'operator': 'not'}) #return catalog(title={'query': ['a', 'b'], 'operator': 'not'})