English Русский Español Deutsch 日本語 Português 한국어 Français Italiano Türkçe
如何向 MetaTrader 5 平台添加新的用户界面语言

如何向 MetaTrader 5 平台添加新的用户界面语言

MetaTrader 5示例 | 19 五月 2014, 08:44
2 241 0
MetaQuotes
MetaQuotes


简介

MetaTrader 5 平台的用户界面被翻译成几种语言。客户端有最大的多语言支持 - 除了英语之外,它还被翻译成俄语、德语、法语、西班牙语、意大利语、葡萄牙语、波兰语、中文、阿拉伯语和土耳其语。其中部分语言在平台的其他组件中得到支持 - MetaEditor、Administrator 和 Manager。

如果您的母语不在支持的语言之中,请不用担心。MetaTrader 5 最初采用完整的 Unicode 支持,并且特别的 MultiLanguage Pack 工具用于翻译用户界面。此工具让任何人都能将 MetaTrader 5 平台的客户端组件翻译成世界上的任何语言。

在本文中,我们将讨论添加新的用户界面语言的整个过程。您将学习如何下载、安装和开始使用 MetaTrader 5 MultiLanguage Pack 工具。我们将介绍具体的使用过程,然后将看到最终结果。


MultiLanguage Pack - 下载、安装和配置

始终可以从 MetaQuotes Software Corp. 网站通过以下链接下载最新版的 MetaTrader 5 MultiLanguage Pack:https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5mlpsetup.exe.安装过程是一个标准过程,不会造成任何问题。默认情况下,工具安装到 "C:\Program Files\MetaTrader 5 MultiLanguage Pack\" 文件夹,并且所有必要的快捷方式都被添加到“开始”菜单。


“开始”菜单中的快捷方式


安装还包括 CHM 格式的用户指南和两个翻译项目:MetaTrader 5 Client Terminal ("\MetaTrader 5 MultiLanguage Pack\Projects\terminal5.prl") 和 MetaEditor 5 ("\MetaTrader 5 MultiLanguage Pack\Projects\metaeditor5.prl")。

一个翻译项目包含一个 MetaTrader 5 产品的用户界面的所有可用语言。当您第一次启动 MultiLanguage Pack 时,默认情况下打开客户端的翻译项目,如下所示。


第一次启动后的 MultiLanguage Pack


翻译项目文件拥有 PRL 扩展名,并且默认情况下与 MetaTrader 5 MultiLanguage Pack 应用程序关联在一起。

MetaTrader 5 翻译项目会不断更新以反映用户界面的最新变化。如果出于任何原因,您不得不重新启动先前开始的翻译,则您始终可以通过下载更新后的 MultiLanguage Pack 来获得最新版本的翻译项目。

MultiLanguage Pack - 用户界面

MultiLanguage Pack 具有简单易用的界面。它由主菜单 (1)、工具栏 (2)、项目浏览器 (3) 和工作区 (4) 组成。


MultiLanguage Pack 用户界面


主菜单提供项目管理的基本命令。某些命令也出现在工具栏中。某些命令是从相应的上下文菜单中调用的。

很多命令都有相应的键盘快捷方式。您可以在用户指南中找到所有可用命令和快捷方式的完整说明。

项目浏览器提供项目导航并包含语言子项目。每个子项目是到具体语言的翻译,包含三个主要的资源组:字符串、菜单和对话框。

  • Menus(菜单)。Menus(菜单)部分包含在程序中出现的所有菜单(主菜单和上下文菜单)的文本。Menus(菜单)具有清晰的层次结构:所有菜单及其项目都有编号,子菜单表示为子部分。和字符 (&) - 是一个在菜单项名称中选定字母前面的特殊字符。同时按下此字母及 Alt 键可激活一个命令或打开一个子菜单,该字母有下划线。

翻译菜单

  • Dialogs(对话框)。Dialogs(对话框)部分列出了所有对话框或它们的部件(选项卡)。对话框中的文本字符串也有编号。

