文档更改iTop如何翻译
由 superadmin 于 2024/12/13, 16:39 最后修改
Summary
Details
- Page properties
-
- Content
-
... ... @@ -75,4 +75,137 @@ 75 75 76 76 这些规则有助于维护和确保翻译的一致性。 77 77 78 + 79 +|=Key syntax|=Purpose|=Example 80 +|Class:<classname>|Translating the **name** of a class|Class:Ticket 81 +|Class:<classname>/Attribute:<fieldname>|Translating a field **label**|Class:Ticket/Attribute:ref 82 +|Class:<classname>/Attribute:<fieldname>/Value:<value>|Translating a **value** of an Enum attribute|Class:UserRequest/Attribute:status/Value:new 83 +|Class:<classname>/Attribute|Formatting the friendlyname **value**. (//see example below//)|‘Class:Person/Name’ ⇒ ‘%2$s %1$s’ 84 + 85 +//Friendlyname 语法//: 在这个示例中 86 + 87 +{{{'Class:Person/Name' \=> '%2$s, %1$s', /\* example: "Christie, Agatha" \*/ 88 +}}} 89 + 90 +* %1$s 对应于Person类的命名XML标签中的第一个字段,因此是 first_name。 91 +* %2$s 对应于Person类的命名XML标签中的第二个字段,因此是 name。 92 + 93 +这允许指定不同的顺序,并且甚至是一些其他字符和分隔符。 94 + 95 +您可以通过以下链接获取有关 friendlyname 的更多信息:[[friendlyname>>url:https://www.itophub.io/wiki/page?do=export_code&id=3_1_0:customization:translation&codeblock=2]]。 96 + 97 + 98 +(% class="box" %) 99 +((( 100 +<classes\> 101 + <class id\="Person"\> 102 + <properties\> 103 + <naming\> 104 + <attributes\> 105 + <attribute id\="first\_name"/> <!~-~- mapped to %1$s ~-~-> 106 + <attribute id\="name"/> <!~-~- mapped to %2$s ~-~-> 107 + </attributes\> 108 + </naming\> 109 +))) 110 + 111 +== 字典关键词的命名约定 == 112 + 113 +新条目的命名应根据其领域和目的,从最不具体的信息开始命名。 114 + 115 +最常用的分隔符是’:’,但也可以找到’/‘和’-’。 116 + 117 +(% class="box" %) 118 +((( 119 +'Core:BulkExport:TextFormat' \=> 'Text fields containing some HTML markup', 120 +'UI:CSVImport:TextQualifierCharacter' \=> 'Text qualifier character', 121 +'DayOfWeek-Sunday-Min' \=> 'Su', 122 +))) 123 + 124 + 125 +使用后缀来定义相同标签的变种: 126 + 127 +* + 表示短描述(通常显示在工具提示中) 128 +* ? 表示帮助/解释(可以跨多行) 129 + 130 +(% class="box" %) 131 +((( 132 +'Core:SynchroAtt:update' \=> 'Update ?', 133 +'Core:SynchroAtt:update+' \=> 'Used to update the object', 134 +'UI:CSVImport:AdvancedMode' \=> 'Advanced mode', 135 +'UI:CSVImport:AdvancedMode+' \=> 136 + 'In advanced mode the "id" (primary key) of the objects can be used to update and rename objects.' 137 + .'However the column "id" (if present) can only be used as a search criteria' 138 + .' and can not be combined with any other search criteria.', 139 +))) 140 + 141 +当建立了命名约定后,标识符应该指定为 :,就像以下示例中的方式: 142 + 143 +(% class="box" %) 144 +((( 145 +'Class:Event/Attribute:date' \=> 'Date', 146 +'Class:Event/Attribute:date+' \=> 'date and time at which the changes have been recorded', 147 +))) 148 + 149 +请注意,在这种情况下,分隔符应该是 ‘/’。 150 + 151 +==== ==== 152 + 153 +==== 枚举值 ==== 154 + 155 +枚举或枚举集的值使用自己的语法: 156 + 157 +(% class="box" %) 158 +((( 159 + 'Class:Action/Attribute:status/Value:test' \=> 'Being tested', 160 + 'Class:Action/Attribute:status/Value:test+' \=> 'Action has maybe a different behavior than when in production', 161 + 'Class:Action/Attribute:status/Value:enabled' \=> 'In production', 162 + 'Class:Action/Attribute:status/Value:enabled+' \=> '', 163 + 'Class:Action/Attribute:status/Value:disabled' \=> 'Inactive', 164 + 'Class:Action/Attribute:status/Value:disabled+' \=> 'Action is not effective', 165 +))) 166 + 167 +==== 实体覆盖 ==== 168 + 169 +子类可以覆盖属性(或值)的标签/工具提示,即使该属性已在其父类之一中定义。 170 + 171 +(% class="box" %) 172 +((( 173 + 'Class:ActionEmail/Attribute:status/Value:test+' \=> 'Only the Test recipient is notified', 174 + 'Class:ActionEmail/Attribute:status/Value:enabled+' \=> 'All To, Cc and Bcc emails are notified', 175 + 'Class:ActionEmail/Attribute:status/Value:disabled+' \=> 'The email notification will not be sent', 176 + 'Class:ActionEmail/Attribute:test\_recipient' \=> 'Test recipient', 177 +))) 178 + 179 +=== 关系 === 180 + 181 +默认链接相关的操作/图标工具提示、弹出窗口标题和确认消息如下所示。 182 + 183 +它们可以根据需要进行自定义,甚至可以根据类别/关联设置属性进行定制化(请参阅下文)。 184 + 185 + 186 +==== 1:n 关系 ==== 187 + 188 +|=通用字典条目代码|=用途|=英文|=法文 189 +|UI:Links:Create:Button+|列表右上角的**加号图标**工具提示|Create a %4$s|Créer un(e) %4$s 190 +|UI:Links:Create:Modal:Title|**子对象创建**弹出窗口标题|Create a %4$s in %2$s|Ajouter un(e) %4$s à %2$s 191 +|UI:Links:ModifyObject:Button+|行右端的**铅笔图标**工具提示|Modify this object|Modifier cet objet 192 +|UI:Links:ModifyObject:Modal:Title|**子对象修改**弹出窗口标题|Modify %5$s|Modifier %5$s 193 +|UI:Links:Remove:Button+|行右端的**减号图标**工具提示|Remove this %4$s|Retirer cet(te) %4$s 194 +|UI:Links:Remove:Modal:Title|**子对象从其宿主中移除**弹出窗口标题|Remove a %4$s from its %1$s|Retirer un(e) %4$s de son/sa %1$s 195 +|UI:Links:Remove:Modal:Message|**子对象移除**的确认消息|Do you really want to remove %5$s from %2$s?|Voulez vous vraiment retirer %5$s de %2$s? 196 +|UI:Links:Delete:Button+|行右端的**垃圾桶图标**工具提示|Delete this %4$s|Supprimer cet(te) %4$s 197 +|UI:Links:Delete:Modal:Title|**子对象删除**弹出窗口标题|Delete a %4$s|Supprimer un(e) %4$s 198 +|UI:Links:Delete:Modal:Message|**子对象删除**的确认消息|Do you really want to delete %5$s?|Voulez vous vraiment supprimer %5$s? 199 + 200 +==== n:n 关系 ==== 201 + 202 +|=通用字典条目代码|=用途|=英文|=法文 203 +|UI:Links:Add:Button+|列表右上角的**加号图标**工具提示|Add a %4$s|Ajouter un %4$s 204 +|UI:Links:Add:Modal:Title|**链接创建**弹出窗口标题|Add a %4$s to %2$s|Ajouter un %4$s à %2$s 205 +|UI:Links:ModifyLink:Button+|行右端的**铅笔图标**工具提示|Modify this link|Modifier cette relation 206 +|UI:Links:ModifyLink:Modal:Title|**链接修改**弹出窗口标题|Modify the link between %2$s and %5$s|Modifier la relation entre %2$s et %5$s 207 +|UI:Links:Remove:Button+|行右端的**减号图标**工具提示|Remove this %4$s|Retirer ce %4$s 208 +|UI:Links:Remove:Modal:Title|**链接删除**弹出窗口标题|Remove %4$s|Retirer un %4$s 209 +|UI:Links:Remove:Modal:Message|**链接删除**的确认消息|Do you really want to remove %5$s from %2$s?|Voulez vous vraiment retirer %5$s de %2$s? 210 + 78 78