用户界面文本指南

遵循本节中的指南,确保您的扩展与 Qt Creator UI 保持一致,并且可以轻松地本地化为不同语言。

在编写 UI 文本时,确保它

  • 与现有的 Qt Creator UI 术语保持一致
  • 简短且简洁
  • 中立的、描述性的并且符合事实的
  • 无歧义的
  • 可翻译为不同语言

语法和风格

所有 UI 文本都必须是语法正确的英语,并使用书面语言的规范形式。不要使用方言或俚语词汇。使用习惯用语,即具有英语特色的表达方式。如果可能,请一位母语为英语的人进行审查。

UI 文本公司简洁并经济地表述。避免使用不必要的内容词汇和短语。然而,文本的有用性和易于理解更为重要。

避免以第二人称称呼用户。使用中立语气或被动语态,但在必要时使用正式称呼。在称呼用户时避免使用“请”字。例外情况包括一些版权文本和可能听起来生硬的简短祈使句。例如,“请等待。”

在菜单名称和条目中避免使用缩写。如果一个单词的完整拼写或连字符没有空间,请根据英语缩写规则缩写文本。

避免使用缩写词。例如,写成“cannot”而不是“can't”。

标点符号

在菜单名称和条目中避免使用标点符号或特殊字符。

按照以下方式使用标点符号

  • 在消息中使用句号。
  • 菜单项名称的末尾永远不要使用句号(。)。
  • 对于需要用户操作的对话框的菜单项名称的末尾,放置三个句号(...)。
  • 仅在需要从用户那里获得额外关注或承载特殊重量的文本中使用感叹号(!)。
  • 在变量值周围使用引号("")。例如,关闭项目 "qtcreator"。为了保持一致性,在用户可见的字符串中,使用双引号强调或区分文件名、目录名、URL 等等。
  • 在消息中不要使用首尾或多个空格来对齐文本,因为翻译工具可能无法正确处理它们。

编写工具提示

工具提示包含有关图标、菜单项或其他 UI 元素的有用信息。当用户将鼠标指针悬停在 UI 元素上时,它们会显示出来。您还可以添加描述性文本,使某些 UI 始终可见。

考虑为所有从上下文中不明显理解 UI 元素的 UI 元素添加工具提示。工具提示应该帮助用户了解 UI 控件做什么,因此尝试尽可能使它们清晰,即使它们有点长。

图标的工具提示

对于图标,您可以使用命令名称作为工具提示。在这种情况下,使用书籍风格的首字母大小写,不要在工具提示后添加句号。

{Tooltip}

其他工具提示

工具提示也可以包含完整的句子。

{Sentence as a tooltip}

遵循以下指南

  • 编写有用的工具提示,但尽量保持简洁。
  • 为了帮助本地化和第二语言是英语的用户,尽可能使工具提示语法清晰。 wherever possible。
  • 使用任何句子都会使用的句式首字母大写和标点符号。
  • 对于输入字段,描述字段的值。告诉用户他们可以在字段中输入什么,例如姓名或路径,除非上下文中明显。使用名词短语,例如 用户账号名称。 描述限制和要求。
  • 对于复选框、单选按钮、按钮和菜单项等操作,描述用户选择时的操作。使用动词短语,例如 保存时删除尾随空格。
  • 对于组合框,描述何时选择每个选项。
  • 描述UI控件的功能,而不是如何使用它。 如果控件不符合用户的预期,请检查您的设计,因为您很可能选择了错误类型的控件。
  • 不要描述默认值或最小值和最大值,因为用户可以在字段中看到它们。

示例

控件不要
按钮 - 下载定义下载缺少的语法定义文件,以及更新现有的语法定义文件。您可以选择此按钮以下载语法定义文件。
复选框 - 清除尾随空格保存时删除尾随空格。启用此复选框以在保存时删除尾随空格。
组合框 - 大小终端中使用的字体大小(以点为单位)。使用上箭头和下箭头设置字体大小,范围在1到100之间。
字段 - Shell参数要传递给shell的参数。设置要传递给shell的参数。

