Appearance
插件翻译文件使用说明
在开发应用程序的过程中,多语言的切换是必不可少的功能,ARCS 软件目前支持中文/英文切换,开发的插件也需要随着 ARCS 软件的系统语言进行语言切换。
插件在开发过程中,先使用 Qt Creator 生成 TS 文件,TS 文件即是实现翻译功能的文件,ARCS 软件的系统可以切换几种语言,就会有几个 TS 文件。 TS 文件生成后,使用 Qt Linguist 工具翻译所有 TS 文件,最后重新打包插件,加载至 ARCS 软件,即可实现插件随着 ARCS 软件的系统语言的切换功能。
ARCS 软件语言切换
启动 ARCS 软件,在主页单击右上角的【设置】按钮。
进入【设置】界面,单击【偏好 > 语言】,选择【中文】或【English】,单击右下角的【应用并重启】,重启后完成 ARCS 软件的语言切换。
翻译文件的生成、加载与更新
生成翻译文件
打开 Qt Creator,打开插件工程,在界面上布置控件。
在插件的【src】目录下新建【translations】文件夹。
确定翻译文件的命名。
(推荐)以【插件名_zh_CN.ts】来保存中文翻译文件,【插件名_en.ts】来保存英文翻译文件。
例如:myplugin_zh_CN.ts、myplugin_en.ts
修改【CMakeLists.txt】文件,使 CMake 中包含翻译文件。
在
find_package
中增加LinguistTools
翻译工具。设置翻译文件的路径
TS_FILES
,并创建翻译文件.ts
文件。add_library
中添加.ts
翻译文件。具体代码:
find_package(Qt5 REQUIRED COMPONENTS Core Widgets LinguistTools)
set(TS_FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/translations/loadqrc_zh_CN.ts ${CMAKE_CURRENT_SOURCE_DIR}/src/translations/loadqrc_en.ts) set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION ${PLUGIN_OUTPUT_PATH}/loadqrc) qt5_create_translation(QM_FILES ${CMAKE_CURRENT_SOURCE_DIR}/src ${TS_FILES})
add_library(loadqrc SHARED ${_srcs} ${program_src} ${install_src} ${QM_FILES} src/activator.cpp src/resource.qrc)
保存【CMakeLists.txt】文件,对项目再次进行 CMake 和 Build,完成后会在【工程项目/src/translations】目录下生成对应的翻译文件 .ts 文件。
翻译翻译文件
打开 Qt Linguist,打开 .ts 文件。
如图所示,位置【1】表示未被翻译的语句;选择未被翻译的语句后,在位置【2】处输入翻译内容;翻译内容输入后,单击位置【3】的按钮,标记该语句翻译完成。
完成所有语句的翻译后,单击左上角的【保存】。
打包插件
通过 deploy.sh
脚本完成插件的打包压缩,拷贝到 arcs 指定工作目录,加载插件,选择系统语言为中文(简体),即可完成插件的翻译加载过程。效果图如下:
更新翻译文件
在插件开发的过程中,有时各语言翻译功能做好之后,插件可能会增加别的功能,需要在此进行翻译,这时只需要更新 .ts 文件即可。
下面以新增控件【update translation test putton】为例,演示更新翻译文件的步骤:
打开 Qt Creator,在插件工程中新增控件,命名为【update translation test putton】。
找到该工程下 .ts 文件的位置,本测试用例的 .ts 文件存储位置如图所示。
在 .ts 文件处打开终端,使用
lupdate
命令更新 .ts 文件。lupdate
命令一般格式:lupdate -ts 需要更新的翻译文件名称.ts
如果整个插件工程采用 CMake 管理,需手动增加所有和翻译内容有关的源代码文件地址:
lupdate 源代码文件1 源代码文件2 ... -ts 需要更新的.ts文件
如果涉及到的源代码文件较多,可以采用相对路径,用户可以根据自己工程的文件结构进行调整,也可以使用绝对路径,将每个源代码文件加进来。在本测试工程所有的源代码都存放在【src】目录下,【src】文件在 .ts 文件的上级目录下,则在 .ts 文件目录下使用
../*
即可访问到【src】目录下的所有文件:lupdate ../* -ts loadqrc_zh_CN.ts lupdate ../* -ts loadqrc_en.ts
重新编译项目。
再次打开 .ts 文件,查看原先增加的控件信息是否已经添加。
翻译文件,具体操作请参见 “翻译翻译文件”。
将插件进行打包,并加载至 ARCS 中,完成更新。
ARCS 软件可以自动加载插件的翻译文件,需要在部署时将 qm 文件放至插件统计目录下即可。