qt_add_lupdate
将目标添加到生成或更新 Qt 语言学家 .ts 文件。
此命令定义在 Qt6
包的 LinguistTools
组件中。使用以下命令加载包
find_package(Qt6 REQUIRED COMPONENTS LinguistTools)
此命令在 Qt 6.2 中引入。
摘要
自 6.7 以来
qt_add_lupdate(TS_FILES file1.ts [file2.ts ...] [PLURALS_TS_FILE file.ts] [SOURCE_TARGETS target1 [target2 ...]] [SOURCES source1.cpp [sources2.cpp ...]] [INCLUDE_DIRECTORIES directory1 [directory2 ...]] [LUPDATE_TARGET target-name] [NO_GLOBAL_TARGET] [OPTIONS ...])
自 6.2 (已弃用)
qt_add_lupdate(target TS_FILES file1.ts [file2.ts ...] [SOURCES source1.cpp [sources2.cpp ...]] [INCLUDE_DIRECTORIES directory1 [directory2 ...]] [NO_GLOBAL_TARGET] [OPTIONS ...])
如果禁用了 无版本命令,则使用 qt6_add_lupdate()
代替。它支持与该命令相同的参数集。
描述
使用 lupdate 创建一个自定义目标来生成或更新 Qt 语言学家 .ts
文件。
该自定义目标的名称默认为 ${PROJECT_NAME}_lupdate
。后续的 qt_add_lupdate
调用将创建带有递增数字的目标名称。您可以使用 LUPDATE_TARGET
选项指定自定义目标名称。
使用 SOURCE_TARGETS
参数,您可以指定包含可翻译字符串的源的目标列表。如果没有指定 SOURCE_TARGETS
,您可以使用下文描述的 SOURCES
。如果没有指定 SOURCE_TARGETS
或 SOURCES
,则使用命令 qt_collect_translation_source_targets 来检索目标列表。
必须使用 TS_FILES
参数指定 .ts
文件。
该函数旨在与 qt_add_lrelease 一起使用。另请参阅便捷包装器 qt_add_translations。
源和包含目录
使用 SOURCES
,您可以显式指定包含可翻译字符串的附加源文件。
您可以使用 INCLUDE_DIRECTORIES
显式指定这些源文件的包含目录。
选项
您可以为在调用 lupdate
时要传递的附加 OPTIONS
设置额外的设置。您可以在 lupdate 文档 中找到可能的选择。
主目标
除了目标 ${target}_lupdate
之外,还创建了一个总目标 update_translations
。此目标将构建使用 qt_add_lupdate
创建的所有 ${target}_lupdate
目标。
向 qt_add_lupdate
传递 NO_GLOBAL_TARGET
以防止此行为。
在此调用 qt_add_lupdate
之前设置变量 QT_GLOBAL_LUPDATE_TARGET
以覆盖此目标名称。
复数形式
QT_I18N_SOURCE_LANGUAGE 用于指定源代码字符串所使用的语言。为了正确处理复数形式,为该语言创建一个额外的只包含复数形式可翻译字符串的 .ts
文件。有关详细信息,请参阅 处理复数形式。
使用 PLURALS_TS_FILE
,您可以指定源语言的 .ts
文件。该文件将只包含复数形式。
废弃的命令签名
较旧的 qt_add_lupdate
版本将目标作为第一个参数。这是废弃的。请改用 SOURCE_TARGETS
参数。
示例
添加 myapp_lupdate
和 update_translations
目标以更新应用 myapp
的 .ts
文件。
qt_add_lupdate( SOURCE_TARGETS myapp TS_FILES myapp_de.ts PLURALS_TS_FILE myapp_en.ts )
您可以通过传递 LUPDATE_TARGET
参数指定创建的目标的名称
qt_add_lupdate( LUPDATE_TARGET update_application_translations TS_FILES myapp_de.ts PLURALS_TS_FILE myapp_en.ts )
© 2024 Qt 公司有限公司。此处包含的文档贡献保留了各自所有者的版权。此处提供的文档根据 Free Software Foundation 发布的 GNU 自由文档许可协议版本 1.3 的条款获得许可。Qt 及其相应标志是芬兰以及全球其他国家的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。