跳转到主要内容

一套基于LinguaPlone简化Plone中处理多语言内容的工具

项目描述

项目描述

从版本1.4.0开始支持Plone 4 - Plone 3的错误修复版本将在1.3.x系列中继续。

概述

slc.linguatools提供了一套旨在使处理多语言网站(尤其是有几种不同语言的网站)生活更轻松的功能。

通常,您可能需要对一个对象的全部翻译执行相同的操作。在一个有十种、二十种或更多语言的网站上,手动执行此操作已不再是可行的选项。

功能

slc.linguatools为以下用例提供支持

  • 设置标题或描述

    在所有翻译中设置标题/描述;直接设置为输入的字符串,或基于i18n标签和域

  • 重命名对象

    将所有翻译重命名为输入的id(简称)

  • 设置边栏

    将标准对象的边栏设置传播到所有翻译,可以是所有槽位或您选择的槽位。按槽位阻塞/解除阻塞边栏继承。

  • 工作流

    发布/撤回等所有翻译

  • 目录重新索引

    重新索引对象的所有翻译

  • 删除器

    删除对象的所有翻译

  • 剪切和粘贴

    剪切对象的所有翻译并将其粘贴到另一个文件夹

  • 属性处理

    在所有翻译上设置具有id、类型和值的属性。例如:将字符串属性“layout”设置为“@@my-shiny-view”。删除现有属性。

  • 标记接口

    在对象的所有翻译上设置或删除标记接口。可设置和删除的接口由词汇表提供,与ZMI中“接口”标签上的接口相同。

  • 子类型(如果安装了p4a.subtyper)

    在所有翻译上设置子类型;删除子类型

  • 翻译对象

    为所有可用语言创建当前对象的翻译。可以选中应复制的AT属性。如果对象是集合,则所有标准也将复制。

  • 复制单个字段的值

    使用上述“翻译此对象”功能并选择“翻译存在”选项,可以将单个AT字段的值复制到所有翻译,例如日期、标签(主题)和集合标准。

要求和安装

此包仅在您安装了LinguaPlone的情况下才有效且有意义。

将“slc.linguatools”添加到构建配置的eggs和zcml部分。运行buildout并重新启动实例后,转到“站点设置”->“附加产品”,选择slc.linguatools并单击“安装”。

然后将在所有可翻译对象上出现一个名为“Lingua Tools”的选项卡。

在TinyMCE中启用对语言中性文件夹的支持

如果您拥有默认的语言文件夹结构(例如由LinguaPlone的@@language-setup-folders创建),您将有一个顶层文件夹,为网站中的每种语言提供INavigationRoot(例如/en, /de, /fr等)。在这种情况下,将无法拥有一个通用的语言无关的文件夹(例如用于图像),在TinyMCE中可以访问。有关详细信息,请参阅:http://plone.org/products/linguaplone/issues/275

在此同一票据中,Robert Niederreiter提供了TinyMCE的getBreadcrumbs方法的补丁。此补丁包含在slc.linguatools中,但默认情况下未激活。要激活它,您需要设置一个名为PATCH_TINYMCE_BREADCRUMBS的环境变量。

您可以通过将以下内容添加到您的zope.conf来完成此操作

<environment>
PATCH_TINYMCE_BREADCRUMBS true
</environment>

如果您使用Buildout,您不想直接编辑zope.conf,因为它将被下一次buildout覆盖。相反,编辑您的buildout配置,并在[instance]部分添加以下内容

zope-conf-additional =
  <environment>
    PATCH_TINYMCE_BREADCRUMBS true
  </environment>

版本

此工具的第一个版本具有手动编写的BrowserView。在2009年Plone-Conference sprint期间,编写了第二个版本,该版本使用z3c form。这是通过“Lingua Tools”标签默认可见的版本。原始版本仍然可以在@@linguatools-old下访问。

文档

请参阅test/lttest.txt以获取一个指导您了解基本功能的doctest。

变更历史

slc.linguatools 更新日志

1.4.4 (2013-12-06)

  • 在每个克隆之后添加一个提交

1.4.3 (2013-04-10)

  • 清理,在exec_for_all_langs中不需要REQUEST obj [pysailor]

1.4.2 (2012-07-22)

  • 切换到使用plone.app.testing而不是zope.testing [thomasw]

  • 从Plone3-分支复制了对slc.outdated的支持 [thomasw]

  • 将存储库从svn迁移到github [thomasw]

1.4.1 (2012-02-04)

  • 如果项目具有text_format属性(例如文档),则在“翻译此对象”功能中将其值复制到所有翻译中 [thomasw]

  • 将Robert Niederreiter的补丁添加到TinyMCE的getBreadcrumbs()方法中,以允许使用通用的语言无关文件夹(例如用于图像)。有关详细信息,请参阅LP问题275。此补丁需要通过环境设置激活。请参阅README.txt [thomasw]

