Hello everyone, Andrew Milton and I are pleased to announce the ZBabel Translation System 0.9.90 (or 1.0.0 RC1 -- Andrew does not like letters in versions ;-) ). With this new version the functionality and stability of ZBabel increased quiet a bit. Furthermore, proiektor (iuveno's OS groupware and project management tool) uses ZBabel to make proiektor completely localized! The link: http://www.zope.org/Members/TheJester/ZBabel Here are the changes since the last release (0.0.3): ===================================== - A BasicZBabelTag class was made, which is like an abstraction of the DTML-BABEL tag (read next point). - You can now use a second singelton tag called DTML-FISH, so you can easier work with menu-option-like translations. - There is a support class called LabelSupport, which lets you specify a label for each string ('label' is just another language). There is also an entire part for the ZMI for it, which lets you quickly make translations. - Some Management views were added to allow you to manage your SQL Methods better and make adjustments later. For example, you will be directly forwarded to the "Create Table/Views" screen, if no Phrases table exists yet in your DB. - The attribute 'towerId' was added, so the user can choose the Babel Tower that is used for the translation; if the id was not found, the first found one will be chosen. This attribute/parameter is optional. - You can also localize expressions, such dates and times. A time conversion would look like that: <dtml-fish label=fmtDateTime dst=en data="ZopeTime()"> The 'en' text entry looks like that: "data.strftime('%m/%d/%Y')", which is evaluated at run time. - The "literal" option works now. You can make translations of text pieces that contain variables, and still have only one translation. - You can import/export the entire dictionary. It is pretty cheap implemented, but it works great. - You can filter your label view, so that you can see easier whether you translated a phrase already. - Plenty of little bug fixes. Planned features after 1.0: =================== - make ZBabel data-storage independent (using SmartObjects?) - make the storage namespace-specific, so that you can have a dictionary for calendars, addresses, ... - write a patch for DTML-VAR, so that the translation is supported natively. - a garbage collector, that can find unused translations. I hope you enjoy the product. I am sure it will solve some of your headaches. ;-) Regards, Stephan -- Stephan Richter CBU - Physics and Chemistry Student Web2k - Web Design/Development & Technical Project Management