在设计模式中编写工具提示

在Qt Widgets Designer中,使用纯文本作为工具提示。 对于额外的格式化,在富文本编辑器的源标签中编写简短、规范化的HTML:<html><head/><body><b>注意:</b> text.

Qt Widgets Designer有一个简化富文本格式的功能(默认开启),但仍应通过查看标签来验证。

编写消息

检查消息是否简明并经济地表述。但是,更重要的是,消息应有用且易于理解。

尽量减少新且不同的句子结构的数量。重复使用在相似情况下用过的句子结构。例如

  • 无法以所选的消息类型发送日志。文本太长。
  • 无法接收图像。
  • 无法插入图片。最大文本长度为120个字符。
  • 图像名称已被使用。
  • 文件夹名称已被使用。

UI文本大写 specified href="#ui-text-capitalization" title="直接链接到本标题">

使用了两种样式,书籍标题和句子样式

  • 书籍标题大写的示例
  • 句子样式大写的示例

使用书籍样式大写

在使用书籍样式大写时,除了比五个字母短的介词(例如,'with'但'without')、连词(例如,和、或、但)和冠词(a、an、the)外,应将所有单词的首字母大写。 但是,始终大写第一个和最后一个单词。

使用书籍样式大写

  • 标题(窗口、对话框、分组框、选项卡、列表视图列等)
  • 函数(菜单项、按钮)
  • 可选择的对象(组合框项、列表框项、树形列表项等)

检查书籍风格首字母大小写

如果需要,请使用在线的标题首字母大小写转换器来检查UI文本或文档中的标题文本的书籍风格首字母大小写。

或者,使用位于\doc\titlecase文件夹中的to-title-case.js脚本

  1. 在浏览器中打开to-title-case.html。
  2. 在字段中输入UI文本。
  3. 单击转换

右侧字段中显示了具有建议的书籍风格首字母大小写的UI文本。

注意:该脚本基于单词列表;它不执行语法分析。因此,如果您使用单词的罕见含义,可能会错误地处理大小写。例如,当您在down中指的是羽毛而不是方向时。然而,在编写UI文本和技术文档的大多数情况下,您应该能够在上下文中信任它。

使用句子风格首字母大小写

在句子风格首字母大小写中,仅将首字母大写,除了专有名词。

请使用句子风格首字母大小写来:

  • 标签
  • 工具提示
  • 描述性文本
  • 其他非标题或标题文本

为本地化做准备

Qt Creator已本地化为多种语言。一致性简洁性使UI文本更容易翻译。

标记UI文本以进行翻译

翻译上下文

避免创建许多不同的翻译上下文。默认情况下,tr()使用类的上下文,这意味着当代码重构和UI文本移动到不同的类时,翻译将被破坏。

为每个插件创建一个单独的翻译上下文。创建一个头文件myplugintr.h

#pragma once

#include <QCoreApplication>

namespace MyPlugin {

struct Tr
{
    Q_DECLARE_TR_FUNCTIONS(QtC::MyPlugin)
};

} // namespace MyPlugin

并使用该结构作为UI文本的翻译上下文,通过调用Tr::tr()。在需要的情况下使用区分字符串。

翻译注释

用户界面文本字符串在Tr::tr()调用中,并在翻译过程中从源代码中提取。因此,翻译者可能不知道消息的源代码上下文。

