> Hi all
> I know it's not the best moment to announce anything (people are on
> their flights to Whistler, or jet lagged to death), but I can wait no
> more (Pike is threating me).
> During last half a year I've been working in my spare time on
> localization library.
> The purpose of this kind of library is to simplify development process
> of L10n applications of any kind - from webapps, command line tools to
> GUI apps.
> The library is named Silme and currently supports storing and
> manipulating API for l10n files, entities and directories.
> The library unifies by a common API datasources, be it - disk space,
> SVN, CVS, HG, or SQL like mySQL or SQLite.
> Beside, library allows a user to build operations independent of the
> storing format (PO, Properties, DTD, L20n, XLIFF, etc.).
> The library is open source (tri-licensed) and I fully encourage you to
> participation in its development as it's very far away from being ready.
> Silme is not a webtool, or any other kind of ready to use tool - it only
> contains pieces that can be used to simplify the work on the tools. You
> can focus on the UI and features, and once you have to, say, get all
> entities from file - you can use Silme API to load it in no time.
> Despite of that, for testing purposes, and out of curiosity, I wrote
> several small testing tools on top of the library. They're by no mean
> complete, and the code may be ugly (it's for testing, right?), but it
> may help you understand the code and the patterns that you can use.
> While working on the API I tried to use all my experience with
> localization and reproduce to maximum the way localizer acts, but just
> automating the patterns that can be automated.
> In result the library does do minimum to the file it operates on
> (preserving the structure) and follows the patters localizers use (by
> appending a new entity after some other entity instead of adding it at
> the end).
> The whole project is both, big and small at the same time. I've spent
> several months experimenting with API to cover all potential usage
> patterns and came to the point where I believe core classes are ready
> and the library may be used to simplify many tasks. At the same time the
> whole localization category is huge and mainly not touched by anyone
> before (afaik). It means that many elements have never been solved and
> I'm discovering solutions while working on the library. It requires many
> more work to cover all cases for multiply projects in any language (like
> higher-level entity parsing - plurals, declension, inner variables
> etc.), but I believe that the skeleton is scalable, mostly frozen and
> ready to be published and attract others to help me working on it.
> I chose Python because it is the only language that is pretty modern,
> clean, multi-platform, open source and may easily serve for
> command-line, webtools and GUI tools.
> You can read initial documentation and tutorial here:http://wiki.braniecki.net/Silme
> The API can be produced with doxygen (which I don't have right now)
> The current sources may be viewed athttp://svn.braniecki.net/wsvn/Silme
> Currently there are several tools that works, including simple QT4 tool
> and a webapp that may be used to work on single l10nPackage from file or
> SVN repository.
> Roadmap is here:http://wiki.braniecki.net/Silme:roadmap
> As you can see the current plan is to go up in the abstraction stack to
> add support for syntax of each entity and make it easy for apps to
> display things like similar entities, or other translations of the same
> entity and to add ability to parse entities (plurals, declension, inner
> variables).
> If you have any questions, concerns, or would like to join the effort,
> please, feel free to respond here, email me or ping on IRC. I will be
> more than happy to get support. :)
> Greetings
> Zbigniew Braniecki
> --
> Mozilla (http://www.mozilla.org)
Very good news. When facing the firefox 2 to firefox 3 localization
merge lines containing new strings into the localization files. I will
explore your initiative soon.