翻译对话框

  • Strings(字符串)。Strings(字符串)包含未归入 Menus(菜单)或 Dialogs(对话框)类别的所有其它文本。这些文本可能是按钮名称、对话框及其选项卡的名称、列标题、工具提示、状态栏中的文本、各种消息文本等。

工作区用于实际翻译用户界面元素。翻译过程非常简单:选择一种语言,再选择一个资源子组,然后开始在工作区中逐行翻译。

在翻译时,您可以使用 Preview(预览)功能查看对话框或菜单的样子。此命令位于主菜单及工具栏中,按 F8 键也可以激活此命令。预览不适用于 Strings(字符串)。


MultiLanguage Pack - 如何工作

可以用以下流程图来表示获得新用户界面语言的过程。


MultiLanguage Pack 工作方案


1. 添加语言。MetaTrader 5 平台完全支持 Unicode 编码,因此可以轻松地将其组件的用户界面翻译成世界上的任何语言。添加语言之后,来自英语源语言的资源被复制到目标语言子项目。之后,这些资源即可用于翻译。

2. 翻译。这是最耗时的阶段。MetaTrader 5 平台的默认语言是英语,所有翻译都是从其逐行进行的。完成之后,必须编译您的项目。

3. 编译。编译项目会为每种语言创建目标文件。目标文具有 LNG 扩展名,并且采用以下命名方案:<模块>_<语言>.lng。例如,客户端翻译成俄语的语言文件将被命名为 "terminal_russian.lng"。经过编译的语言文件必须放在 MetaTrader 5 产品的 "\Languages" ​子文件夹中。

举例而言,如果客户端安装在 "C:\Program Files\MetaTrader 5\" 文件夹中,则其用户界面的翻译必须放在 "C:\Program Files\MetaTrader 5\Languages\" 文件夹中。每次更新项目中的翻译时,都应覆盖 LNG 文件。

4. 检查翻译。当然,您必须检查翻译的质量。除了拼写错误以外,翻译还经常不会在分配的空间里完整出现。在这种情况下,您应更简洁的表达您的翻译,或者缩写某些单词而不丢失其含义。对字符串而言尤其如此,因为不能预览它们。

5. 发布翻译。当完成并测试界面翻译之后,您可以使用 "Send"(发送)命令将其发送给 MetaQuotes Software Corp.。经过技术检查之后,可以将您的翻译包括在 MetaTrader 5 产品的标准分发中。


翻译示例

让我们以 MetaEditor 为例讨论翻译用户界面的所有阶段。为此,我们需要 MetaEditor 5 翻译项目,该项目已经随 MultiLanguage Pack 一起安装。作为一个例子,我们添加各个用户界面元素的德语翻译。


MetaEditor 翻译项目


1. 添加语言

向项目添加一种新语言。为此,从 "Edit"(编辑)菜单选择 "Add New Language"(添加新语言),或单击工具栏上的 添加新语言 按钮,或按 Ctrl+A。

在 "Add new language"(添加新语言)对话框中选择 "German"(德语),然后单击 OK(确定)。这样在项目浏览器中便创建了一个新的语言分支。


MetaEditor 翻译项目中的德语


2. 翻译

让我们讨论翻译各个用户界面元素的过程。

菜单

展开 "Menus"(菜单)类别,然后选择菜单 [128]。翻译第一个菜单项。


翻译菜单


N 前面的和字符 & 指定与 Alt 键一起使用的对应快捷键。命名名称后面紧跟着的是 \t 转义符号以及 Ctrl+N 快捷方式。在 MetaEditor 5 用户界面中,翻译看起来如下所示。


菜单翻译中的特殊字符


当与 Alt 键一起使用时,字母 N 被强调。制表符将命令文本与快捷方式文本隔开,正与后者对齐。

务必保持制表符 (\t) 和快捷方式文本的位置。然而,和字符 & 的位置不必与原始文本一致。重点在于菜单内每个命令的快捷键必须是唯一的。 

