Work on library is divided into stages:
The goal of stage one was to create a skeleton of the library, create fully serializable L10nObject and provide an initial 3-way diff.
- Create L10nObject, L10nPackage classes
- Create simple localization scripts
- Create simple diff classes
- Create complex diff classes
- Create simple GUI app
- Create simple webapp
In stage2 the whole library has been revised to clean and optimize the code. Additionally, the code structure has been stabilized and many IOClients/FormatParsers has been added.
- Rewrite Entity class to look clean
- ReadersWriters should be able to register themselves to L10nReaderWriter
- Clean the entirely codebase and simplfy a lot of code pieces
- Make the code readable
- Implement in the nice way all the dirty hacks applied "in hurry"
- Add support for gettext
- Add support for SQL
- Support Python 3.0
- Load L10nPackage without loading L10nObjects
- Support not processed files/not loaded files in l10nPackage (class Object)
- Build a hybrid locales
Stage 3 (Silme 0.5) is the current one. I'm writing a set of applications on top of the library to test how well the library solves the problems while writing apps.
- Multilocale objects (for XLIFF, tc, po)
- Add support for L20n
- Work on performance, memory management
- Freeze the interface and involve others to work on tools and library itself.
- Remove silme.fp
- Clean silme.format, silme.io
- Make use of silme.(io|format).Manager
silme 0.7 (plan)
- Entity processing (for l20n, DTD)
- Add support for html
- Add fast track for modifing/removing/adding single entity to all files without loading l10nObject
- Accesskey solution
- Context soltion
- Glossary solution
- Dictionary solution
- Similar uses solution
- Statistics solution (silme.stats)
- Plurals/Declension solution
- Investigate Komodo IDE