justso / justtexts
通过网页浏览器简单管理多语言(i18n)文本。
Requires
- php: >=5.6.0
- components/backbone: 1.1.x
- components/bootstrap: 3.3.x
- components/jquery: 1.11.x
- components/underscore: 1.7.x
- justso/justapi: 2.0.0 - 3
Requires (Dev)
- phpunit/phpunit: >=5.4
README
多语言文本管理工具。
此工具的目的是通过浏览器管理多种语言的文本容器,并将其放置在文件系统中以i18n兼容的格式使用,适用于所有编程语言,无论是后端还是前端。
使用JavaScript,可以通过i18n.js(详情请见:http://github.com/requirejs/i18n)使用文本。
设置
此包需要JustAPI作为REST API后端,因此请将JustAPI检查到vendor/justso/justapi中。将此包检查到vendor/justso/justtexts中。从JustAPI向config.json文件添加一个'language'属性,其中包含您要使用的语言代码列表,并在config.json的"services"部分中添加JustTexts服务的条目。
示例
...
"languages": ["de", "en", "fr"],
"services": {
...
"justtexts/*": "file:vendor/justso/justtexts/services.json"
}
...
下载所需库
需要以下库
- Backbone.js: https://backbone.npmjs.net.cn
- Require.js: https://requirejs.node.org.cn/docs/download.html#requirejs
- text插件: https://requirejs.node.org.cn/docs/download.html#text
- i18n插件: https://requirejs.node.org.cn/docs/download.html#i18n
- jQuery: https://jqueryjs.cn/download/
- Underscrore.js https://underscorejs.node.org.cn
- Bootstrap https://bootstrap.ac.cn/getting-started
只需将这些库及其相应的.map文件作为最小化版本一起下载到vendor文件夹中。
调整Apache配置
修改您的Apache配置文件,将'/justtexts'目录指向包的JavaScript部分,并方便地访问所需的库。
Alias /justtexts /path/to/my/project/vendor/justso/justtexts/frontend
Alias /vendor /path/to/my/project/vendor
在重新加载Apache配置("service apache2 reload")后,应用程序应可通过http://your-server.example.com/justtexts/访问。
文本管理的使用
文本按“页面”分组。因此,首先在列表中创建一个页面,并给它命名。使用与HTML页面名称相同的名称(不是标题)是很好的做法,因此如果您的URL是http://your-server.example.com/my-page.html,如果您将页面命名为'my-page',那么以后找到相应的文本会更容易。
创建页面很简单:只需按“添加页面”按钮,然后单击空列表行中的“名称”字段。输入名称后离开字段(通过单击其他地方或按tab键),页面即创建。更改名称也很简单:只需单击名称并更改它。同样,更改会在离开字段时持久保存。将鼠标移至行上方,行右侧将显示一个“x”图标,允许您删除该页面。
创建页面后,在第一个列表右侧将显示第二个列表。在那里您可以看到该页面中已定义的所有文本 - 没有文本。使用“添加文本”按钮可以为页面创建新的文本块,每个文本块都有一个唯一的名称和文本本身。文本稍后通过其唯一名称访问。创建、更改或删除文本与页面相同。只需WYSIWYG。
访问文本
文本放置在名为 'htdocs/nls' 的目录中,这些文本位于与 i18n.js 兼容的 JavaScript 文件中(见上文),并且可以通过这个包访问,这是一个 require.js 插件。所以,只需在你的 AMD 模块中 require "i18n!my-page",即可访问名为 'my-page' 的页面的文本。文本容器的名称是参数属性的名称。i18n 负责加载用户偏好的语言中的文本——如果存在的话。否则,它将默认为在 config.json 文件中定义的第一个语言。
翻译
翻译意味着调用管理界面并更改语言到所需的语言。基本语言(这是在 config.json 文件中定义的第一个语言)中的文本会与每个文本容器旁边的文本一起显示,以使翻译更容易。
JustTexts 负责处理翻译后的文本更改。因此,如果基本语言中的文本被更改,所有其他语言容器中的文本将被标记为过时。在管理界面中,过时的文本将以红色标记,这样相对容易找到这些文本并在必要时重新翻译它们。
支持及其他
如果您需要支持,请联系我们: http://justso.de