From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,5b12489678b6b080,start X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!postnews.google.com!w2g2000yqb.googlegroups.com!not-for-mail From: Michael R Newsgroups: comp.lang.ada Subject: ANN: ZanyBlue.Text, Localization Support for Ada Date: Mon, 22 Nov 2010 02:19:05 -0800 (PST) Organization: http://groups.google.com Message-ID: <3ab4e227-e87a-4df1-85ad-aabee2690de0@w2g2000yqb.googlegroups.com> NNTP-Posting-Host: 76.126.190.57 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: posting.google.com 1290421146 5722 127.0.0.1 (22 Nov 2010 10:19:06 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 22 Nov 2010 10:19:06 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: w2g2000yqb.googlegroups.com; posting-host=76.126.190.57; posting-account=iokpWwkAAAC4FdoU8cY5F_WfowBALHIE User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.12) Gecko/20101027 Ubuntu/10.04 (lucid) Firefox/3.6.12 GTB7.1,gzip(gfe) Xref: g2news1.google.com comp.lang.ada:15635 Date: 2010-11-22T02:19:05-08:00 List-Id: Hi Folks, This is the first release of the ZanyBlue Ada packages. This release includes the Text package which support localization of Ada applications with Java style message formatting and .properties files. The released files are available at http://sourceforge.net/projects/zanyblue/files/ There are two downloadable files: 1) The core release files: zanyblue-0.1.0b-r1663.tar.gz 2) Support files for testing (AUnit) and regneration of the built-in localizations (CLDR) zanyblue-0.1.0b-r1663-libs3rd.tar.gz The primary dev environment is Unix but has been tested on Windows. Take care, Michael. The readme is: The ZanyBlue.Text Package ------------------------- ZanyBlue.Text is an Ada 2005 package supporting localization support in Ada by allowing the externalization of application messages into a properties file which can be localized into additional languages, similar to Java. The localized files include the locale string in the file name, e.g., the file "zbmcompile.properties" is localized to "zbmcompile_fr.properties" in French. The locale string is * A language abbreviation (2 or 3 alpha-numeric characters), e.g., "en" for English, "zh" for Chinese, "cop" for Coptic, etc. * A script abbreviation (4 alpha-numeric characters), e.g., "Latn" for Latin, "Hant" for Traditional Han, "Hebr" for Hebrew, etc. * A territory abbreviation (2 or 3 alpha-numeric characters), e.g., "US" for US, "CN" for China, "142" for Asia, etc. All components are optional, giving locale strings "" for the base locale, "en" for English, "zh_Hant" for Traditional Chinese, "zh_TW" for Chinese in Taiwan (also Traditional Chinese), and "zh_Hant_TW". The externalized .properties files are compiled to an Ada 2005 package containing the application strings (including localized strings) to be compiled into an application. The selection of locale by ZanyBlue.Text is based on a locale argument which defaults to the locale string value of the environment variable "ZB_LANG", or, if it's not defined, "LANG". This allows applications to automatically switch the display language (provided the application was localized into the selected locale). E.g., the example application "moons" defaults to displaying English but can be changed to using German, French or Spanish, e.g., to display is German: $ export ZB_LANG=de $ moons The externalization of messages into a .properties files allows the embedding of parameters references via index (also similar to Java), e.g., the message to print the value of a number, the message could be defined as 00001=The value of the counter is {0} ticks. The ZanyBlue.Text package supports the "passing" of argument values by "boxing" the values into ZanyBlue.Text objects. This particular message could be printed, with an argument of 1904 as, Print_Line ("myapp", "00001", +1904); The unitary "+" operator is overloaded by the ZanyBlue.Text package to create the "boxed" object. See the ZanyBlue documentation for details on the types supported by the package. Building -------- The ZanyBlue packages have been build primarily on Unix systems using a recent GCC (GCC 4.4) or on Windows using GNAT GPL 2010. The GCC version 4.5.0, however, gives an internal compiler error when building the test application. The build is make based. To build on Unix: $ cd src $ make The build will also build the needed files from Dmitry Kazakov's components v3.8 open source package used to format real values. To run the ZanyBlue tests for the Text package, use the "check" build target. The ZanyBlue tests use AdaCore's AUnit testing environment (also included in the src/ libs3rd directory), which is compiled as part of the test application build, i.e., $ make check All the examples, except the "gtk" example, do not require additional packages beyond the ZanyBlue library. The "gtk" example requires the GtkAda package from AdaCore. http://www.unicode.org/repos/cldr/tags/release-1-8-d03/common cldr Contact ------- For additional information contact Michael Rohan