如果被翻译的文本在其它资源中完全匹配,则 MultiLanguage Pack 将在相应的地方向您提供替换翻译。在我们的例子中,它在菜单 [133] 中提供相同的菜单项翻译。


翻译重复的句子


状态栏中的消息和工具栏中的按钮

在 Strings(字符串)组中浏览到第 57600 行并翻译该行。此资源包含在您将鼠标移到我们已经翻译的 "New"(新建)命令时出现在状态栏中的文本。在命令说明之后是熟悉的热键文本。接着是指定换行的 \n 转义符以及工具栏中一个按钮的文本。


翻译状态栏中的文本和工具栏中按钮的文本


在 MetaEditor 5 用户界面中,翻译看起来如下所示。


状态栏中的命令说明     工具栏中的按钮名称


对话框

在 Dialogs(对话框)组中打开 [349] Introduction page(说明页)对话框。翻译此对话框中的所有行。


翻译对话框


方便起见,您可以使用 Preview(预览)功能查看翻译后的对话框的样子。


对话框预览


这是它在程序中的样子。


MetaEditor 用户界面中翻译后的对话框


某些标准按钮的文本(Back、Next、Cancel 等)取决于操作系统的语言。这些具体按钮不能在 MultiLanguage Pack 中翻译。

在翻译过程中,您可能遇到包含特殊字符的字符串,例如 %s%d\n\t 等。请小心,因为在用户界面中显示文本时,这些字符有特殊的含义。例如,%s 被一行文本代替,%d 被一个整数代替,\n 表示换行,等等。您可以在用户指南的附录 B 中找到不可翻译单词的完整列表。


3. 编译

编译项目。要进行此操作,请单击 编译 按钮,或从 "Tools"(工具)菜单选择 "Compile Project"(编译项目),或按 F9 键。


成功编译


在与您的项目文件相同的文件夹中(在我们的例子中为 "C:\Program Files \MetaTrader 5 MultiLanguage Pack\Projects"),MultiLanguage Pack 为项目的所有语言生成目标 LNG 文件。对于每一次后续的编译,现有目标文件都被更新。


经过编译的翻译文件


4. 检查翻译

将生成的 "metaeditor_german.lng" 文件复制到 "C:\Program Files\MetaTrader 5\Languages" 文件夹。

打开 MetaEditor 5。从 "View"(视图)菜单选择 "Languages"(语言) => "German"(德语),然后确认重启。我们翻译的用户界面元素将以德语出现。

在翻译过程中,每次编译项目时,切勿忘记更新 "\Languages" 文件夹中的语言文件。

很不幸,MultiLanguage Pack 没有内置的拼写检查程序。然而,您可以导出您的翻译并在任何字处理程序,例如 Microsoft Word 中检查是否有拼写错误。为此,在项目浏览器中右击语言子项目,然后选择 "Save as text"(另存为文本)。 


将翻译导出到文本文件


选定语言的所有资源(字符串、菜单和对话框)都被导出到指定文本文件。


5. 发布翻译

彻底检查您的翻译。确保所有用户界面元素都正确显示并且没有错误。

按工具栏上的 发送 按钮或从 "Tools"(工具)菜单选择 "Send to MetaQuotes ServiceDesk"(发送到 MetaQuotes ServiceDesk)。

输入您的姓名及用于联系您的电子邮件地址,然后单击 "Send"(发送)按钮。 


将翻译发送到 MetaQuotes Software Corp.


您的翻译将作为对我们的 TeamWox 组件的传入请求发送。经过技术检查之后,您的翻译将包括在 MetaTrader 5 产品的标准交付包中。

请使用发布翻译的标准功能,切勿通过电子邮件作为经过编译的 LNG 文件发送您的翻译。


字典

为了提高翻译的速度和一致性,MultiLanguage Pack 提供了字典功能。字典让您能够快速地翻译重复短语。如果您确定您以前翻译过给出的字符串,您可以尝试通过从上下文菜单(或通过按 Ctrl+D)选择 "Translate from Dictionary"(从字典翻译)来迅速地替换翻译。 