您可以在Qt Linguist中可见的注释( //:) 中添加注释来澄清上下文。例如

//: Contact book "Add person" button label
return tr("Add");

文件路径

使用来自Utils库的FilePath::toUserOutput()对于传递到Tr::tr().arg()的文件和目录名称。

标记

避免在翻译文本中包含标记,因为这可能会使翻译者困惑。例如,不要使用

Tr::tr("<html><head/><body><span>UI Text</span></body></html>")

使用

"<html><head/><body><span>" + Tr::tr("UI Text") + "</span></body></html>"

语言或书写系统的功能

为了允许对你扩展的本地化,考虑语言和书写系统对实施的影响。

语言或书写系统的功能对实施的影响
单词顺序不同的语言有不同的单词顺序规则。

不要使用运行时连接。使用完整的短语和"%1"格式化代替。例如,使用

tr("Foo失败:%1").arg(message)

而不是

tr("Foo失败:") + message

单数、复数与双数形式某些语言没有复数形式(例如中文和日语),而有些语言有双数形式。

在设计布局时,留出文本扩展的空间。某些语言需要更多的空间来表示复数或双数,以便传达所需信息。

例如,使用

tr("%n files found", 0, number)

而不是

tr("%1 files found").arg(number)

性别有些语言有性别(女性、男性、中性),而有些没有(例如芬兰语)或者不太使用(例如英语)。

不要重复使用文本字符串。由于基础词的性别,相同的术语可能在其他上下文中不起作用。

在一些语言中,冠词有语法性别,因此句子不能像在英语中那样容易构建。避免以下类型的构建

tr("%1 failed").arg(someCondition ? "the operation" : "opening a file")

常见 Qt Creator 术语

本节总结了用于常见 Qt Creator UI 组件的术语。它还描述了为不同类型的 UI 组件命名约定。

请始终检查您打算使用的术语在 UI 中没有其他含义。如果已经存在合适的术语,请使用它。例如,使用 查找 进行搜索,以及使用 新建 用于创建新对象的向导。

有关添加 UI 组件的更多信息,请参阅 常见扩展任务

UI 文本用法约定
上下文菜单当用户在屏幕上右键单击时打开。内容取决于上下文。

{Context menu}

您可以为特定上下文添加相关菜单项。遵循命名菜单项的约定。
对话框用户界面元素,通常包含多个选项或允许用户向应用程序输入信息。当用户选择菜单项或按钮时打开。

{Dialog}

请将菜单项或按钮名称用作对话框名称。您还可以将菜单项或按钮的名称与对话框中管理的对象的名称组合。例如,在 文档 选项中的 添加 按钮打开 添加文档 对话框。
定位器允许您浏览不仅限于文件,而且是由定位器过滤器定义的任何项。

{Locator}

您可以添加定位器过滤器。请确保过滤器尚未被使用,并为过滤器提供描述性的名称。
菜单包含代表命令或选项的菜单项,它们在逻辑上分组并显示。菜单也可以包含子菜单。

{Menu}

您可以创建新的菜单。使用简短但描述性的名称,并与现有菜单名称保持一致。使用无歧义名称。
菜单项代表用户可以选择的命令或选项。

{Menu item}

您可以向菜单中添加新项。使用简短但描述性的名称,并与现有菜单名称保持一致。使用无歧义名称。
消息框提供用户反馈的对话框,形式为状态信息、警告或错误消息。

{Message box}

应显示 Qt Creator 的输出。

将事件用作标题,并在消息框中提供解决方案。
模式模式对应于完整的控制屏,适用于特定任务。

{Mode selector}

例如,您可以为新类型的编辑器添加模式。使用描述性但简短的名称。它们必须适应 模式选择器
输出用于显示 Qt Creator 输出的视图。

{Output}

请对输出视图使用描述性名称。
侧边栏编辑调试 模式下可用的视图,您可以使用它来浏览项目、文件和书签,以及查看类层次。

{Sidebar}

您可以向侧边栏菜单添加视图。为它们使用描述性名称。
视图屏幕上的一个区域,用于向用户显示信息并提供管理这些信息的函数。在 调试 模式下可用,用于与调试器控制下运行的程序进行交互。

{Views}

为视图使用描述性名称。

©2024 The Qt Company Ltd. 其中包含的文档贡献版权属于其各自的所有者。本提供的文档根据自由软件基金会公布的 GNU 自由文档许可协议版本 1.3 授予许可。Qt 以及相应的商标是芬兰的 Qt 公司及其全球其他国家的商标。所有其他商标均为其各自所有者的财产。