Skip to content

段落

如果要对大段文本进行多语言处理,在VoerkaI18n 3.0中引入段落的概念,专门用处理大段文本的多语言问题。

使用方法

段落翻译的使用方法如下:

第1步:封装段落

段落需要使用Translate组件进行封装,不能使用t,如下:

ts
<template>
    <div>       
        <Translate id="license">
版权所有 (c) [年份] [版权持有者]
特此免费授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人,不受限制地处理本软件的权限,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售本软件的副本,并允许获得本软件的人这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在本软件的所有副本或重要部分中。
本软件“按原样”提供,不提供任何形式的明示或暗示的担保,包括但不限于对适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有者均不对任何索赔、损害或其他责任负责,无论是在合同、侵权或其他行为中产生的,还是与本软件或本软件的使用或其他交易有关的。
        </Translate>
    </div>
</template>

<script setup>
import { Translate } from "./languages"
</script>

重点

段落翻译需要使用Translate组件进行封装,不能使用t。并且需要指定id属性来唯一标识段落。

第2步:提取段落

当执行voerkai18n extract命令时,会自动提取<Translate>组件中的段落内容,保存到languages/translates/paragraphs/*.html

  • myapp
    • languages
      • settings.json 语言配置文件
      • translates 此文件夹包含了所有需要翻译的内容
        • messages普通文本内容
        • paragraphs/段落内容
          • license.html
          • xxx.html
      • ...
    • package.json
    • index.js

languages/pagagraph<段落id>.html的内容大概如下:

html
<!-- 
    id:    license 
    scope:  
    file:  src\License\index.vue 
    rang:  3:8-8:12 
-->
<div language="zh-CN">
版权所有 (c) [年份] [版权持有者]
特此免费授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人,不受限制地处理本软件的权限,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售本软件的副本,并允许获得本软件的人这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在本软件的所有副本或重要部分中。
本软件“按原样”提供,不提供任何形式的明示或暗示的担保,包括但不限于对适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有者均不对任何索赔、损害或其他责任负责,无论是在合同、侵权或其他行为中产生的,还是与本软件或本软件的使用或其他交易有关的。
</div>
<div language="en-US">
版权所有 (c) [年份] [版权持有者]
特此免费授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人,不受限制地处理本软件的权限,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售本软件的副本,并允许获得本软件的人这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在本软件的所有副本或重要部分中。
本软件“按原样”提供,不提供任何形式的明示或暗示的担保,包括但不限于对适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有者均不对任何索赔、损害或其他责任负责,无论是在合同、侵权或其他行为中产生的,还是与本软件或本软件的使用或其他交易有关的。
</div>
<div language="ru-RU">
版权所有 (c) [年份] [版权持有者]
特此免费授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人,不受限制地处理本软件的权限,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售本软件的副本,并允许获得本软件的人这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在本软件的所有副本或重要部分中。
本软件“按原样”提供,不提供任何形式的明示或暗示的担保,包括但不限于对适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有者均不对任何索赔、损害或其他责任负责,无论是在合同、侵权或其他行为中产生的,还是与本软件或本软件的使用或其他交易有关的。
</div>

languages/pagagraph<段落id>.html文件中包含了所有需要翻译的内容,每个段落对应一个<div>标签,language属性指定了语言,<div>标签中的内容就是需要翻译的内容。

第3步:翻译

接下来就可以对调用voerkai18n translate命令对languages/translates/paragraphs/*.html文件进行翻译了。

bash
> voerkai18n translate

执行完毕后,languages/translates/paragraphs/*.html文件会被翻译成对应的语言。

第4步:编译

最后执行voerkai18n compile命令,将翻译后的内容编译到languages/pagagraphs/文件夹下。