使用字典进行翻译


如果一个字符串有译文,则会自动替换该字符串。 


替换译文


在项目完成时,翻译被自动记录到所有语言的字典中。

字典允许您在批处理模式中翻译用户界面。为此,单击工具栏上的 字典 按钮或从 "Edit"(编辑)菜单选择相同的命令。 


字典内容


在这个窗口中,您可以选择要为其使用从字典翻译的行,然后单击 "Apply"(应用)。


有用的提示

  • 始终依据上下文进行翻译。
  • 使用搜索功能("Edit"(编辑)菜单中的 "Find"(查找)和 "Find next"(查找下一个)命令)。
  • 搜索区分大小写。您搜索的短语也可能包含特殊字符,例如 &、\t、\n 等。
  • 请记住特殊字符的重要性。
  • 制表符键让您能够在项目浏览器和工作区之间切换。
  • 要开始编辑文本行,除了双击以外,还可以使用 F2 键。
  • 为了便于在工作区中导航,请使用 "Next"(下一个)(Alt+向右箭头)和 "Previous"(上一个)(Alt+向左箭头)命令。
  • 可通过 "Tools"(工具)菜单和工具栏使用的 "Statistics" 命令显示每种语言的已翻译字数的详细统计。   


总结

我们希望本文能鼓舞您将 MetaTrader 5 用户界面翻译成您的母语。MetaQuotes Software Corp. 致力于在其产品中支持尽可能多的语言,并为此提供所有必要的工具。

本文由MetaQuotes Ltd译自俄文
原文地址: https://www.mql5.com/ru/articles/311

MQL5-RPC来自 MQL5 的远程过程调用:针对乐趣及获利的网络服务访问及 XML-RPC 自动交易锦标赛分析程序 MQL5-RPC来自 MQL5 的远程过程调用:针对乐趣及获利的网络服务访问及 XML-RPC 自动交易锦标赛分析程序
本文介绍 MQL5-RPC 框架,该框架使来自 MQL5 的远程过程调用成为可能。它以 XML-RPC 基础、MQL5 实施开始,接着提供两个实际运用例子。第一个例子使用外部网络服务,第二个例子是一个用于简单 XML-RPC 2011 年自动交易锦标赛分析程序服务的客户端。如果您对如何实施和实时分析来自 2011 年自动交易锦标赛的不同统计数据感兴趣,则本文正好适合您。
用 MQL5 向导创建您自己的 EA 交易 用 MQL5 向导创建您自己的 EA 交易
编程语言知识不再是创建自动交易的一个先决条件。以前,缺乏编程技能是实现自己的交易策略的不可逾越的障碍,但是随着 MQL5 向导的出现,这种情况迅速改变了。交易新手能够不再因为缺乏编程经验而担心 - 使用让您能够生成 EA 代码的新向导,编程经验不再是必不可少的了。
MQL5.community 中的名人? MQL5.community 中的名人?
MQL5.com 网站能够记住你的一切!你有多少帖子受热捧,您的文章有多受欢迎,您的程序在代码库中被下载了多少次 – 这仅仅是 MQL5.com 记住的一小部分。您的成就可以在个人资料中找到,但是整体情况呢?在本文中,我将显示所有 MQL5.community 会员成就的概貌。
MQL5 代码自动生成文档 MQL5 代码自动生成文档
大多数 Java 代码编写者熟悉可通过 JavaDocs 创建的自动生成文档。其思路是以一种半结构化的方式向代码添加注释,然后可以将这些注释提取到易于导航的帮助文件。C++ 世界也有若干文档自动生成器,其中微软的 SandCastle 和 Doxygen 是两款领先产品。本文说明使用 Doxygen,从 MQL5 代码的结构化注释创建 HTML 帮助文件。试验非常成功,我认为 Doxygen 从 MQL5 代码生成的帮助文档会增加很多价值。