1.4.0 (2011-07-01)

  • 删除了依赖项的版本绑定 [thomasw]

  • 对主要视图进行了轻微的CSS调整 [thomasw]

  • 添加了缺失的CMF权限包导入 [thomasw]

1.4.0b1 (2011-04-08)

  • 更新了doctest设置,以便在Plone4中运行 [thomasw]

  • 添加了使显示表单可选的可能性,例如仅在安装了某些组件时 [thomasw]

1.3.6 (2010-07-18)

  • 在PropertyForm中修复了错误:将unicode编码为utf-8,否则设置默认页面的属性会中断 [thomasw]

  • 允许在python脚本中导入utils模块 [pilz]

1.3.5 (2010-03-31)

  • 在plone.z3cform版本0.5.8中引入了一个重大变化,该变化会影响我们的产品。通过覆盖FormWrapper的update()和contents(),我们启用了对版本>=0.5.8的支持;在contents()中,我们使用一个丑陋的补丁保持了版本<=0.5.7的支持 [thomasw]

  • 修复了1.3.3中引入的更改工作流程的损坏的doctest [thomasw]

  • AvailableIdsVocabulary现在只返回可翻译的项目 [thomasw]

  • 新功能:添加和删除标记接口 [thomasw]

  • 不要在可用语言的词汇中显示规范语言 [thomasw]

1.3.4 (2010-02-09)

  • 在AvailableWorkflowTransitions词汇中,返回工作流程的所有可用转换,而不仅仅是针对规范状态的可用转换。规范可能已发布,而某些翻译仍然是私有的 [thomasw]

1.3.3 (2010-01-27)

  • 重新工作了工作流程处理。现在除了“发布”之外,还可以触发当前对象上所有可用的交易 [thomasw]

  • “翻译此”现在有一个额外的语言字段,因此可以选择可用语言的一个子集 [thomasw]

  • 运行了pep8脚本并修复了大多数问题 [thomasw]

1.3.2 (2009-12-17)

  • 在linguatools.css中修复了错误:缺少关闭括号。感谢提醒,do3cc! [thomasw]

1.3.1 (2009-12-11)

  • 针对 plone.app.z3cform 的版本固定,请更加放松 [thomasw]

1.3 (2009-11-29)

  • 在 2009 年 Plone 大会冲刺期间进行重大改革:从静态 BrowserView 转换为 z3c form;改进了测试覆盖率;界面更清晰;更易于使用,减少输入;更容易集成新功能 [cillian, jcbrand, pilz, thomasw, Andreas Schmid]

1.2.5 (未发布)

  • 确保在使用它创建 objectids 时 lang 是 ascii。否则,我们可能会遇到无限递归 [pilz]

  • 哎呀,“block portlets” 又有一个错误,这次是在状态消息中 [thomasw]

  • 为 translateThis 提供更好的状态报告;当勾选“存在翻译”时,也会复制集合标准;对未知字段的处理更优雅 [thomasw]

1.2.4 (2009-10-27)

  • 继续修复模糊变量名的问题 [thomasw]

1.2.3 (2009-10-25)

  • 为“block portlets”修复了 2 个错误:模糊变量名,错误的按钮名 [thomasw]

1.2.2 (2009-10-08)

  • 在 cutAndPaste 中修复了 2 个错误(如果对象不可用,不要绝望) [thomasw]

  • 为 ITranslatable 对象添加了 Lingua Tools 的 contenview 标签 [jcbrand]

  • 在 lingatools.pt 中将图例移动到 fieldsets 中,添加了标签,并稍作整理 [jcbrand]

  • 添加了删除子类型的新选项 [jcbrand]

  • 使用默认的 plone 状态消息进行消息传递,并添加了 event.log 记录 [jcbrand]

slc.linguatools 1.2.1 (2009-08-13)

  • 与当前版本的 LinguaPlone 兼容 [gerken/thomasw]

slc.linguatools 1.2 (2009-06-17)

  • 为现有的 doctest linguatests.txt 建立了适当的框架 [thomasw]

slc.linguatools 1.1 (2009-05-12)

  • 打包 egg [pilz]

slc.linguatools 1.0 (2008-03-31)

  • 初始移植

致谢

作者

  • Wolfgang Thomas (Syslab.com GmbH)

  • Alexander Pilz (Syslab.com GmbH)

  • Jan-Carel Brand (Syslab.com GmbH)

  • Cillian de Roiste (Syslab.com GmbH)

贡献者

  • Andreas Schmid (TIS Innovation Park):jquery 切换

  • Robert Niederreiter:TinyMCE 的 getBreadcrumbs 补丁

待办事项

  • 为“Cut & Paste”找到并使用一个对象选择小部件 - 输入目标路径很丑。

  • 区分全局函数(例如,设置标题)和仅在文件夹上才有意义的函数(例如,删除)。

  • 在控制面板中添加一个配置页面,以便管理员可以选择可用的功能(例如,排除 Marker Interface 功能)

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。

源分布

slc.linguatools-1.4.4.zip (70.1 kB 查看散列)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面